From c201e27f87d65281ce513515eacea0988e74b215 Mon Sep 17 00:00:00 2001
From: tjx <t2856754968@163.com>
Date: 星期四, 16 十月 2025 18:58:40 +0800
Subject: [PATCH] 更新项目说明文档
---
DevApp/DevFrm详细分析.md | 445 ++++++++-
DevApp/Gs.DevApp/DevFrm/FrmLogin.resx | 18
DevApp/HELP.md | 1545 ++++++++++++++++++++++++++++++++++--
README.md | 508 ++++++++++++
4 files changed, 2,334 insertions(+), 182 deletions(-)
diff --git "a/DevApp/DevFrm\350\257\246\347\273\206\345\210\206\346\236\220.md" "b/DevApp/DevFrm\350\257\246\347\273\206\345\210\206\346\236\220.md"
index 8bc0d05..ebafc83 100644
--- "a/DevApp/DevFrm\350\257\246\347\273\206\345\210\206\346\236\220.md"
+++ "b/DevApp/DevFrm\350\257\246\347\273\206\345\210\206\346\236\220.md"
@@ -1,33 +1,164 @@
-# DevFrm涓氬姟妯″潡璇︾粏鍒嗘瀽
+# DevFrm 涓氬姟妯″潡璇︾粏鍒嗘瀽
-## 鐩綍姒傝堪
-DevFrm鏄摑瀹滿ES绯荤粺鐨勬牳蹇冧笟鍔℃ā鍧楃洰褰曪紝鍖呭惈鎵�鏈変笟鍔″姛鑳界獥浣撳拰鐩稿叧缁勪欢銆傝鐩綍閲囩敤鎸変笟鍔″姛鑳芥ā鍧楀垝鍒嗙殑缁勭粐缁撴瀯锛屾瘡涓瓙鐩綍浠h〃涓�涓畬鏁寸殑涓氬姟棰嗗煙銆�
+## 姒傝堪
-## 鏍稿績鍏ュ彛鏂囦欢
+**DevFrm** 鏄� LanBMes MES 绯荤粺鐨勬牳蹇冧笟鍔℃ā鍧楃洰褰曪紝鍖呭惈鎵�鏈変笟鍔″姛鑳界獥浣撳拰鐩稿叧缁勪欢銆�
-### FrmMain.cs - 涓荤獥浣� (MDI瀹瑰櫒)
-**鍔熻兘锛�** 绯荤粺涓荤晫闈紝閲囩敤DevExpress FluentDesignForm璁捐
-**涓昏鐗规�э細**
-- 浣跨敤FluentDesign鐜颁唬鍖栫晫闈㈤鏍�
-- TabControl澶氭爣绛鹃〉绠$悊锛屾敮鎸佸姩鎬佹坊鍔�/鍏抽棴鏍囩椤�
-- 闆嗘垚瀵艰埅鏍戯紝鍔ㄦ�佸姞杞藉姛鑳借彍鍗�
-- 鏀寔鍙抽敭鑿滃崟鎿嶄綔锛堝叧闂綋鍓嶃�佸叧闂叏閮ㄧ瓑锛�
-- 鐢ㄦ埛鐧诲綍鐘舵�佺鐞嗗拰鏉冮檺鎺у埗
-- 绯荤粺閰嶇疆淇℃伅鏄剧ず
+- **椤圭洰浣嶇疆**: `Gs.DevApp/DevFrm/`
+- **妯″潡鏁伴噺**: 18 涓笟鍔″煙妯″潡 + 1 涓富绐椾綋
+- **绐椾綋鎬绘暟**: 136 涓富绐椾綋锛堜笉鍚� Designer.cs锛�
+- **鏍稿績妗嗘灦**: Windows Forms + DevExpress v22.2
+- **鏋舵瀯妯″紡**: 澶氭ā鍧楀寲璁捐锛屾寜涓氬姟鍩熺粍缁�
+- **閫氫俊鏈哄埗**: 闆嗕腑寮� HTTP REST API锛堥�氳繃 `UtilityHelper.HttpPost()`锛�
+- **鍛藉悕瑙勮寖**: `Gs.DevApp.DevFrm.{妯″潡鍚峿.{绐椾綋鍚峿`
-### FrmLogin.cs - 鐧诲綍绐椾綋
-**鍔熻兘锛�** 鐢ㄦ埛鐧诲綍璁よ瘉鐣岄潰
-**涓昏鐗规�э細**
-- 鐢ㄦ埛韬唤楠岃瘉
-- 鑷姩鏇存柊妫�鏌ラ泦鎴�
-- 璁颁綇鐧诲綍鐘舵��
-- 澶氳瑷�鏀寔鍑嗗
+## 蹇�熷鑸�
+
+| 妯″潡 | 绐椾綋鏁� | 鑱岃矗 | 鏍稿績绐椾綋 |
+|------|--------|------|--------|
+| **WOM** | 15 | 宸ュ崟鍏ㄧ敓鍛藉懆鏈� | 宸ュ崟鍒涘缓銆佸伐鑹烘祦绋嬨�佹淳宸ャ�佸叆搴撱�佸弽鍐� |
+| **Ck** | 12 | 鍑哄簱绠$悊 | 棰嗘枡銆佽ˉ鏂欍�侀噰璐��璐с�佺敓浜ч��搴撱�侀獙鏀堕��璐� |
+| **BasicData** | 11 | 鍩虹鏁版嵁绠$悊 | 瀹㈡埛銆佷緵搴斿晢銆佺墿鏂欏垎绫汇�佷粨搴撱�佽溅闂翠骇绾裤�佸憳宸� |
+| **WW** | 10 | 杞﹂棿鐜板満绠$悊 | 杞﹂棿琛ユ枡銆侀鏂欍�佹帓浜с�佸伐鍗曞垎閰嶃�佺敓浜ц鍗� |
+| **Warehouse** | 9 | 浠撳簱缁煎悎绠$悊 | 鏉$爜绠$悊銆佸鎵樺姞宸ャ�佽皟鎷ㄣ�佸師鏉愭枡鍏ュ簱 |
+| **Sales** | 9 | 閿�鍞鐞� | 閿�鍞鍗曘�佸彂璐с�侀��璐ч�氱煡 |
+| **QC** | 8 | 璐ㄩ噺鎺у埗閫氱敤 | 妫�楠屾ā鏉裤�佺己闄蜂唬鐮併�丄QL鏍囧噯銆佹楠岄」鐩� |
+| **RkQC** | 8 | 鏉ユ枡璐ㄩ噺鎺у埗 | 鏉ユ枡妫�楠屻�佹娊妫�銆佸鎵樻楠屻�佸叾浠栧叆搴撴楠� |
+| **Rk** | 7 | 鍏ュ簱绠$悊 | 鍒拌揣鍏ュ簱銆佹楠屽叆搴撱�佸叾浠栧叆搴撱�佸叆搴撳彴璐� |
+| **Work** | 7 | 鐢熶骇浣滀笟鎵ц | 寮�宸ャ�佷綔涓氱鐞嗐�佸伐搴忔祦杞�佽繑淇�佸伐鑹烘妧鏈� |
+| **JJGZ** | 7 | 璁′欢宸ヨ祫绠$悊 | 璁′欢/璁℃椂宸ヨ祫銆佹帓鐝�佽�冨嫟銆佸垎绾跨鐞� |
+| **IPQC** | 6 | 杩囩▼璐ㄩ噺鎺у埗 | 棣栦欢妫�楠屻�佸贰妫�绠$悊锛堝惈H5鐗堬級 |
+| **User** | 6 | 鐢ㄦ埛鏉冮檺绠$悊 | 鐢ㄦ埛绠$悊銆佽鑹茬鐞嗐�佹潈闄愬垎閰嶃�佸瘑鐮佽缃� |
+| **Sys** | 4 | 绯荤粺閰嶇疆 | 绯荤粺閰嶇疆銆侀〉闈㈣鍥俱�佹墦鍗扮鐞� |
+| **FQC** | 3 | 鏈�缁堣川閲忔帶鍒� | FQC妫�楠屻�佹娴嬫祦绋嬨�佹楠岄」鐩� |
+| **PDA** | 3 | 绉诲姩璁惧闆嗘垚 | 鐢ㄦ埛缁戝畾銆佸尯鍩熺粦瀹氥�佺粦瀹氬垪琛� |
+| **Rpt** | 1 | 鎶ヨ〃鏌ヨ | MES鏌ヨ鎶ヨ〃锛團astReport闆嗘垚锛� |
+| **BarCode** | 1 | 鏉$爜绠$悊 | 绠辩爜鐢熸垚鍜屾墦鍗� |
+
+## 鏍稿績搴旂敤鍏ュ彛
+
+### FrmMain.cs - 绯荤粺涓荤獥浣�
+
+**鍏抽敭鑱岃矗**:
+- FluentDesignForm 鐜颁唬鍖栫晫闈㈠鍣�
+- 鍔ㄦ�佸姞杞借彍鍗曪紙閫氳繃鍙嶅皠鍜� API锛�
+- XtraTabControl 澶氭爣绛鹃〉绠$悊
+- 琛ㄥ崟缂撳瓨闃叉閲嶅鎵撳紑
+- 缁勭粐鍒囨崲涓嬫媺妗�
+- 鐢ㄦ埛鐧诲嚭涓庣姸鎬佺鐞�
+
+**宸ヤ綔娴�**:
+```csharp
+// 1. 鍚姩鏃跺姞杞借彍鍗曪紙API: User/GetUserLoginInfo锛�
+// 2. 鑿滃崟鐐瑰嚮瑙﹀彂鍔ㄦ�佽〃鍗曞姞杞斤紙API: MenuAction/GetModelByNameSpace锛�
+// 3. 鏂板缓鎴栧垏鎹㈠埌鐜版湁鏍囩椤�
+// 4. 鏀寔鏍囩椤靛彸閿搷浣滐紙鍏抽棴銆佸叏鍏抽棴绛夛級
+```
+
+**鍏抽敭浠g爜浣嶇疆**: `Gs.DevApp/FrmMain.cs:1-100+`
+
+### FrmLogin.cs - 鐧诲綍璁よ瘉绐椾綋
+
+**鍏抽敭鑱岃矗**:
+- 鐢ㄦ埛韬唤楠岃瘉锛圓PI: User/UserLogin锛�
+- 鑷姩鏇存柊妫�鏌ワ紙AutoUpdater.NET锛�
+- 鐧诲綍鐘舵�佺紦瀛�
+- 缁勭粐鍒囨崲鏃堕噸鏂拌璇�
+
+**璁よ瘉娴佺▼**:
+```
+鐧诲綍鐣岄潰 鈫� HTTP POST /User/UserLogin
+鈫� 杩斿洖 LoginInfoModel (token + 鐢ㄦ埛淇℃伅)
+鈫� 瀛樺偍鍒伴潤鎬� LoginInfoModel.CurrentUser
+鈫� FrmMain 璇诲彇褰撳墠鐢ㄦ埛淇℃伅
+```
+
+**鍏抽敭浠g爜浣嶇疆**: `Gs.DevApp/FrmLogin.cs:1-150+`
+
+---
+
+## 妯″潡鍛藉悕瑙勮寖鍜屼唬鐮佷綅缃�
+
+### 鏍囧噯鍛藉悕瑙勮寖
+
+**涓荤獥浣撳懡鍚嶏細**
+- **鏍囧噯鏍煎紡锛�** `Frm_{涓氬姟鍚嶇О}.cs`
+ - 绀轰緥锛歚Frm_Customer.cs`銆乣Frm_MesWorkProd.cs`銆乣Frm_SalesOrder.cs`
+
+- **鐗规畩鏍煎紡锛圲ser妯″潡锛夛細** 涓嶄娇鐢� `Frm_` 鍓嶇紑
+ - 绀轰緥锛歚User.cs`銆乣Role.cs`銆乣ViewRole.cs`
+
+- **瀛愮獥浣�/瀵硅瘽妗嗗懡鍚嶏細**
+ - 妫�娴嬬獥浣擄細`Frm_{涓氬姟}Detect01.cs`銆乣Frm_{涓氬姟}Detect01H5.cs`
+ - 鍗曟嵁绐椾綋锛歚Frm_{涓氬姟}Dj.cs`锛圖j=鍗曟嵁锛�
+ - 鐢宠绐椾綋锛歚Frm_{涓氬姟}Sq.cs`锛圫q=鐢宠锛�
+ - 閫夋嫨绐椾綋锛歚Select{涓氬姟}.cs`
+ - 灞曠ず绐椾綋锛歚Frm_{涓氬姟}Show.cs`
+
+**杈呭姪缁勪欢鍛藉悕锛�**
+- 鐢ㄦ埛鎺т欢锛歚Uc{鍔熻兘鍚峿.cs`锛圲c=UserControl锛�
+- 閫夋嫨缁勪欢锛歚Select{瀵硅薄}.cs`
+- 鏌ユ壘缁勪欢锛歚UcLook{瀵硅薄}.cs`
+- 瀹炰綋妯″瀷锛歚Mes{瀵硅薄}.cs`锛堥�氬父鍦� Models/ 瀛愮洰褰曪級
+
+### 浠g爜璺緞鏄犲皠
+
+| 妯″潡 | 鐗╃悊璺緞 | 鍛藉悕绌洪棿 |
+|------|---------|---------|
+| BasicData | `Gs.DevApp\DevFrm\BasicData\` | `Gs.DevApp.DevFrm.BasicData` |
+| Work | `Gs.DevApp\DevFrm\Work\` | `Gs.DevApp.DevFrm.Work` |
+| WOM | `Gs.DevApp\DevFrm\WOM\` | `Gs.DevApp.DevFrm.WOM` |
+| Ck | `Gs.DevApp\DevFrm\Ck\` | `Gs.DevApp.DevFrm.Ck` |
+| Rk | `Gs.DevApp\DevFrm\Rk\` | `Gs.DevApp.DevFrm.Rk` |
+| QC | `Gs.DevApp\DevFrm\QC\` | `Gs.DevApp.DevFrm.QC` |
+| IPQC | `Gs.DevApp\DevFrm\IPQC\` | `Gs.DevApp.DevFrm.IPQC` |
+| FQC | `Gs.DevApp\DevFrm\FQC\` | `Gs.DevApp.DevFrm.FQC` |
+| RkQC | `Gs.DevApp\DevFrm\RkQC\` | `Gs.DevApp.DevFrm.RkQC` |
+| Warehouse | `Gs.DevApp\DevFrm\Warehouse\` | `Gs.DevApp.DevFrm.Warehouse` |
+| WW | `Gs.DevApp\DevFrm\WW\` | `Gs.DevApp.DevFrm.WW` |
+| Sales | `Gs.DevApp\DevFrm\Sales\` | `Gs.DevApp.DevFrm.Sales` |
+| JJGZ | `Gs.DevApp\DevFrm\JJGZ\` | `Gs.DevApp.DevFrm.JJGZ` |
+| BarCode | `Gs.DevApp\DevFrm\BarCode\` | `Gs.DevApp.DevFrm.BarCode` |
+| PDA | `Gs.DevApp\DevFrm\PDA\` | `Gs.DevApp.DevFrm.PDA` |
+| Rpt | `Gs.DevApp\DevFrm\Rpt\` | `Gs.DevApp.DevFrm.Rpt` |
+| Sys | `Gs.DevApp\DevFrm\Sys\` | `Gs.DevApp.DevFrm.Sys` |
+| User | `Gs.DevApp\DevFrm\User\` | `Gs.DevApp.DevFrm.User` |
+
+### 涓枃缂╁啓瀵圭収琛�
+
+涓轰究浜庣悊瑙d唬鐮佷腑鐨勪腑鏂囨嫾闊崇缉鍐欙紝浠ヤ笅鏄父瑙佺缉鍐欏鐓э細
+
+| 缂╁啓 | 涓枃 | 鑻辨枃 | 绀轰緥 |
+|------|------|------|------|
+| **Dj** | 鍗曟嵁 | Document | `Frm_MesItemClDj.cs` - 鏉愭枡鍑哄簱鍗曟嵁 |
+| **Sq** | 鐢宠 | Application | `Frm_MesCgthSq.cs` - 閲囪喘閫�璐х敵璇� |
+| **Bl** | 琛ユ枡 | Supplement Material | `Frm_MesItemBl.cs` - 琛ユ枡鐢宠 |
+| **Cl** | 鏉愭枡/鍑烘枡 | Material Out | `Frm_MesItemCl.cs` - 鏉愭枡鍑哄簱 |
+| **Rk** | 鍏ュ簱 | Receipt/Incoming | `Frm_MesItemTbl_RK.cs` - 鍏ュ簱鍗曟嵁 |
+| **Ck** | 鍑哄簱 | Issue/Outgoing | `Frm_MesItemQt.cs` - 鍏朵粬鍑哄簱 |
+| **Tbl** | 鍙拌处 | Ledger | `Frm_MesItemTbl.cs` - 鏉愭枡鍙拌处 |
+| **Gx** | 宸ュ簭/宸ヨ壓 | Process/Routing | `Frm_MesProcGx.cs` - 宸ヨ壓娴佺▼ |
+| **Wom** | 宸ュ崟妯″潡 | Work Order Management | `Frm_Womdaa.cs` - 宸ュ崟妗f |
+| **Daa** | 妗f | Archives | `Frm_Womdaa.cs` - 宸ュ崟妗f |
+| **Caa** | 鎴愭湰妗f | Cost Archives | `Frm_Womcaa.cs` - 宸ュ崟鎴愭湰鍒嗘瀽 |
+| **Pba** | 娲惧伐妗f | Production Batch Archives | `Frm_Wompba.cs` - 宸ュ崟娲惧伐 |
+| **Cgth** | 閲囪喘閫�璐� | Purchase Return | `Frm_MesCgthSq.cs` - 閲囪喘閫�璐х敵璇� |
+| **Sctk** | 鐢熶骇閫�搴� | Production Return | `Frm_MesSctkSq.cs` - 鐢熶骇閫�搴撶敵璇� |
+| **Scrk** | 鐢熶骇鍏ュ簱 | Production Receipt | `Frm_MesScrkDj.cs` - 鐢熶骇鍏ュ簱鍗曟嵁 |
+| **Qt** | 鍏朵粬 | Other | `Frm_MesItemQt.cs` - 鍏朵粬鍑哄簱 |
+| **Qtrk** | 鍏朵粬鍏ュ簱 | Other Receipt | `Frm_MesItemQtrk.cs` - 鍏朵粬鍏ュ簱 |
+| **Wwrk** | 濮斿鍏ュ簱 | Outsourcing Receipt | `Frm_WwrkDetect01.cs` - 濮斿鍏ュ簱妫�楠� |
+| **Cq** | 鎶芥 | Sampling Inspection | `Frm_Cqfa.cs` - 鎶芥鏂规 |
+| **Pc** | 鎺掍骇 | Production Scheduling | `Frm_WwPc.cs` - 杞﹂棿鎺掍骇 |
+| **Gd** | 宸ュ崟 | Work Order | `Frm_WwGd.cs` - 杞﹂棿宸ュ崟 |
+| **JJ** | 璁′欢 | Piece-rate | `Frm_MesJJSalary.cs` - 璁′欢宸ヨ祫 |
+| **JS** | 璁℃椂 | Time-based | `Frm_MesJSSalary.cs` - 璁℃椂宸ヨ祫 |
---
## 涓氬姟妯″潡璇︾粏鍒嗘瀽
-## 1. BasicData/ - 鍩虹鏁版嵁绠$悊妯″潡
+## 1锔忊儯 BasicData/ - 鍩虹鏁版嵁绠$悊妯″潡
**妯″潡鑱岃矗锛�** 绯荤粺鍩虹涓绘暟鎹殑缁存姢鍜岀鐞嗭紝涓哄叾浠栦笟鍔℃ā鍧楁彁渚涙暟鎹敮鎾�
### 鏍稿績绐椾綋鍔熻兘锛�
@@ -270,36 +401,89 @@
## 5. WOM/ - 宸ュ崟绠$悊妯″潡
**妯″潡鑱岃矗锛�** 鐢熶骇宸ュ崟鐨勫叏鐢熷懡鍛ㄦ湡绠$悊锛屼粠宸ュ崟鍒涘缓鍒板畬宸ュ叆搴�
+**绐椾綋鎬绘暟锛�** 15 涓富绐椾綋锛堢郴缁熶腑鏈�澶х殑涓氬姟妯″潡锛�
### 宸ュ崟鏍稿績绠$悊锛�
- **Frm_MesWorkProd.cs** - 鐢熶骇宸ュ崟绠$悊
- 宸ュ崟鍒涘缓銆佺紪杈戙�佸鏍�
- 宸ュ崟鐘舵�佽窡韪�
- 宸ュ崟鎵ц鐩戞帶
+ - 宸ュ崟 BOM 绠$悊
-### 宸ヨ壓娴佺▼绠$悊锛�
-- **Frm_MesProcGx.cs** - 宸ヨ壓娴佺▼绠$悊
-- **Frm_MesProcGx0.cs** - 宸ヨ壓娴佺▼鍩虹鐗�
+### 宸ヨ壓娴佺▼绠$悊锛圙x绯诲垪锛夛細
+- **Frm_MesProcGx.cs** - 宸ヨ壓娴佺▼绠$悊锛堝畬鏁寸増锛�
+ - 宸ヨ壓璺嚎璁捐
+ - 宸ュ簭娴佺▼閰嶇疆
+ - 宸ヨ壓鍙傛暟璁剧疆
+
+- **Frm_MesProcGx0.cs** - 宸ヨ壓娴佺▼绠$悊锛堝熀纭�鐗堬級
+ - 绠�鍖栫殑宸ヨ壓娴佺▼閰嶇疆
+ - 閫傜敤浜庣畝鍗曞伐鑹鸿矾绾�
+
- **Frm_MesProcGxShow.cs** - 宸ヨ壓娴佺▼灞曠ず
+ - 宸ヨ壓娴佺▼鏌ョ湅鍜屽睍绀�
+ - 宸ヨ壓鎵ц鎸囧
+ - 宸ヨ壓鍘嗗彶璁板綍
-### 宸ュ崟妗f绠$悊锛�
+### 宸ュ崟妗f绠$悊锛圖aa绯诲垪锛夛細
- **Frm_Womdaa.cs** - 宸ュ崟妗f绠$悊
-- **Frm_Womdaahb.cs** - 宸ュ崟妗f姹囨��
-- **Frm_WomdaaNbz.cs** - 宸ュ崟妗f鍐呴儴杞Щ
+ - 宸ュ崟妗f寤虹珛鍜岀淮鎶�
+ - 宸ュ崟瀹為檯鎵ц璁板綍
+ - 宸ュ崟鐗╂枡娑堣�楄拷韪�
-### 宸ュ崟鍒嗘瀽鍜屾淳宸ワ細
-- **Frm_Womcaa.cs** - 宸ュ崟鎴愭湰鍒嗘瀽
-- **Frm_Wompba.cs** - 宸ュ崟娲惧伐绠$悊
+- **Frm_Womdaahb.cs** - 宸ュ崟妗f姹囨��
+ - 宸ュ崟妗f姹囨�荤粺璁�
+ - 澶氬伐鍗曞悎骞跺垎鏋�
+ - 妗f鏁版嵁瀵煎嚭
+
+- **Frm_WomdaaNbz.cs** - 宸ュ崟妗f鍐呴儴杞Щ
+ - 宸ュ崟鍐呴儴娴佽浆绠$悊
+ - 杞﹂棿闂村伐鍗曡浆绉�
+ - 杞Щ璁板綍杩借釜
+
+### 宸ュ崟鍒嗘瀽鍜屾淳宸ワ紙Caa/Pba绯诲垪锛夛細
+- **Frm_Womcaa.cs** - 宸ュ崟鎴愭湰鍒嗘瀽锛圕ost Analysis Archives锛�
+ - 宸ュ崟鎴愭湰鏍哥畻
+ - 鐗╂枡鎴愭湰鍒嗘瀽
+ - 浜哄伐鎴愭湰缁熻
+
+- **Frm_Wompba.cs** - 宸ュ崟娲惧伐绠$悊锛圥roduction Batch Archives锛�
+ - 宸ュ崟娲惧伐鍒嗛厤
+ - 鐝粍浠诲姟鎸囨淳
+ - 娲惧伐杩涘害璺熻釜
+
- **Frm_WompbaGx.cs** - 宸ュ崟娲惧伐宸ュ簭
+ - 娲惧伐宸ュ簭鏄庣粏绠$悊
+ - 宸ュ簭绾у埆浠诲姟鍒嗛厤
+ - 宸ュ簭瀹屾垚纭
### 鐗规畩宸ュ崟澶勭悊锛�
- **Frm_WomFanGong.cs** - 杩斿伐鍗曠鐞�
-- **FrmAutoRk.cs** - 鑷姩鍏ュ簱
-- **FrmBackFlash.cs** - 鍙嶅啿澶勭悊
+ - 杩斿伐鍗曞垱寤哄拰瀹℃壒
+ - 杩斿伐娴佺▼璺熻釜
+ - 杩斿伐璐ㄩ噺纭
+ - 杩斿伐鎴愭湰鏍哥畻
-### 宸ュ崟鍏ュ簱绠$悊锛�
-- **Frm_MesScrkDj.cs** - 鐢熶骇鍏ュ簱鍗曟嵁
-- **Frm_MesScrksqDj.cs** - 鐢熶骇鍏ュ簱鐢宠鍗曟嵁
+- **FrmAutoRk.cs** - 鑷姩鍏ュ簱
+ - 宸ュ崟瀹屽伐鑷姩鍏ュ簱
+ - 鎵归噺鍏ュ簱澶勭悊
+ - 鍏ュ簱鍗曟嵁鑷姩鐢熸垚
+
+- **FrmBackFlash.cs** - 鍙嶅啿澶勭悊
+ - 鐗╂枡鍙嶅啿鎵f枡
+ - 鍙嶅啿瑙勫垯閰嶇疆
+ - 鍙嶅啿璁板綍绠$悊
+
+### 宸ュ崟鍏ュ簱绠$悊锛圫crk绯诲垪锛夛細
+- **Frm_MesScrkDj.cs** - 鐢熶骇鍏ュ簱鍗曟嵁锛堢敓浜у叆搴�-鍗曟嵁锛�
+ - 鐢熶骇瀹屽伐鍏ュ簱鍗曟嵁
+ - 鍏ュ簱鍗曟嵁瀹℃牳
+ - 鍏ュ簱鍗曟嵁鎵撳嵃
+
+- **Frm_MesScrksqDj.cs** - 鐢熶骇鍏ュ簱鐢宠鍗曟嵁锛堢敓浜у叆搴撶敵璇�-鍗曟嵁锛�
+ - 鐢熶骇鍏ュ簱鐢宠娴佺▼
+ - 鐢宠鍗曟嵁瀹℃壒
+ - 鐢宠杞寮忓叆搴�
### 杈呭姪缁勪欢锛�
- **MesProcInfo.cs** - 宸ュ簭淇℃伅缁勪欢
@@ -357,38 +541,66 @@
---
-## 7. WW/ - 杞﹂棿绠$悊妯″潡
+## 7. WW/ - 杞﹂棿绠$悊妯″潡
**妯″潡鑱岃矗锛�** 杞﹂棿鐜板満浣滀笟鍜岀敓浜ц皟搴︾鐞�
+**绐椾綋鎬绘暟锛�** 10 涓富绐椾綋
### 杞﹂棿鐗╂枡绠$悊锛�
-- **琛ユ枡绠$悊**
+- **琛ユ枡绠$悊锛圔l绯诲垪锛�**
- `Frm_WwBl.cs` - 杞﹂棿琛ユ枡鐢宠
+ - 鐢熶骇杩囩▼涓殑鐗╂枡琛ュ厖鐢宠
+ - 琛ユ枡闇�姹傚崟鎹垱寤�
+ - 琛ユ枡瀹℃壒娴佺▼
+
- `Frm_WwBlDj.cs` - 杞﹂棿琛ユ枡鍗曟嵁
+ - 琛ユ枡鍗曟嵁绠$悊鍜屽鏍�
+ - 琛ユ枡鍙戞斁璁板綍
+ - 琛ユ枡鍗曟嵁鎵撳嵃
-- **棰嗘枡绠$悊**
+- **棰嗘枡绠$悊锛圕l/Ll绯诲垪锛�**
- `Frm_WwCl.cs` - 杞﹂棿棰嗘枡鐢宠
- - `Frm_WwClDj.cs` - 杞﹂棿棰嗘枡鍗曟嵁
- - `Frm_WwLlDj.cs` - 杞﹂棿棰嗘枡鍗曟嵁
+ - 鐢熶骇寮�宸ユ椂鐨勭墿鏂欓鐢ㄧ敵璇�
+ - 鎸夊伐鍗� BOM 棰嗘枡
+ - 棰嗘枡鍗曟嵁鐢熸垚
-### 杞﹂棿鍙拌处绠$悊锛�
+ - `Frm_WwClDj.cs` - 杞﹂棿棰嗘枡鍗曟嵁
+ - 棰嗘枡鍗曟嵁瀹℃牳鍜屽彂鏀�
+ - 棰嗘枡璁板綍绠$悊
+ - 棰嗘枡鍗曟嵁鎵撳嵃
+
+ - `Frm_WwLlDj.cs` - 杞﹂棿棰嗘枡鍗曟嵁锛堝鐢ㄧ増锛�
+ - 棰嗘枡鍗曟嵁鐨勫彟涓�绉嶅鐞嗘祦绋�
+ - 鍙兘鐢ㄤ簬鐗瑰畾涓氬姟鍦烘櫙
+
+### 杞﹂棿鍙拌处绠$悊锛圱bl绯诲垪锛夛細
- **Frm_WwTbl.cs** - 杞﹂棿鍙拌处
+ - 杞﹂棿鐗╂枡搴撳瓨鍙拌处
+ - 杞﹂棿鍦ㄥ埗鍝佺鐞�
+ - 鍙拌处鏁版嵁鏌ヨ鍜岀粺璁�
+
- **Frm_WwTblDj.cs** - 杞﹂棿鍙拌处鍗曟嵁
+ - 鍙拌处鍗曟嵁绠$悊
+ - 鍙拌处璋冩暣璁板綍
+ - 鍙拌处鐩樼偣鍔熻兘
### 鐢熶骇璋冨害绠$悊锛�
-- **Frm_WwPc.cs** - 杞﹂棿鎺掍骇绠$悊
- - 鐢熶骇璁″垝鍒跺畾
+- **Frm_WwPc.cs** - 杞﹂棿鎺掍骇绠$悊锛圥c=鎺掍骇锛�
+ - 鐢熶骇璁″垝鍒跺畾鍜屼笅杈�
- 浜ц兘骞宠 鍒嗘瀽
- 鐢熶骇璋冨害浼樺寲
+ - 璧勬簮璐熻嵎鍒嗘瀽
-- **Frm_WwGd.cs** - 杞﹂棿宸ュ崟绠$悊
- - 杞﹂棿宸ュ崟鍒嗛厤
+- **Frm_WwGd.cs** - 杞﹂棿宸ュ崟绠$悊锛圙d=宸ュ崟锛�
+ - 杞﹂棿宸ュ崟鍒嗛厤鍜屾帴鏀�
- 宸ュ崟鎵ц璺熻釜
- 宸ュ崟瀹屾垚纭
+ - 宸ュ崟杩涘害姹囨姤
- **Frm_ProductionOrder.cs** - 鐢熶骇璁㈠崟绠$悊
- - 鐢熶骇璁㈠崟鍒涘缓
- - 璁㈠崟鎵ц鐩戞帶
+ - 鐢熶骇璁㈠崟鍒涘缓鍜岀淮鎶�
+ - 璁㈠崟鎵ц鐩戞帶鍜岀湅鏉�
- 璁㈠崟浜ゆ湡绠$悊
+ - 璁㈠崟浼樺厛绾ц皟鏁�
### 杈呭姪缁勪欢锛�
- **SelectWwPc.cs** - 杞﹂棿鎺掍骇閫夋嫨
@@ -625,60 +837,129 @@
## 15. User/ - 鐢ㄦ埛绠$悊妯″潡
**妯″潡鑱岃矗锛�** 鐢ㄦ埛鏉冮檺鍜岃鑹茬鐞�
+**绐椾綋鎬绘暟锛�** 6 涓富绐椾綋
+**鍛藉悕鐗圭偣锛�** 姝ゆā鍧椾娇鐢ㄧ畝鍗曠被鍚嶏紙User銆丷ole锛夛紝涓嶄娇鐢� Frm_ 鍓嶇紑
### 鐢ㄦ埛绠$悊锛�
-- **User.cs** - 鐢ㄦ埛绠$悊
- - 鐢ㄦ埛璐︽埛鍒涘缓
- - 鐢ㄦ埛淇℃伅缁存姢
- - 鐢ㄦ埛鐘舵�佺鐞�
+- **User.cs** - 鐢ㄦ埛绠$悊锛堜富绐椾綋锛�
+ - 鐢ㄦ埛璐︽埛鍒涘缓銆佺紪杈戙�佸垹闄�
+ - 鐢ㄦ埛鍩烘湰淇℃伅缁存姢
+ - 鐢ㄦ埛鐘舵�佺鐞嗭紙鍚敤/绂佺敤锛�
+ - 鐢ㄦ埛缁勭粐褰掑睘璁剧疆
+ - 璺緞锛歚Gs.DevApp/DevFrm/User/User.cs`
- **UserSetPwd.cs** - 鐢ㄦ埛瀵嗙爜璁剧疆
+ - 绠$悊鍛橀噸缃敤鎴峰瘑鐮�
- 瀵嗙爜绛栫暐绠$悊
- - 瀵嗙爜閲嶇疆鍔熻兘
+ - 瀵嗙爜澶嶆潅搴﹂獙璇�
- 瀵嗙爜瀹夊叏妫�鏌�
-### 瑙掕壊绠$悊锛�
-- **Role.cs** - 瑙掕壊绠$悊
- - 瑙掕壊瀹氫箟鍜屽垱寤�
- - 瑙掕壊鏉冮檺鍒嗛厤
- - 瑙掕壊灞傜骇绠$悊
-
-- **ViewRole.cs** - 瑙掕壊鏌ョ湅
- - 瑙掕壊淇℃伅灞曠ず
- - 鏉冮檺鏄庣粏鏌ヨ
- - 瑙掕壊浣跨敤缁熻
-
-### 鏉冮檺鍒嗛厤锛�
- **UserSelectRole.cs** - 鐢ㄦ埛閫夋嫨瑙掕壊
- - 鐢ㄦ埛瑙掕壊鍏宠仈
- - 澶氳鑹插垎閰�
+ - 鐢ㄦ埛瑙掕壊鍏宠仈鍜屽垎閰�
+ - 鏀寔澶氳鑹插垎閰�
+ - 瑙掕壊鏉冮檺鏌ョ湅
- 瑙掕壊鍒囨崲鍔熻兘
+### 瑙掕壊绠$悊锛�
+- **Role.cs** - 瑙掕壊绠$悊锛堜富绐椾綋锛�
+ - 瑙掕壊瀹氫箟鍜屽垱寤�
+ - 瑙掕壊淇℃伅缁存姢
+ - 瑙掕壊灞傜骇绠$悊
+ - 瑙掕壊鐘舵�佺鐞�
+ - 璺緞锛歚Gs.DevApp/DevFrm/User/Role.cs`
+
+- **ViewRole.cs** - 瑙掕壊鏌ョ湅
+ - 瑙掕壊淇℃伅灞曠ず鍜屾煡璇�
+ - 鏉冮檺鏄庣粏鏌ヨ
+ - 瑙掕壊浣跨敤缁熻
+ - 鍏宠仈鐢ㄦ埛鍒楄〃
+
- **RoleSelectAction.cs** - 瑙掕壊閫夋嫨鏉冮檺
- - 鍔熻兘鏉冮檺鍒嗛厤
+ - 鍔熻兘鏉冮檺鍒嗛厤锛圓ction绾у埆锛�
- 鏉冮檺鐭╅樀绠$悊
+ - 鑿滃崟鏉冮檺閰嶇疆
+ - 鎸夐挳鏉冮檺鎺у埗
- 鏉冮檺缁ф壙鍏崇郴
---
## 鎬荤粨
-DevFrm鐩綍缁撴瀯娓呮櫚锛屾寜涓氬姟鍔熻兘妯″潡鍖栫粍缁囷紝浣撶幇浜嗗畬鏁寸殑鍒堕�犳墽琛岀郴缁熶笟鍔℃祦绋嬶細
+DevFrm鐩綍缁撴瀯娓呮櫚锛屾寜涓氬姟鍔熻兘妯″潡鍖栫粍缁囷紝浣撶幇浜嗗畬鏁寸殑鍒堕�犳墽琛岀郴缁熶笟鍔℃祦绋嬨��
-### 涓氬姟娴佺▼闂幆锛�
-1. **鍩虹鏁版嵁** 鈫� **宸ュ崟绠$悊** 鈫� **鐢熶骇浣滀笟** 鈫� **璐ㄩ噺鎺у埗** 鈫� **浠撳簱绠$悊** 鈫� **閿�鍞彂璐�**
-2. **閲囪喘鍏ュ簱** 鈫� **鐢熶骇棰嗘枡** 鈫� **杞﹂棿浣滀笟** 鈫� **鎴愬搧鍏ュ簱** 鈫� **璐ㄩ噺妫�楠�** 鈫� **瀹㈡埛浜や粯**
+### 妯″潡瑙勬ā缁熻
-### 鎶�鏈壒鐐癸細
-- 閲囩敤Windows Forms + DevExpress UI妗嗘灦
-- MDI澶氭枃妗g晫闈㈣璁�
-- 妯″潡鍖栫粍浠跺鐢�
-- 缁熶竴鐨勬暟鎹疄浣撴ā鍨�
-- 瀹屽杽鐨勬潈闄愭帶鍒朵綋绯�
+**鎬讳綋瑙勬ā锛�**
+- **妯″潡鎬绘暟锛�** 18 涓笟鍔″煙妯″潡 + 1 涓富绐椾綋锛團rmMain锛�
+- **绐椾綋鎬绘暟锛�** 136 涓富绐椾綋锛堜笉鍚� Designer.cs 鏂囦欢锛�
+- **浠g爜璺緞锛�** `E:\LanBMes\LB_MesClient\DevApp\Gs.DevApp\DevFrm\`
-### 鎵╁睍鎬э細
-- 娓呮櫚鐨勬ā鍧楄竟鐣岋紝渚夸簬鍔熻兘鎵╁睍
-- 涓板瘜鐨勮緟鍔╃粍浠讹紝鏀寔涓氬姟瀹氬埗
-- 缁熶竴鐨勫紑鍙戞ā寮忥紝闄嶄綆缁存姢鎴愭湰
+**妯″潡瑙勬ā鍒嗗竷锛�**
-璇ユ灦鏋勪负鍒堕�犱紒涓氭彁渚涗簡瀹屾暣鐨勪俊鎭寲瑙e喅鏂规锛岃鐩栦簡浠庡熀纭�鏁版嵁绠$悊鍒扮敓浜ф墽琛屻�佽川閲忔帶鍒躲�佷粨鍌ㄧ墿娴佺殑鍏ㄤ笟鍔℃祦绋嬨��
\ No newline at end of file
+| 瑙勬ā鍒嗙被 | 妯″潡鏁� | 妯″潡鍒楄〃 |
+|---------|--------|---------|
+| **瓒呭ぇ鍨嬶紙10+绐椾綋锛�** | 3 | WOM(15)銆丆k(12)銆丅asicData(11) |
+| **澶у瀷锛�7-9绐椾綋锛�** | 6 | WW(10)銆乄arehouse(9)銆丼ales(9)銆丵C(8)銆丷kQC(8)銆丷k(7)銆乄ork(7)銆丣JGZ(7) |
+| **涓瀷锛�3-6绐椾綋锛�** | 5 | IPQC(6)銆乁ser(6)銆丼ys(4)銆丗QC(3)銆丳DA(3) |
+| **灏忓瀷锛�1-2绐椾綋锛�** | 2 | Rpt(1)銆丅arCode(1) |
+
+### 涓氬姟娴佺▼闂幆
+
+**瀹屾暣涓氬姟閾撅細**
+1. **鍩虹鏁版嵁閰嶇疆** (BasicData) 鈫� **閿�鍞鍗�** (Sales) 鈫� **宸ュ崟绠$悊** (WOM) 鈫� **鐢熶骇娲惧伐** (WOM)
+2. **鐢熶骇棰嗘枡** (Ck) 鈫� **杞﹂棿浣滀笟** (Work/WW) 鈫� **杩囩▼妫�楠�** (IPQC) 鈫� **瀹屽伐鍏ュ簱** (WOM/Rk)
+3. **鏈�缁堟楠�** (FQC) 鈫� **浠撳簱绠$悊** (Warehouse) 鈫� **閿�鍞彂璐�** (Sales) 鈫� **瀹㈡埛浜や粯**
+
+**璐ㄩ噺鎺у埗浣撶郴锛�** QC(閫氱敤閰嶇疆) 鈫� RkQC(鏉ユ枡妫�楠�) 鈫� IPQC(杩囩▼妫�楠�) 鈫� FQC(鏈�缁堟楠�)
+
+**搴撳瓨绠$悊浣撶郴锛�** 閲囪喘鍏ュ簱(Rk) 鈫� 鐢熶骇棰嗘枡(Ck) 鈫� 杞﹂棿琛ユ枡(WW) 鈫� 鎴愬搧鍏ュ簱(Rk) 鈫� 鍙戣揣鍑哄簱(Ck)
+
+### 鎶�鏈壒鐐�
+
+- **UI妗嗘灦锛�** Windows Forms + DevExpress v22.2 鎺т欢濂椾欢
+- **鐣岄潰妯″紡锛�** FluentDesignForm + 澶氭爣绛鹃〉锛圶traTabControl锛�
+- **绐椾綋鍔犺浇锛�** 鍔ㄦ�佸弽灏勫姞杞斤紙杩愯鏃舵牴鎹彍鍗曟潈闄愬疄渚嬪寲锛�
+- **鏁版嵁閫氫俊锛�** 闆嗕腑寮� HTTP REST API锛坄UtilityHelper.HttpPost()`锛�
+- **缁勪欢澶嶇敤锛�** 150+ 鍙鐢� UserControl 缁勪欢锛坄Gs.DevApp/UserControl/`锛�
+- **鏁版嵁妯″瀷锛�** 缁熶竴鐨勫疄浣撴ā鍨嬶紙Entity/銆佸悇妯″潡鐨� Models/ 瀛愮洰褰曪級
+- **鏉冮檺鎺у埗锛�** 鍩轰簬瑙掕壊鐨勬潈闄愪綋绯伙紙User 妯″潡 + 鑿滃崟鍔ㄦ�佸姞杞斤級
+
+### 鏋舵瀯浼樺娍
+
+**娓呮櫚鐨勬ā鍧楄竟鐣岋細**
+- 鎸変笟鍔″煙鍨傜洿鍒囧垎锛圔asicData銆乄ork銆乄OM銆丵C绛夛級
+- 姣忎釜妯″潡鐙珛绠$悊鑷繁鐨勭獥浣撳拰杈呭姪缁勪欢
+- 妯″潡闂撮�氳繃鍚庣 API 鍜屽疄浣撴ā鍨嬫澗鑰﹀悎
+
+**涓板瘜鐨勮緟鍔╃粍浠讹細**
+- 60+ 鏁版嵁閫夋嫨鎺т欢锛坄UcLook*.cs`锛�
+- 缁熶竴鐨� CRUD 宸ュ叿鏍忥紙`UcToolBarMenu.cs`锛�
+- 鍒嗛〉鎺т欢銆佸瓧鍏搁�夋嫨鍣ㄣ�乀oast 閫氱煡绛�
+
+**缁熶竴鐨勫紑鍙戞ā寮忥細**
+- 鏍囧噯鐨勫懡鍚嶈鑼冿紙`Frm_{涓氬姟鍚峿.cs`锛孶ser 妯″潡闄ゅ锛�
+- 涓�鑷寸殑 HTTP 璋冪敤妯″紡锛坄UtilityHelper.HttpPost()`锛�
+- 缁熶竴鐨勬秷鎭彁绀猴紙`MsgHelper`锛夊拰鏃ュ織璁板綍锛坄LogHelper`锛�
+- 鏍囧噯鍖栫殑 Grid 鍒濆鍖栵紙`UtilityHelper.InitGridControl()`锛�
+
+**鑹ソ鐨勫彲鎵╁睍鎬э細**
+- 鏂板妯″潡鍙渶娣诲姞鏂囦欢澶瑰拰绐椾綋锛屽悗绔厤缃彍鍗曞嵆鍙�
+- 鏀寔宸ヨ壓娴佺▼瀹氬埗锛堝鐗堟湰绐椾綋锛欸x銆丟x0銆丟xShow锛�
+- 鏀寔澶氱妫�楠屾ā寮忥紙Detect01銆丏etect01H5銆丏etect01Input锛�
+- 绉诲姩绔泦鎴愭敮鎸侊紙PDA 妯″潡 + H5 鐗堟湰绐椾綋锛�
+
+### 搴旂敤鍦烘櫙
+
+璇ユ灦鏋勪负鍒堕�犱紒涓氭彁渚涗簡瀹屾暣鐨� MES 淇℃伅鍖栬В鍐虫柟妗堬紝瑕嗙洊锛�
+
+- 鉁� **鍩虹鏁版嵁绠$悊**锛氬鎴枫�佷緵搴斿晢銆佺墿鏂欍�佷粨搴撱�侀儴闂ㄣ�佸憳宸�
+- 鉁� **鐢熶骇璁″垝鎵ц**锛氬伐鍗曞垱寤恒�佸伐鑹鸿矾绾裤�佹淳宸ャ�佽繘搴﹁窡韪�
+- 鉁� **杞﹂棿鐜板満绠$悊**锛氬紑宸ユ姤宸ャ�佹暟鎹噰闆嗐�佽ˉ鏂欍�佽繑淇�
+- 鉁� **璐ㄩ噺绠$悊浣撶郴**锛欼QC銆両PQC銆丗QC 鍏ㄦ祦绋嬭川閲忔帶鍒�
+- 鉁� **浠撳偍鐗╂祦绠$悊**锛氬嚭鍏ュ簱銆佽皟鎷ㄣ�佹潯鐮佺鐞嗐�佸鎵樺姞宸�
+- 鉁� **閿�鍞彂璐х鐞�**锛氳鍗曠鐞嗐�佸彂璐с�侀��璐у鐞�
+- 鉁� **鎴愭湰鏍哥畻绠$悊**锛氳浠跺伐璧勩�佽鏃跺伐璧勩�佽�冨嫟鎺掔彮
+- 鉁� **鎶ヨ〃鏌ヨ鍒嗘瀽**锛氬悇涓氬姟鍩熸姤琛ㄣ�丗astReport 闆嗘垚
+- 鉁� **绯荤粺閰嶇疆绠$悊**锛氱敤鎴锋潈闄愩�佽鑹茬鐞嗐�佺郴缁熷弬鏁�
+
+璇ョ郴缁熼�傜敤浜庣鏁e埗閫犮�佺數瀛愯閰嶃�佹満姊板姞宸ョ瓑琛屼笟锛屾敮鎸佸宸ュ巶銆佸杞﹂棿銆佸缁勭粐鐨勪紒涓氱骇搴旂敤鍦烘櫙銆�
\ No newline at end of file
diff --git a/DevApp/Gs.DevApp/DevFrm/FrmLogin.resx b/DevApp/Gs.DevApp/DevFrm/FrmLogin.resx
index 2e477c9..ae11107 100644
--- a/DevApp/Gs.DevApp/DevFrm/FrmLogin.resx
+++ b/DevApp/Gs.DevApp/DevFrm/FrmLogin.resx
@@ -121,20 +121,20 @@
<data name="btnCancel.ImageOptions.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAABF0RVh0VGl0
- bGUAQ2xvc2U7RXhpdDsFGf+FAAAArElEQVQ4T7XSOwoCQRCE4c0E8XEDQTMRA+/gTTykGBuYGm6olxBE
- tP1LHGl1WoZVg2+DYrqYZrYys6/cPvVibk38teBUkkUFNcbYuGyFCXYuyxYcMYSyPlSi4fY9m+KMsECW
- aEF5D2m4gzUeZ6MC8SXZYflU4K8taZ2nc1GBH+4i3eStJFdwwABpWNf268xwQVggW4zgd1aJnnbvsrBA
- 9JyvWfGPVOx3Bc1ZdQWpA3U147gCvgAAAABJRU5ErkJggg==
+ bGUAQ2xvc2U7RXhpdDsFGf+FAAAAqElEQVQ4T7WSMQoCQRRDtxNk1RsIaydi4R1ykxxSrC1sLVPqJQQR
+ HfnLCJ913BlcLTJFII+EP1UIoRqi9hERvtFfAbcS7xNAIpYiDs7biViJOOUAVxGNCPNmEWLhcfTWIu59
+ ANNWxCgGpi5ci9jnGqQgyXAO4Gv7OUUAH564Jm+QFOAiYu7CVtvP2Yh49AFMRxGLzmaD2GnPuQYv2Tm7
+ XvFHKtbvAEP0BKkDdTUPi1CNAAAAAElFTkSuQmCC
</value>
</data>
<data name="btnLogin.ImageOptions.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAACB0RVh0VGl0
- bGUATmV3O05ld0VtcGxveWVlO05ld1BlcnNvbjveWVScAAAA3ElEQVQ4T5WOPQ5BQRSF3wYsgohCJXRq
- PRWJJaktgFLUOjsQ0egURKEgaj/NOEfuyJl5E4/iy8y5c7+Tyc6LruI0O+cKUbEVnUkhxhd4ycOcDUdL
- cgVjULKcK1AxyCbwJBPLuYKiH/iCm+VkgZf0VJlcKJNUgRZ9sshkRpkEBRr8AmiCJ/Ay75z9XED64GQM
- bPZGnSDYAsUjqFgmZXAAPWZ1goDHBngAfnsDqqAGtjbjW12duGBui9+YqhMXnKPlFCd14oJ9tJxip05c
- 0AFrcLdlhbMVaKsTFPyPy16LX4vunIH/egAAAABJRU5ErkJggg==
+ bGUATmV3O05ld0VtcGxveWVlO05ld1BlcnNvbjveWVScAAAA10lEQVQ4T52RPQoCMRCF9wIeQhELK9HO
+ 2l4rhTnS1B5AS7G2ezcQsbGzUCy2WLH2p4kMJDBmx0QsPrJvkvcRskW1GRcKp7NzLosuDqK1dtgiCEIp
+ ILkghnAjxpwYDZ9rAl38yL4gq7D4JsjdIAjuKYH5BqosXFMC8y9EgpUp0CEcIEafGC9Vlm+Z/SwQpsQo
+ PTO9lxNI8UKMlio1iXEmxiQn6BHj6a+9J0abGB1iHPxM9ropwTp6OItlSlAZhZgyJTgZhZhjSjAixo4Y
+ D6Mosy0xhl8F//AGi1+L7i5kYh4AAAAASUVORK5CYII=
</value>
</data>
</root>
\ No newline at end of file
diff --git a/DevApp/HELP.md b/DevApp/HELP.md
index 0852eda..a64b2d4 100644
--- a/DevApp/HELP.md
+++ b/DevApp/HELP.md
@@ -1,107 +1,1474 @@
-# 钃濆疂 MES 瀹㈡埛绔府鍔╂寚鍗�
+# 钃濆疂 MES 瀹㈡埛绔府鍔╂寚鍗� (G-MES V2.0)
+
+> **LanBMes MES Client** 鏄熀浜� .NET Framework 4.8 鍜� DevExpress WinForms 鏋勫缓鐨勪紒涓氱骇鍒堕�犳墽琛岀郴缁�(MES)妗岄潰搴旂敤绋嬪簭,涓哄埗閫犺溅闂存彁渚涘叏闈㈢殑鐢熶骇鎵ц銆佷粨鍌ㄧ鐞嗐�佽川閲忔帶鍒跺拰鎶ヨ〃鍒嗘瀽鑳藉姏銆�
+
+## 鐩綍
+
+- [1. 椤圭洰姒傝](#1-椤圭洰姒傝)
+- [2. 瑙e喅鏂规缁撴瀯](#2-瑙e喅鏂规缁撴瀯)
+- [3. 鏍稿績鎶�鏈爤](#3-鏍稿績鎶�鏈爤)
+- [4. 寮�鍙戠幆澧冮厤缃甝(#4-寮�鍙戠幆澧冮厤缃�)
+- [5. 鏋勫缓涓庤繍琛宂(#5-鏋勫缓涓庤繍琛�)
+- [6. DevFrm 鍔熻兘妯″潡璇﹁В](#6-devfrm-鍔熻兘妯″潡璇﹁В)
+- [7. 鏋舵瀯涓庤璁℃ā寮廬(#7-鏋舵瀯涓庤璁℃ā寮�)
+- [8. 宸ュ叿绫讳笌鍏叡缁勪欢](#8-宸ュ叿绫讳笌鍏叡缁勪欢)
+- [9. 閰嶇疆璇存槑](#9-閰嶇疆璇存槑)
+- [10. 閮ㄧ讲鎸囧崡](#10-閮ㄧ讲鎸囧崡)
+- [11. 寮�鍙戣鑼冧笌鏈�浣冲疄璺礭(#11-寮�鍙戣鑼冧笌鏈�浣冲疄璺�)
+- [12. 甯歌闂涓庢晠闅滄帓鏌(#12-甯歌闂涓庢晠闅滄帓鏌�)
+
+---
## 1. 椤圭洰姒傝
-- **瑙e喅鏂规鍚嶇О**锛歚GsDevSolution.sln`
-- **涓昏鐢ㄩ��**锛氶潰鍚戝埗閫犵幇鍦虹殑 MES Windows 瀹㈡埛绔紝瑕嗙洊鐢熶骇銆佷粨鍌ㄣ�佽川妫�銆佺郴缁熼厤缃瓑涓氬姟銆�
-- **鏍稿績搴旂敤**锛歚Gs.DevApp`锛圖evExpress WinForms 瀹㈡埛绔級锛岃緟浠ョО閲嶉噰闆嗙珯鐐逛笌瀹夎绋嬪簭銆�
+
+### 1.1 鍩烘湰淇℃伅
+
+| 椤圭洰 | 璇存槑 |
+|------|------|
+| **瑙e喅鏂规鍚嶇О** | `GsDevSolution.sln` |
+| **浜у搧鍚嶇О** | G-MES V2.0 |
+| **涓昏鐢ㄩ��** | 闈㈠悜鍒堕�犵幇鍦虹殑 MES Windows 瀹㈡埛绔� |
+| **鏍稿績搴旂敤** | `Gs.DevApp` (涓诲鎴风) |
+| **杈呭姪搴旂敤** | `Gs.WeightIqc` (IQC绉伴噸), `Gs.WeightLine` (浜х嚎绉伴噸) |
+| **寮�鍙戠幆澧�** | Visual Studio 2022+ |
+| **鐩爣妗嗘灦** | .NET Framework 4.8 |
+| **鏋勫缓骞冲彴** | Any CPU |
+
+### 1.2 鏍稿績鐗规��
+
+- 鉁� **鐜颁唬鍖� UI**: 鍩轰簬 DevExpress v22.2 鐨� FluentDesign 鐣岄潰
+- 鉁� **鍔ㄦ�佸姞杞�**: 閫氳繃鍙嶅皠鏈哄埗瀹炵幇鑿滃崟鍜岀獥浣撶殑鍔ㄦ�佸姞杞�
+- 鉁� **鏉冮檺鎺у埗**: 鍩轰簬瑙掕壊鐨勮彍鍗曟潈闄愬拰鎿嶄綔鏉冮檺绠$悊
+- 鉁� **鍙鐢ㄧ粍浠�**: 150+ 涓氬姟鎺т欢,鎻愰珮寮�鍙戞晥鐜�
+- 鉁� **澶氭暟鎹簱鏀寔**: 鍏煎 Oracle 鍜� SQL Server
+- 鉁� **鑷姩鏇存柊**: 闆嗘垚 AutoUpdater.NET 瀹炵幇鑷姩鍗囩骇
+- 鉁� **宓屽叆寮忔祻瑙堝櫒**: CefSharp 鏀寔 H5 椤甸潰闆嗘垚
+- 鉁� **宸ヤ笟閫氫俊**: NModbus 鏀寔 Modbus TCP/RTU 璁惧閫氫俊
+- 鉁� **闆嗕腑寮忔棩蹇�**: 缁熶竴鐨勬棩蹇楄褰曞拰閿欒杩借釜鏈哄埗
+
+### 1.3 涓氬姟瑕嗙洊鑼冨洿
+
+```
+鍩虹鏁版嵁绠$悊 鈫� 鐢熶骇璁″垝 鈫� 宸ュ崟绠$悊 鈫� 鐢熶骇鎵ц 鈫� 璐ㄩ噺妫�楠� 鈫� 浠撳偍鐗╂祦 鈫� 鎶ヨ〃鍒嗘瀽
+ 鈫� 鈫� 鈫� 鈫� 鈫� 鈫� 鈫�
+ 瀹㈡埛/渚涘簲鍟� 鎺掍骇璋冩暣 浠诲姟涓嬭揪 宸ュ簭寮�宸� 澶氱骇璐ㄦ 鍑哄叆搴撶鐞� FastReport
+ 鐗╂枡涓绘暟鎹� 浜х嚎鍒嗛厤 娴佺▼鍗� 鏁版嵁閲囬泦 缂洪櫡杩借釜 搴撳瓨璋冩嫧 缁熻鍒嗘瀽
+ 宸ヨ璁惧 璧勬簮鍗忚皟 杩涘害杩借釜 杩斿伐缁翠慨 AQL鎶芥牱 鏉$爜绠$悊 鑷畾涔夋姤琛�
+```
+
+---
## 2. 瑙e喅鏂规缁撴瀯
-| 鐩綍 | 璇存槑 |
-| --- | --- |
-| `Gs.DevApp/` | 涓诲鎴风椤圭洰锛屽寘鍚叏閮ㄤ笟鍔$獥浣撱�佸伐鍏峰簱銆佽祫婧愬強閰嶇疆銆� |
-| 鈹溾攢 `DevFrm/` | 涓氬姟绐椾綋锛屾寜棰嗗煙鍒掑垎锛坄BasicData/` 鍩虹鏁版嵁銆乣Work/` 鍒剁▼銆乣QC/` 璐ㄦ銆乣Sys/` 绯荤粺璁剧疆绛夛級銆� |
-| 鈹溾攢 `Entity/` | DTO 涓庨�氱敤妯″瀷锛堝 `PageQueryModel`銆乣ReturnModel`锛夈�� |
-| 鈹溾攢 `ToolBox/` | 鍏叡宸ュ叿绫伙紙HTTP銆佹棩蹇椼�丮odbus銆佸璇濇鍖呰绛夛級銆� |
-| 鈹溾攢 `UserControl/` | 鍙鐢ㄦ帶浠讹紙宸ュ叿鏍忋�佸垎椤点�佹暟鎹瓧鍏搞�佹煡璇㈤�夋嫨鍣ㄧ瓑锛夈�� |
-| `Gs.WeightIqc/` | IQC 鏉ユ枡绉伴噸瀹㈡埛绔紝璐熻矗涓插彛/Modbus 閲囬泦涓庝笂浼犮�� |
-| `Gs.WeightLine/` | 浜х嚎绉伴噸瀹㈡埛绔紝鏀寔澶氭潯绾夸綋鍒囨崲涓庡疄鏃剁洃鎺с�� |
-| `Gs.Setup/` | Visual Studio Installer 椤圭洰锛坄.vdproj`锛夛紝鐢ㄤ簬鎵撳寘鍙戝竷銆� |
-| `packages/` | NuGet 缂撳瓨鐩綍锛屽寘鍚� DevExpress銆丆efSharp銆丯Modbus銆丼ystem.* 渚濊禆銆� |
+### 2.1 椤圭洰缁勬垚
-## 3. 鏍稿績鎶�鏈爤
-- **.NET Framework 4.8 / C# WinForms**锛氬簲鐢ㄥ熀纭�妗嗘灦銆�
-- **DevExpress v22.2**锛歎I 缁勪欢锛團luentDesign銆乆traGrid銆乆traTab銆乄aitDialog 绛夛級銆�
-- **CefSharp 109 + AutoUpdater.NET**锛氬祵鍏ュ紡娴忚鍣ㄤ笌鍙�夌殑鑷姩鏇存柊鑳藉姏銆�
-- **NModbus銆丼erialPort**锛氬伐涓氳澶囬�氫俊锛屾兜鐩� TCP 涓� RTU銆�
-- **Newtonsoft.Json銆丆onfigurationManager**锛欰PI 鏁版嵁瑙f瀽涓庨厤缃鍙栥��
-- **Oracle.ManagedDataAccess銆丼ystem.Data.SqlClient**锛氭寜鍦烘櫙璁块棶 Oracle 鎴� SQL Server銆�
+```
+GsDevSolution/
+鈹溾攢鈹� Gs.DevApp/ 銆愪富瀹㈡埛绔」鐩��
+鈹� 鈹溾攢鈹� DevFrm/ - 18涓笟鍔¢鍩熸ā鍧� (150+ 绐椾綋)
+鈹� 鈹� 鈹溾攢鈹� BasicData/ - 鍩虹鏁版嵁 (瀹㈡埛/渚涘簲鍟�/鐗╂枡/浜х嚎)
+鈹� 鈹� 鈹溾攢鈹� Work/ - 鐢熶骇鎵ц (寮�宸�/鏁版嵁閲囬泦/杩斿伐)
+鈹� 鈹� 鈹溾攢鈹� WOM/ - 宸ュ崟绠$悊 (浠诲姟涓嬭揪/鎺掍骇)
+鈹� 鈹� 鈹溾攢鈹� QC/ - 璐ㄩ噺绠$悊閫氱敤妯″潡
+鈹� 鈹� 鈹溾攢鈹� IPQC/ - 鍒剁▼妫�楠� (棣栦欢/宸℃)
+鈹� 鈹� 鈹溾攢鈹� FQC/ - 鎴愬搧缁堟
+鈹� 鈹� 鈹溾攢鈹� RkQC/ - 鏉ユ枡璐ㄦ
+鈹� 鈹� 鈹溾攢鈹� Ck/ - 鍑哄簱绠$悊 (棰嗘枡/琛ユ枡/閫�璐�)
+鈹� 鈹� 鈹溾攢鈹� Rk/ - 鍏ュ簱绠$悊 (鏉ユ枡/閫�搴�/鍏朵粬)
+鈹� 鈹� 鈹溾攢鈹� Warehouse/ - 浠撳簱鎿嶄綔 (璋冩嫧/鐩樼偣/鏉$爜)
+鈹� 鈹� 鈹溾攢鈹� Sales/ - 閿�鍞鍗曚笌鍙戣揣
+鈹� 鈹� 鈹溾攢鈹� WW/ - 濮斿绠$悊
+鈹� 鈹� 鈹溾攢鈹� Rpt/ - 鎶ヨ〃璁捐涓庢墽琛�
+鈹� 鈹� 鈹溾攢鈹� Sys/ - 绯荤粺璁剧疆 (鑿滃崟/缁勭粐/鍗曞彿瑙勫垯)
+鈹� 鈹� 鈹溾攢鈹� User/ - 鐢ㄦ埛涓庢潈闄愮鐞�
+鈹� 鈹� 鈹溾攢鈹� JJGZ/ - 澶瑰叿宸ヨ涓庤澶囧彴璐�
+鈹� 鈹� 鈹溾攢鈹� BarCode/ - 鏉$爜鐢熸垚涓庢墦鍗�
+鈹� 鈹� 鈹斺攢鈹� PDA/ - 鎵嬫寔缁堢鐣岄潰
+鈹� 鈹溾攢鈹� Entity/ - 鏁版嵁浼犺緭瀵硅薄 (DTO)
+鈹� 鈹溾攢鈹� ToolBox/ - 鍏叡宸ュ叿绫�
+鈹� 鈹溾攢鈹� UserControl/ - 鍙鐢ㄦ帶浠跺簱 (150+)
+鈹� 鈹溾攢鈹� Resources/ - 璧勬簮鏂囦欢 (鍥炬爣/鍥剧墖)
+鈹� 鈹溾攢鈹� App.config - 搴旂敤閰嶇疆鏂囦欢
+鈹� 鈹斺攢鈹� Program.cs - 搴旂敤绋嬪簭鍏ュ彛
+鈹溾攢鈹� Gs.WeightIqc/ 銆怚QC 绉伴噸瀹㈡埛绔��
+鈹溾攢鈹� Gs.WeightLine/ 銆愪骇绾跨О閲嶅鎴风銆�
+鈹溾攢鈹� Gs.Setup/ 銆愬畨瑁呯▼搴忛」鐩��(.vdproj)
+鈹斺攢鈹� packages/ 銆怤uGet 鍖呯洰褰曘��
+```
-## 4. DevFrm 鍔熻兘妯″潡璇﹁В
+### 2.2 鏍稿績鐩綍璇﹁В
-### 4.1 鐧诲綍涓庝富妗嗘灦
-- `Program.cs`锛氬崟瀹炰緥瀹堟姢銆丆efSharp 鍒濆鍖栥�佸惎鍔ㄧ櫥褰曟祦绋嬨��
-- `FrmLogin`锛氳嚜鍔ㄦ洿鏂帮紙AutoUpdater.NET锛夈�佸瓧浣撳姞杞姐�佽处鍙疯蹇嗐�佽皟鐢� `User/UserLogin`銆�
-- `FrmMain`锛欴evExpress FluentDesign 涓荤晫闈紝璐熻矗鑿滃崟鏍戝姞杞斤紙`User/GetUserLoginInfo`锛夈�侀〉绛剧敓鍛藉懆鏈熴�佺粍缁囧垏鎹€�佸簳閮ㄧ姸鎬佹爮鍙婄獥鍙i棿浜嬩欢浼犻�掋��
+#### DevFrm/ - 涓氬姟绐椾綋
-### 4.2 鍩虹鏁版嵁鍩�
-- **`BasicData/`**锛氱淮鎶ょ郴缁熶富鏁版嵁銆傚吀鍨嬬獥浣撳寘鎷� `Frm_Customer`锛堝鎴凤級銆乣Frm_Supplier` & `Frm_SupplierSrm`锛堜緵搴斿晢涓� SRM 鍏崇郴锛夈�乣Frm_MesItems`/`Frm_MesItemsShow`锛堢墿鏂欙級銆乣Frm_MesWorkshopLine`锛堜骇绾匡級銆乣Frm_Staff`銆乣Frm_Department` 绛夈��
-- **`BarCode/`**锛氭潯鐮佹壒閲忕敓鎴愩�佹墦鍗版ā鏉胯缃紝甯歌绐椾綋濡� `Frm_BarcodePrint`, `Frm_BarcodeTemplate`銆�
-- **`JJGZ/`**锛氬す鍏峰伐瑁呭強璁惧鐐规鐩稿叧涓绘暟鎹紝缁存姢宸ヨ鍙拌处銆佺偣妫�椤圭洰銆�
+鎵�鏈変笟鍔$獥浣撴寜棰嗗煙鍒掑垎,姣忎釜瀛愮洰褰曞寘鍚棰嗗煙鐨勬墍鏈夎〃鍗曞拰瀵硅瘽妗嗐��
-### 4.3 浠撳偍绠$悊鍩�
-- **`Ck/`锛堝嚭搴擄級**锛氳鐩栨潗鏂欍�佽ˉ鏂欍�佸叾浠栥�侀��璐с�佸澶栫瓑鍑哄簱娴佺▼锛涘 `Frm_MesItemBl`锛堣ˉ鏂欏嚭搴擄級銆乣Frm_MesCgthSq`锛堥噰璐��璐х敵璇凤級銆乣Frm_MesInvItemOut_SCLL`锛堢敓浜ч鏂欏嚭搴擄級銆�
-- **`Rk/`锛堝叆搴擄級**锛氭潵鏂欍�侀��搴撳強鏉傞」鍏ュ簱锛涘 `Frm_MesInvItemArn`锛堝埌璐у叆搴擄級銆乣Frm_MesItemTbl`锛堟潗鏂欏叆搴撳彴璐︼級銆乣Frm_MesItemQtrk`锛堝叾浠栧叆搴擄級銆�
-- **`Warehouse/`**锛氬簱鍐呮搷浣滀笌鏉$爜缁存姢锛涘寘鍚� `Frm_MesDbck`锛堣皟鎷ㄥ嚭搴擄級銆乣Frm_MesRohIn`锛堝師鏉愬叆搴擄級銆乣Frm_ArrivalBarcode`銆乣Frm_InitialBarcode` 绛夋潯鐮佸鐞嗐��
-- **`PDA/`**锛氫笌鎵嬫寔璁惧浜や簰鐨勭畝鍖栫晫闈紝鎻愪緵鎵爜銆佺悊璐с�佺洏鐐圭瓑鐜板満鍔ㄤ綔銆�
+**鍛藉悕瑙勮寖**: `Frm_{涓氬姟鍚嶇О}.cs` 鎴� `Frm_{涓氬姟鍚嶇О}_{瀛愮被鍨媫.cs`
-### 4.4 璐ㄩ噺绠$悊鍩�
-- **`QC/`**锛氳川閲忛�氱敤妯″潡涓庡瓧鍏哥淮鎶わ紝鍚己闄蜂唬鐮侊紙`DefectCode*.cs`锛夈�佹楠岄」鐩紙`Frm_MesQaItemsDetect01`锛夈�丄QL 鎶芥牱璁剧疆锛坄Frm_MesQmAql1`锛夌瓑锛屽苟鎻愪緵 `Models/` DTO銆�
-- **`IPQC/`**锛氬埗绋嬭繃绋嬫楠岋紝濡� `Frm_ShouJian`锛堥浠讹級銆乣Frm_XunJian`锛堝贰妫�锛夈�丠5 妫�楠岀晫闈㈢瓑銆�
-- **`FQC/`**锛氭垚鍝佺粓妫�锛屽寘鎷� `Frm_Fqc`銆乣Frm_FqcDetect01`銆佸紓甯稿鐞� `MesFqcExceptional`銆�
-- **`RkQC/`**锛氭潵鏂欒川妫�锛屾彁渚� `Frm_Cqfa`锛堟娊妫�鏂规锛夈�乣Frm_CqfaItems`銆乣Frm_QtrkDetect01`銆乣Frm_WwrkDetect01` 绛夈��
-- **`WW/`**锛氬澶栬川閲忕鐞嗭紝濡傚澶栨楠屻�佸紓甯稿洖浼犮��
+#### Entity/ - 鏁版嵁妯″瀷
-### 4.5 鍒堕�犳墽琛屽煙
-- **`Work/`**锛氬埗绋嬩綔涓氭牳蹇冿紝濡� `Frm_WorkStart`锛堝伐搴忓紑宸ワ級銆乣Frm_WorkProcesses`锛堟祦绋嬪崱鎺э級銆乣Frm_Work01/09`锛堝伐绔欐暟鎹噰闆嗭紝鍚� Modbus銆丼QLServer 浜や簰锛夈�乣Frm_Repair`锛堣繑宸ョ淮淇級绛夈��
-- **`WOM/`**锛氬伐鍗曠鐞嗭紝璐熻矗鐢熶骇浠诲姟涓嬭揪銆佹帓浜ц皟鏁淬�佸伐鍗曡拷韪��
+| 鏂囦欢 | 璇存槑 |
+|------|------|
+| `LoginInfoModel.cs` | 鐧诲綍鐢ㄦ埛淇℃伅妯″瀷 |
+| `PageQueryModel.cs` | 鍒嗛〉鏌ヨ閫氱敤妯″瀷 |
+| `ReturnModel.cs` | API 杩斿洖缁撴灉灏佽 |
-### 4.6 閿�鍞�佹姤琛ㄤ笌缁熻
-- **`Sales/`**锛氶攢鍞鍗曘�佸彂璐с�侀��璐х瓑鍓嶇涓氬姟銆�
-- **`Rpt/`**锛氭姤琛ㄤ腑蹇冿紝鍖呭惈 FastReport/DevExpress 鎶ヨ〃璁捐銆佽繍琛屻�佹暟鎹簮閰嶇疆锛屽 `EasyRptDesign`, `EasyRptEdt`, `SysHelp` 绛夈��
+#### ToolBox/ - 宸ュ叿绫诲簱
-### 4.7 绯荤粺涓庢潈闄�
-- **`Sys/`**锛氱郴缁熻缃笌鍚庡彴绠$悊銆傚姛鑳藉寘鎷� `SysMenu`锛堣彍鍗曠粨鏋勶級銆乣Organization`锛堢粍缁囨爲锛夈�乣DocNoRule`锛堝崟鍙疯鍒欙級銆乣SysLog`銆乣SysHelp`銆乣Frm_Config` 绛夈��
-- **`User/`**锛氱敤鎴枫�佽鑹层�佽鑹叉巿鏉冦�佸瘑鐮佸彉鏇寸瓑锛屽 `User`, `Role`, `RoleSelectAction`, `UserSetPwd`銆�
+| 鏂囦欢 | 璇存槑 |
+|------|------|
+| `UtilityHelper.cs` | **鏍稿績宸ュ叿绫�**: HTTP璇锋眰銆丣SON瑙f瀽銆丟rid鍒濆鍖栫瓑 |
+| `LogHelper.cs` | 鏃ュ織璁板綍宸ュ叿 (鍐欏叆 `logs/{yyyy-MM-dd}.log`) |
+| `MsgHelper.cs` | 缁熶竴娑堟伅鎻愮ず灏佽 (鍩轰簬 DevExpress) |
+| `UpdateParentEventArgs.cs` | 绐椾綋闂翠簨浠堕�氫俊鏈哄埗 |
+| `ModbusHelper.cs` | Modbus 璁惧閫氫俊灏佽 |
-### 4.8 鍏跺畠鏀寔鍩�
-- `JJGZ/`锛氬す鍏峰伐瑁呫�佽閲忚澶囧彴璐︿笌鐐规浠诲姟锛屼负璐ㄩ噺涓庣淮鎶ゆā鍧楁彁渚涘熀纭�鏁版嵁銆�
-- `WW/`锛氬澶栧崗鍚屼綔涓氬強璐ㄦ闂幆锛岃鎺ュ鍗忔祦绋嬨��
-- `PDA/`锛氭墜鎸佺粓绔晫闈㈤泦锛岀敤浜庝粨鍌ㄣ�佺敓浜с�佽川妫�鍦烘櫙鐨勬壂鐮佷綔涓氥��
-- 鏍圭洰褰曚笅鐨� `FrmMain`銆乣FrmLogin`銆乣XtraForm*` 绛夌獥浣撴彁渚涢�氱敤绀轰緥鎴栬皟璇曞叆鍙o紝鍙綔涓烘柊妯″潡鍙傝�冩ā鏉裤��
+#### UserControl/ - 鍙鐢ㄦ帶浠�
-## 5. 宸ュ叿銆佹帶浠朵笌鍏叡鑳藉姏
-- `ToolBox/UtilityHelper`锛氬皝瑁� `HttpPost`銆丣SON 瑙f瀽锛坄ReturnToDynamic/ReturnToTablePage`锛夈�佽祫婧愬姞杞姐�丟rid 鍒濆鍖栥�佽繃婊ゆ潯浠舵弿杩扮瓑銆�
-- `ToolBox/LogHelper`锛氭寜鏃ユ湡鍐欏叆 `logs/{yyyy-MM-dd}.log`锛汫UI 灞傜粺涓�閫氳繃 `MsgHelper` 鎻愮ず銆�
-- `ToolBox/UpdateParentEventArgs`锛氱敤浜庡瓙绐椾綋涓庝富绐椾綋涔嬮棿鐨勪簨浠堕�氫俊銆�
-- `UserControl/`锛歚UcToolBarMenu`銆乣UcPageBar`銆乣UcDictionarySelect`銆乣UcLook*` 绛夋帶浠舵彁鍗囧鐢ㄦ�э紱`Toast` 鐢ㄤ簬杞婚噺鎻愮ず銆�
-
-## 6. 杈呭姪椤圭洰璇存槑
-- **Gs.WeightIqc**锛氬畾鏃惰鍙栦覆鍙gО閲嶆暟鎹紝閫氳繃 `WorkWeight/EditModel` API 涓婃姤锛涘惈绾跨▼绠$悊銆佷覆鍙i厤缃�佹棩蹇楄褰曘��
-- **Gs.WeightLine**锛氱被浼� IQC锛屼絾鏀寔绾夸綋涓嬫媺閫夋嫨銆佸弻璁℃椂鍣ㄥ埛鏂颁互鍙婃洿澶氱晫闈氦浜掋��
-- **Gs.Setup**锛氱敓鎴愬畨瑁呭寘鎴� ClickOnce 閮ㄧ讲鎵�闇�鐨勫畨瑁呭伐绋嬶紝涓� Release 鏋勫缓杈撳嚭閰嶅銆�
-
-## 7. 閰嶇疆涓庣幆澧�
-- 涓婚厤缃枃浠讹細`Gs.DevApp/App.config`锛堣繍琛屾湡璇诲彇 `Gs.DevApp.exe.config`锛夈��
- - 鍏抽敭閿�硷細`WebApiUrl`銆乣ProductName`銆乣Version`銆乣IsAutoUpdater`銆乣AutoUpdaterXml`銆乣LogPath`銆乣AsyncSeconds`銆乣TimingMailInterval` 绛夈��
- - 璁惧涓庢暟鎹簱鍦板潃榛樿鎸囧悜鍐呯綉 IP锛堝 `192.168.0.51`銆乣192.168.60.51`锛夛紝閮ㄧ讲鍓嶉渶鎸夌幆澧冭皟鏁淬��
-- 绉伴噸妯″潡浣跨敤涓插彛鍙傛暟锛堟尝鐗圭巼銆佺鍙e彿锛夊強 Modbus 绔欏彿/瀵勫瓨鍣ㄩ厤缃紱寤鸿灏嗙‖缂栫爜璺緞鎶界鍒伴厤缃垨鍚庡彴鍙傛暟琛ㄣ��
-- 鏃ュ織榛樿鍐欏叆搴旂敤鐩綍涓� `logs/`锛涜纭繚瀹㈡埛绔叿澶囧啓鏉冮檺鎴栨敼涓哄叕鍏辨暟鎹洰褰曘��
-
-## 8. 鏋勫缓涓庨儴缃�
-- 璋冭瘯鏋勫缓锛歚msbuild GsDevSolution.sln /p:Configuration=Debug`
-- 鍙戝竷鏋勫缓锛歚msbuild .\Gs.DevApp\Gs.DevApp.csproj /t:Rebuild /p:Configuration=Release`
-- 鍙墽琛屾枃浠朵綅浜� `bin\{Configuration}\`锛涘彂甯冩椂闇�鎼哄甫 DevExpress銆丆efSharp 渚濊禆鍙� `x86/x64` 瀛愮洰褰曘��
-- 瀹夎鍖咃細鍦� Release 鏋勫缓鍚庢墦寮� `Gs.Setup/Gs.Setup.vdproj` 瀵煎嚭 MSI/EXE銆�
-- 鑷姩鏇存柊锛氳嫢鍚敤 `IsAutoUpdater=1`锛岄渶瑕侀儴缃� `AutoUpdaterXml` 鎸囧悜鐨勬洿鏂版弿杩版枃浠朵笌瀹夎鍖呫��
-
-## 9. 寮�鍙戜笌璋冭瘯寤鸿
-- 閬靛惊鐜版湁鐩綍鍒掑垎锛屾柊澧炲姛鑳戒紭鍏堟斁缃簬鐩稿簲涓氬姟瀛愮洰褰曘��
-- 澶嶇敤 `ToolBox`銆乣UserControl` 涓殑鍏叡鑳藉姏锛岄伩鍏嶉噸澶嶅疄鐜� HTTP銆佹棩蹇椼�佸垎椤点�侀�夋嫨鍣ㄧ瓑閫昏緫銆�
-- 鍏抽敭 API 璋冪敤鍓嶅悗璁板綍鏃ュ織锛屽紓甯告椂浣跨敤 `MsgHelper` 灞曠ず鍙嬪ソ淇℃伅锛屽苟鍦ㄥ悗鍙版棩蹇楅檮甯︿笂涓嬫枃锛堝伐绔欍�佹潯鐮併�佺敤鎴风瓑锛夈��
-- 鍦ㄦ秹鍙婄‖浠舵垨闀胯�楁椂鎿嶄綔鏃讹紝浣跨敤鍚庡彴绾跨▼/寮傛妯″紡锛岄伩鍏嶉樆濉� UI锛涙浛鎹� `Thread.Abort` 涓哄彇娑堟爣璁板彲鎻愬崌绋冲畾鎬с��
-- 寤鸿寤虹珛鎵嬪伐娴嬭瘯娓呭崟锛氱櫥褰曘�佽彍鍗曞姞杞姐�佹牳蹇冧笟鍔℃祦绋嬨�佺О閲嶄笂浼犮�佹姤琛ㄦ墦鍗扮瓑銆�
-- 鏄庢枃鍑嵁鍜岀幆澧� IP 搴旇縼绉昏嚦瀹夊叏閰嶇疆鎴栫幆澧冨彉閲忥紝鎻愪氦鍓嶆敞鎰忚劚鏁忋��
+| 鎺т欢绫诲瀷 | 绀轰緥 | 璇存槑 |
+|----------|------|------|
+| **宸ュ叿鏍�** | `UcToolBarMenu.cs` | 鏍囧噯CRUD鎿嶄綔鏍� |
+| **鍒嗛〉** | `UcPageBar.cs` | 鍒嗛〉鎺т欢 |
+| **閫夋嫨鍣�** | `UcDictionarySelect.cs` | 鏁版嵁瀛楀吀涓嬫媺妗� |
+| **鏌ユ壘鎺т欢** | `UcLookCustomer.cs`<br>`UcLookItems.cs`<br>`UcLookWarehouse.cs` | 60+ 鏁版嵁鏌ユ壘瀵硅瘽妗�<br>(瀹㈡埛/鐗╂枡/浠撳簱绛�) |
+| **閫氱煡** | `Toast.cs` | 杞婚噺绾ф彁绀烘 |
---
-濡傞渶杩涗竴姝ユ墿灞曟垨鍩硅锛屽彲鍩轰簬鏈寚鍗楀揩閫熷畾浣嶆ā鍧楀叆鍙c�佹牳蹇冮厤缃互鍙婃瀯寤烘祦绋嬨�傛杩庢牴鎹疄闄呬笟鍔℃寔缁ˉ鍏呫��***
+
+## 3. 鏍稿績鎶�鏈爤
+
+### 3.1 涓昏渚濊禆
+
+| 鎶�鏈�/搴� | 鐗堟湰 | 鐢ㄩ�� |
+|---------|------|------|
+| **.NET Framework** | 4.8 | 搴旂敤鍩虹妗嗘灦 |
+| **DevExpress** | v22.2.3 | UI 缁勪欢搴� (FluentDesign, XtraGrid, XtraTab, XtraBars) |
+| **CefSharp** | 109.1.110 | 宓屽叆寮� Chromium 娴忚鍣� |
+| **AutoUpdater.NET** | 1.9.2 | 鑷姩杞欢鏇存柊 |
+| **NModbus** | 3.0.81 | 宸ヤ笟璁惧閫氫俊 (Modbus TCP/RTU) |
+| **Newtonsoft.Json** | 13.0.3 | JSON 搴忓垪鍖� |
+| **System.Text.Json** | 8.0.4 | 鐜颁唬 JSON 鏀寔 |
+| **Oracle.ManagedDataAccess** | 鏈�鏂� | Oracle 鏁版嵁搴撹闂� |
+| **System.Data.SqlClient** | 鏈�鏂� | SQL Server 鏁版嵁搴撹闂� |
+
+### 3.2 DevExpress 鏍稿績缁勪欢
+
+```csharp
+// FluentDesign 涓荤晫闈�
+DevExpress.XtraBars.FluentDesignSystem.FluentDesignForm
+
+// 鏁版嵁琛ㄦ牸
+DevExpress.XtraGrid.GridControl
+DevExpress.XtraGrid.Views.Grid.GridView
+
+// 鏍囩椤�
+DevExpress.XtraTab.XtraTabControl
+
+// 瀵艰埅鑿滃崟
+DevExpress.XtraNavBar.NavBarControl
+
+// 绛夊緟瀵硅瘽妗�
+DevExpress.XtraWaitForm.WaitDialogForm
+```
+
+---
+
+## 4. 寮�鍙戠幆澧冮厤缃�
+
+### 4.1 鍓嶇疆瑕佹眰
+
+- 鉁� Windows 10/11 鎴� Windows Server 2016+
+- 鉁� Visual Studio 2022 (鎺ㄨ崘) 鎴� Visual Studio 2019
+- 鉁� .NET Framework 4.8 SDK
+- 鉁� DevExpress v22.2+ 璁稿彲璇� (闇�閰嶇疆 NuGet 婧�)
+- 鉁� Git (鐗堟湰鎺у埗)
+
+### 4.2 鍏嬮殕涓庤繕鍘�
+
+```bash
+# 鍏嬮殕浠g爜搴�
+cd E:\LanBMes
+git clone <repository_url> LB_MesClient
+
+# 杩涘叆瑙e喅鏂规鐩綍
+cd LB_MesClient\DevApp
+
+# 杩樺師 NuGet 鍖�
+nuget restore GsDevSolution.sln
+
+# 鎴栧湪 Visual Studio 涓�:
+# 鍙抽敭瑙e喅鏂规 鈫� 杩樺師 NuGet 绋嬪簭鍖�
+```
+
+### 4.3 閰嶇疆 DevExpress
+
+纭繚宸插畨瑁� DevExpress v22.2 骞堕厤缃� NuGet 婧�:
+
+```
+宸ュ叿 鈫� NuGet 鍖呯鐞嗗櫒 鈫� 绋嬪簭鍖呯鐞嗗櫒璁剧疆 鈫� 绋嬪簭鍖呮簮
+娣诲姞婧�: https://nuget.devexpress.com/<your_feed_key>/api
+```
+
+### 4.4 閰嶇疆鍚庣 API
+
+缂栬緫 `Gs.DevApp\App.config`:
+
+```xml
+<add key="WebApiUrl" value="http://192.168.0.51:8081/" />
+```
+
+淇敼涓哄疄闄呯殑鍚庣 API 鍦板潃銆�
+
+---
+
+## 5. 鏋勫缓涓庤繍琛�
+
+### 5.1 鍛戒护琛屾瀯寤�
+
+```bash
+# Debug 鏋勫缓 (鎺ㄨ崘寮�鍙戜娇鐢�)
+cd E:\LanBMes\LB_MesClient\DevApp
+msbuild GsDevSolution.sln /p:Configuration=Debug /p:Platform="Any CPU"
+
+# Release 鏋勫缓 (鐢ㄤ簬鍙戝竷)
+msbuild GsDevSolution.sln /p:Configuration=Release /p:Platform="Any CPU"
+
+# 浠呮瀯寤轰富椤圭洰
+msbuild Gs.DevApp\Gs.DevApp.csproj /t:Rebuild /p:Configuration=Debug
+```
+
+### 5.2 Visual Studio 杩愯
+
+1. **鎵撳紑瑙e喅鏂规**: 鍙屽嚮 `GsDevSolution.sln`
+2. **璁剧疆鍚姩椤圭洰**: 鍙抽敭 `Gs.DevApp` 鈫� 璁句负鍚姩椤圭洰
+3. **杩愯**: 鎸� `F5` 鎴栫偣鍑� "寮�濮嬭皟璇�"
+
+### 5.3 鐩存帴杩愯
+
+```bash
+# Debug 鐗堟湰
+Gs.DevApp\bin\Debug\Gs.DevApp.exe
+
+# Release 鐗堟湰
+Gs.DevApp\bin\Release\Gs.DevApp.exe
+```
+
+### 5.4 璋冭瘯鎶�宸�
+
+**绂佺敤鍗曞疄渚嬮檺鍒�** (鍏佽鍚屾椂杩愯澶氫釜瀹炰緥鐢ㄤ簬娴嬭瘯):
+
+鍦� `Program.cs` 涓敞閲婁互涓嬩唬鐮�:
+
+```csharp
+// Process[] MyProcesses = Process.GetProcessesByName("Gs.DevApp");
+// if (MyProcesses.Length > 1)
+// {
+// MyProcesses[0].Kill();
+// }
+```
+
+---
+
+## 6. DevFrm 鍔熻兘妯″潡璇﹁В
+
+### 6.1 鐧诲綍涓庝富妗嗘灦
+
+#### Program.cs - 搴旂敤绋嬪簭鍏ュ彛
+
+```csharp
+[STAThread]
+static void Main()
+{
+ // 1. 鍗曞疄渚嬫鏌� (闃叉閲嶅杩愯)
+ Process[] MyProcesses = Process.GetProcessesByName("Gs.DevApp");
+ if (MyProcesses.Length > 1) {
+ MyProcesses[0].Kill();
+ }
+
+ // 2. 鍚敤瑙嗚鏍峰紡
+ Application.EnableVisualStyles();
+ Application.SetCompatibleTextRenderingDefault(false);
+
+ // 3. 鍚姩鐧诲綍娴佺▼
+ _startLogin();
+}
+```
+
+#### FrmLogin.cs - 鐧诲綍绐椾綋
+
+**鏍稿績鍔熻兘**:
+- 鑷姩鏇存柊妫�鏌� (AutoUpdater.NET)
+- 鐢ㄦ埛韬唤楠岃瘉 (璋冪敤 `User/UserLogin` API)
+- 璁颁綇鐢ㄦ埛鍚�/瀵嗙爜
+- 瀛椾綋璁剧疆鎸佷箙鍖� (娉ㄥ唽琛�)
+
+**鍏抽敭浠g爜**:
+
+```csharp
+// 鐧诲綍楠岃瘉
+string result = UtilityHelper.HttpPost("User/UserLogin", "UserLogin", jsonParam);
+dynamic dy = UtilityHelper.ReturnToDynamic(result);
+
+if (dy.code == 200) {
+ LoginInfoModel.CurrentUser = JsonConvert.DeserializeObject<LoginInfoModel>(dy.data.ToString());
+ this.DialogResult = DialogResult.OK;
+}
+```
+
+#### FrmMain.cs - 涓荤獥浣�
+
+**鏍稿績鑱岃矗**:
+1. 鍔犺浇鐢ㄦ埛鑿滃崟缁撴瀯 (`User/GetUserLoginInfo`)
+2. 鏋勫缓 AccordionControl 瀵艰埅鑿滃崟
+3. 鍔ㄦ�佸姞杞界獥浣� (閫氳繃鍙嶅皠)
+4. 绠$悊 TabPage 鐢熷懡鍛ㄦ湡
+5. 缁勭粐鍒囨崲
+6. 鍏ㄥ眬浜嬩欢澶勭悊
+
+**鍔ㄦ�佺獥浣撳姞杞�**:
+
+```csharp
+// 閫氳繃鍛藉悕绌洪棿鍔ㄦ�佸垱寤虹獥浣撳疄渚�
+Form newForm = (Form)Assembly.GetExecutingAssembly()
+ .CreateInstance("Gs.DevApp.DevFrm.BasicData.Frm_Customer");
+
+// 宓屽叆鍒� TabPage
+newForm.FormBorderStyle = FormBorderStyle.None;
+newForm.TopLevel = false;
+newForm.Dock = DockStyle.Fill;
+xtraTabPage.Controls.Add(newForm);
+newForm.Show();
+```
+
+**TabPage 缂撳瓨** (闃叉閲嶅鎵撳紑):
+
+```csharp
+if (tabPageDict.ContainsKey(formName)) {
+ xtraTabControl.SelectedTabPage = tabPageDict[formName];
+ return;
+}
+```
+
+---
+
+### 6.2 鍩虹鏁版嵁鍩� (BasicData/)
+
+#### 瀹㈡埛绠$悊 - Frm_Customer.cs
+
+- 瀹㈡埛涓绘暟鎹淮鎶�
+- 鏀寔鍒嗛〉鏌ヨ
+- 浣跨敤 `UcToolBarMenu` 瀹炵幇澧炲垹鏀规煡
+- 浣跨敤 `UcPageBar` 瀹炵幇鍒嗛〉
+
+#### 渚涘簲鍟嗙鐞�
+
+- `Frm_Supplier.cs` - 渚涘簲鍟嗗熀纭�淇℃伅
+- `Frm_SupplierSrm.cs` - SRM 渚涘簲鍟嗗叧绯荤鐞�
+
+#### 鐗╂枡绠$悊
+
+- `Frm_MesItems.cs` - 鐗╂枡涓绘暟鎹淮鎶�
+- `Frm_MesItemsShow.cs` - 鐗╂枡淇℃伅灞曠ず
+
+#### 浜х嚎绠$悊 - Frm_MesWorkshopLine.cs
+
+- 杞﹂棿浜х嚎閰嶇疆
+- 宸ヤ綔涓績瀹氫箟
+
+#### 鍏朵粬涓绘暟鎹�
+
+- `Frm_Staff.cs` - 鍛樺伐淇℃伅
+- `Frm_Department.cs` - 閮ㄩ棬缁勭粐
+
+---
+
+### 6.3 浠撳偍绠$悊鍩�
+
+#### 鍑哄簱绠$悊 (Ck/)
+
+| 绐椾綋 | 鍔熻兘 |
+|------|------|
+| `Frm_MesInvItemOut_SCLL.cs` | 鐢熶骇棰嗘枡鍑哄簱 |
+| `Frm_MesItemBl.cs` | 琛ユ枡鍑哄簱 |
+| `Frm_MesCgthSq.cs` | 閲囪喘閫�璐х敵璇� |
+| `Frm_MesItemQtck.cs` | 鍏朵粬鍑哄簱 |
+
+#### 鍏ュ簱绠$悊 (Rk/)
+
+| 绐椾綋 | 鍔熻兘 |
+|------|------|
+| `Frm_MesInvItemArn.cs` | 鍒拌揣鍏ュ簱 |
+| `Frm_MesItemTbl.cs` | 鏉愭枡鍏ュ簱鍙拌处 |
+| `Frm_MesItemQtrk.cs` | 鍏朵粬鍏ュ簱 |
+
+#### 浠撳簱鎿嶄綔 (Warehouse/)
+
+| 绐椾綋 | 鍔熻兘 |
+|------|------|
+| `Frm_MesDbck.cs` | 璋冩嫧鍑哄簱 |
+| `Frm_MesRohIn.cs` | 鍘熸潗鍏ュ簱 |
+| `Frm_ArrivalBarcode.cs` | 鍒拌揣鏉$爜鐢熸垚 |
+| `Frm_InitialBarcode.cs` | 鍒濆鏉$爜缁存姢 |
+
+#### 鎵嬫寔缁堢 (PDA/)
+
+鎻愪緵绠�鍖栫殑鎵爜浣滀笟鐣岄潰,鐢ㄤ簬:
+- 蹇�熺悊璐�
+- 搴撳瓨鐩樼偣
+- 鏉$爜鎵弿
+- 绉诲姩浣滀笟
+
+---
+
+### 6.4 璐ㄩ噺绠$悊鍩�
+
+#### QC/ - 璐ㄩ噺閫氱敤妯″潡
+
+- 缂洪櫡浠g爜缁存姢 (`DefectCode*.cs`)
+- 妫�楠岄」鐩缃� (`Frm_MesQaItemsDetect01.cs`)
+- AQL 鎶芥牱鏂规 (`Frm_MesQmAql1.cs`)
+- 璐ㄩ噺鏍囧噯瀹氫箟
+
+#### IPQC/ - 鍒剁▼妫�楠�
+
+| 绐椾綋 | 鍔熻兘 |
+|------|------|
+| `Frm_ShouJian.cs` | 棣栦欢妫�楠� |
+| `Frm_XunJian.cs` | 宸℃浣滀笟 |
+| H5 妫�楠岀晫闈� | 绉诲姩绔楠� |
+
+#### FQC/ - 鎴愬搧缁堟
+
+| 绐椾綋 | 鍔熻兘 |
+|------|------|
+| `Frm_Fqc.cs` | 鎴愬搧妫�楠屼富鐣岄潰 |
+| `Frm_FqcDetect01.cs` | 妫�楠屾暟鎹綍鍏� |
+| `MesFqcExceptional.cs` | 寮傚父澶勭悊 |
+
+#### RkQC/ - 鏉ユ枡璐ㄦ
+
+| 绐椾綋 | 鍔熻兘 |
+|------|------|
+| `Frm_Cqfa.cs` | 鎶芥鏂规 |
+| `Frm_CqfaItems.cs` | 妫�楠岄」閰嶇疆 |
+| `Frm_QtrkDetect01.cs` | 鏉ユ枡妫�楠� |
+| `Frm_WwrkDetect01.cs` | 濮斿鏉ユ枡妫�楠� |
+
+---
+
+### 6.5 鍒堕�犳墽琛屽煙 (Work/)
+
+#### 宸ュ簭浣滀笟
+
+| 绐椾綋 | 鍔熻兘 |
+|------|------|
+| `Frm_WorkStart.cs` | 宸ュ簭寮�宸� |
+| `Frm_WorkProcesses.cs` | 娴佺▼鍗$鐞� |
+| `Frm_Work01.cs` ~ `Frm_Work09.cs` | 鍚勫伐绔欐暟鎹噰闆� |
+| `Frm_Repair.cs` | 杩斿伐缁翠慨 |
+
+#### 鐗规畩鍔熻兘
+
+- **Modbus 璁惧閫氫俊**: 鏀寔瀹炴椂璇诲彇宸ヤ笟璁惧鏁版嵁
+- **SQL Server 鐩磋繛**: 閮ㄥ垎宸ョ珯鐩存帴涓� SQL Server 浜や簰
+- **瀹炴椂鐩戞帶**: 宸ョ珯鐘舵�佸疄鏃跺睍绀�
+
+---
+
+### 6.6 宸ュ崟绠$悊鍩� (WOM/)
+
+- 鐢熶骇浠诲姟涓嬭揪
+- 宸ュ崟鎺掍骇璋冩暣
+- 宸ュ崟杩涘害杩借釜
+- 宸ュ崟鐘舵�佺鐞�
+
+---
+
+### 6.7 閿�鍞鐞嗗煙 (Sales/)
+
+- 閿�鍞鍗曠鐞�
+- 鍙戣揣鍗曞鐞�
+- 閫�璐х鐞�
+- 瀹㈡埛瀵硅处
+
+---
+
+### 6.8 濮斿绠$悊鍩� (WW/)
+
+- 濮斿璁㈠崟绠$悊
+- 濮斿鏉ユ枡妫�楠�
+- 濮斿璐ㄩ噺寮傚父澶勭悊
+- 澶栧崗娴佺▼闂幆
+
+---
+
+### 6.9 鎶ヨ〃鍩� (Rpt/)
+
+| 绐椾綋 | 鍔熻兘 |
+|------|------|
+| `EasyRptDesign.cs` | 鎶ヨ〃璁捐鍣� |
+| `EasyRptEdt.cs` | 鎶ヨ〃缂栬緫 |
+| `SysHelp.cs` | 鎶ヨ〃甯姪 |
+
+**鏀寔鎶�鏈�**:
+- FastReport
+- DevExpress Reports
+- 鑷畾涔夋姤琛ㄥ紩鎿�
+
+---
+
+### 6.10 绯荤粺绠$悊鍩� (Sys/)
+
+| 绐椾綋 | 鍔熻兘 |
+|------|------|
+| `SysMenu.cs` | 鑿滃崟缁撴瀯缁存姢 |
+| `Organization.cs` | 缁勭粐鏋舵瀯绠$悊 |
+| `DocNoRule.cs` | 鍗曞彿瑙勫垯閰嶇疆 |
+| `SysLog.cs` | 绯荤粺鏃ュ織鏌ヨ |
+| `Frm_Config.cs` | 绯荤粺閰嶇疆 |
+
+---
+
+### 6.11 鐢ㄦ埛涓庢潈闄愬煙 (User/)
+
+| 绐椾綋 | 鍔熻兘 |
+|------|------|
+| `User.cs` | 鐢ㄦ埛绠$悊 |
+| `Role.cs` | 瑙掕壊绠$悊 |
+| `RoleSelectAction.cs` | 瑙掕壊鎺堟潈 |
+| `UserSetPwd.cs` | 瀵嗙爜鍙樻洿 |
+
+**鏉冮檺妯″瀷**:
+```
+鐢ㄦ埛 鈫� 瑙掕壊 鈫� 鑿滃崟鏉冮檺 + 鎿嶄綔鏉冮檺
+```
+
+---
+
+### 6.12 澶瑰叿宸ヨ鍩� (JJGZ/)
+
+- 澶瑰叿宸ヨ鍙拌处
+- 璁¢噺璁惧绠$悊
+- 鐐规浠诲姟涓庤褰�
+- 璁惧缁存姢璁″垝
+
+---
+
+### 6.13 鏉$爜绠$悊鍩� (BarCode/)
+
+| 绐椾綋 | 鍔熻兘 |
+|------|------|
+| `Frm_BarcodePrint.cs` | 鏉$爜鎵归噺鎵撳嵃 |
+| `Frm_BarcodeTemplate.cs` | 鎵撳嵃妯℃澘璁剧疆 |
+
+---
+
+## 7. 鏋舵瀯涓庤璁℃ā寮�
+
+### 7.1 澶氬眰鏋舵瀯
+
+```
+鈹屸攢鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�
+鈹� UI Layer (WinForms) 鈹�
+鈹� DevExpress FluentDesign + 150+ 鎺т欢 鈹�
+鈹斺攢鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹攢鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�
+ 鈹� HTTP/JSON REST API
+鈹屸攢鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈻尖攢鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�
+鈹� Business Logic Layer (Client) 鈹�
+鈹� 绐椾綋閫昏緫 + ToolBox 宸ュ叿绫� + 鍔ㄦ�佸姞杞� 鈹�
+鈹斺攢鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹攢鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�
+ 鈹�
+鈹屸攢鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈻尖攢鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�
+鈹� Backend REST API (鍒椤圭洰) 鈹�
+鈹� 韬唤楠岃瘉 + 鑿滃崟 + 涓氬姟閫昏緫 + 鏁版嵁璁块棶 鈹�
+鈹斺攢鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹攢鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�
+ 鈹�
+鈹屸攢鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈻尖攢鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�
+鈹� Data Layer 鈹�
+鈹� Oracle / SQL Server 鈹�
+鈹斺攢鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�
+```
+
+### 7.2 鏍稿績璁捐妯″紡
+
+#### 妯″紡 1: HTTP 璇锋眰闆嗕腑鍖�
+
+**鎵�鏈� API 璋冪敤缁熶竴浣跨敤 `UtilityHelper.HttpPost()`**:
+
+```csharp
+public static string HttpPost(string url, string method, string param, bool isLoading = true)
+{
+ // 1. 鎷兼帴瀹屾暣 URL (WebApiUrl + url)
+ // 2. 娣诲姞 Bearer Token 璁よ瘉澶�
+ // 3. 鏄剧ず Loading 瀵硅瘽妗� (鍙��)
+ // 4. 鍙戦�� POST 璇锋眰
+ // 5. 杩斿洖 JSON 瀛楃涓�
+ // 6. 瓒呮椂鏃堕棿: 150 绉�
+}
+```
+
+**浣跨敤绀轰緥**:
+
+```csharp
+string jsonParam = JsonConvert.SerializeObject(new {
+ pageIndex = 1,
+ pageSize = 50
+});
+
+string result = UtilityHelper.HttpPost(
+ "BasicData/Customer/GetListPage", // 鐩稿璺緞
+ "GetListPage", // 鏂规硶鍚�
+ jsonParam, // JSON 鍙傛暟
+ true // 鏄剧ず鍔犺浇妗�
+);
+
+dynamic dy = UtilityHelper.ReturnToDynamic(result);
+if (dy.code == 200) {
+ // 澶勭悊鏁版嵁
+}
+```
+
+#### 妯″紡 2: 鍔ㄦ�佺獥浣撳姞杞� (鍙嶅皠)
+
+```csharp
+// 鍦� FrmMain.cs 涓�
+private void LoadForm(string namespacePath)
+{
+ // 閫氳繃鍛藉悕绌洪棿璺緞鍒涘缓绐椾綋瀹炰緥
+ string fullName = $"Gs.DevApp.DevFrm.{namespacePath}";
+ Form form = (Form)Assembly.GetExecutingAssembly().CreateInstance(fullName);
+
+ if (form != null)
+ {
+ // 閰嶇疆涓哄瓙绐椾綋
+ form.FormBorderStyle = FormBorderStyle.None;
+ form.TopLevel = false;
+ form.Dock = DockStyle.Fill;
+
+ // 娣诲姞鍒� TabPage
+ XtraTabPage tabPage = new XtraTabPage();
+ tabPage.Text = form.Text;
+ tabPage.Controls.Add(form);
+ xtraTabControl.TabPages.Add(tabPage);
+ xtraTabControl.SelectedTabPage = tabPage;
+
+ form.Show();
+ }
+}
+```
+
+**濂藉**:
+- 鑿滃崟缁撴瀯瀹屽叏鐢卞悗绔帶鍒�
+- 鏃犻渶淇敼浠g爜鍗冲彲璋冩暣鑿滃崟
+- 鏀寔鍔ㄦ�佹潈闄愭帶鍒�
+
+#### 妯″紡 3: TabPage 缂撳瓨鏈哄埗
+
+```csharp
+// 闃叉閲嶅鎵撳紑鍚屼竴绐椾綋
+private Dictionary<string, XtraTabPage> tabPageDict = new Dictionary<string, XtraTabPage>();
+
+private void OpenForm(string formName)
+{
+ if (tabPageDict.ContainsKey(formName))
+ {
+ // 宸插瓨鍦�,婵�娲荤幇鏈� Tab
+ xtraTabControl.SelectedTabPage = tabPageDict[formName];
+ }
+ else
+ {
+ // 鏂板缓 Tab
+ XtraTabPage newPage = CreateNewTabPage(formName);
+ tabPageDict[formName] = newPage;
+ }
+}
+```
+
+#### 妯″紡 4: 鐖跺瓙绐椾綋浜嬩欢閫氫俊
+
+**瀛愮獥浣撹Е鍙戠埗绐椾綋鍒锋柊**:
+
+```csharp
+// 鍦ㄥ瓙绐椾綋涓�
+UpdateParentEventArgs args = new UpdateParentEventArgs(this, "Refresh");
+// 瑙﹀彂浜嬩欢,閫氱煡鐖剁獥浣�
+
+// 鍦ㄧ埗绐椾綋涓�
+private void ChildForm_UpdateParent(object sender, UpdateParentEventArgs e)
+{
+ if (e.Action == "Refresh")
+ {
+ LoadData(); // 鍒锋柊鏁版嵁
+ }
+}
+```
+
+#### 妯″紡 5: 鏍囧噯 CRUD 绐椾綋妯℃澘
+
+**鍏稿瀷绐椾綋缁撴瀯**:
+
+```csharp
+public partial class Frm_Customer : DevExpress.XtraEditors.XtraForm
+{
+ private UcToolBarMenu ucToolBar; // 宸ュ叿鏍� (澧炲垹鏀规煡)
+ private UcPageBar ucPageBar; // 鍒嗛〉鎺т欢
+ private GridControl gridControl; // 鏁版嵁琛ㄦ牸
+
+ private void InitializeForm()
+ {
+ // 1. 鍒濆鍖栧伐鍏锋爮
+ ucToolBar.AddClick += BtnAdd_Click;
+ ucToolBar.EditClick += BtnEdit_Click;
+ ucToolBar.DeleteClick += BtnDelete_Click;
+ ucToolBar.RefreshClick += BtnRefresh_Click;
+
+ // 2. 鍒濆鍖栧垎椤�
+ ucPageBar.PageChanged += LoadData;
+
+ // 3. 鍔犺浇鏁版嵁
+ LoadData();
+ }
+
+ private void LoadData()
+ {
+ string jsonParam = JsonConvert.SerializeObject(new {
+ pageIndex = ucPageBar.CurrentPage,
+ pageSize = ucPageBar.PageSize
+ });
+
+ string result = UtilityHelper.HttpPost(
+ "BasicData/Customer/GetListPage",
+ "GetListPage",
+ jsonParam
+ );
+
+ dynamic dy = UtilityHelper.ReturnToDynamic(result);
+ if (dy.code == 200)
+ {
+ gridControl.DataSource = dy.data;
+ ucPageBar.TotalRecords = dy.totalCount;
+ }
+ }
+}
+```
+
+---
+
+## 8. 宸ュ叿绫讳笌鍏叡缁勪欢
+
+### 8.1 UtilityHelper.cs - 鏍稿績宸ュ叿绫�
+
+#### HTTP 璇锋眰
+
+```csharp
+// 鏍囧噯 POST 璇锋眰
+string result = UtilityHelper.HttpPost(
+ "User/UserLogin", // 鐩稿璺緞
+ "UserLogin", // 鏂规硶鍚�
+ jsonParam, // JSON 鍙傛暟
+ true // 鏄剧ず鍔犺浇妗�
+);
+```
+
+#### JSON 瑙f瀽
+
+```csharp
+// 瑙f瀽涓� dynamic 瀵硅薄
+dynamic dy = UtilityHelper.ReturnToDynamic(result);
+
+// 瑙f瀽涓哄垎椤垫暟鎹〃
+DataTable dt = UtilityHelper.ReturnToTablePage(result);
+```
+
+#### Grid 鍒濆鍖�
+
+```csharp
+// 鍒濆鍖栬〃鏍兼帶浠�
+UtilityHelper.InitGridControl(
+ gridControl,
+ gridView,
+ columns, // 鍒楀畾涔�
+ dataSource, // 鏁版嵁婧�
+ allowEdit: false,
+ allowDelete: false
+);
+```
+
+### 8.2 LogHelper.cs - 鏃ュ織宸ュ叿
+
+```csharp
+// 璁板綍淇℃伅鏃ュ織
+LogHelper.WriteLog("鐢ㄦ埛鐧诲綍鎴愬姛", LogHelper.LogType.Info);
+
+// 璁板綍閿欒鏃ュ織
+LogHelper.WriteLog($"API 璋冪敤澶辫触: {ex.Message}", LogHelper.LogType.Error);
+
+// 璁板綍璀﹀憡
+LogHelper.WriteLog("鏁版嵁寮傚父,浣跨敤榛樿鍊�", LogHelper.LogType.Warning);
+```
+
+**鏃ュ織鏂囦欢浣嶇疆**: `logs/{yyyy-MM-dd}.log`
+
+### 8.3 MsgHelper.cs - 娑堟伅鎻愮ず
+
+```csharp
+// 鎴愬姛鎻愮ず
+MsgHelper.ShowSuccess("鎿嶄綔鎴愬姛!");
+
+// 閿欒鎻愮ず
+MsgHelper.ShowError("鎿嶄綔澶辫触,璇烽噸璇�!");
+
+// 璀﹀憡鎻愮ず
+MsgHelper.ShowWarning("鏁版嵁涓嶅畬鏁�!");
+
+// 纭瀵硅瘽妗�
+if (MsgHelper.ShowConfirm("纭畾瑕佸垹闄ゅ悧?") == DialogResult.Yes)
+{
+ // 鎵ц鍒犻櫎
+}
+```
+
+### 8.4 Toast.cs - 杞婚噺鎻愮ず
+
+```csharp
+// 鏄剧ず 3 绉掓彁绀�
+Toast.Show("淇濆瓨鎴愬姛", 3);
+
+// 鏄剧ず鑷畾涔夋椂闀�
+Toast.Show("鏁版嵁宸叉洿鏂�", 5); // 5 绉�
+```
+
+### 8.5 鍙鐢ㄦ帶浠�
+
+#### UcToolBarMenu - 宸ュ叿鏍忔帶浠�
+
+```csharp
+UcToolBarMenu toolBar = new UcToolBarMenu();
+toolBar.AddClick += (s, e) => { /* 鏂板 */ };
+toolBar.EditClick += (s, e) => { /* 缂栬緫 */ };
+toolBar.DeleteClick += (s, e) => { /* 鍒犻櫎 */ };
+toolBar.RefreshClick += (s, e) => { /* 鍒锋柊 */ };
+toolBar.ExportClick += (s, e) => { /* 瀵煎嚭 */ };
+```
+
+#### UcPageBar - 鍒嗛〉鎺т欢
+
+```csharp
+UcPageBar pageBar = new UcPageBar();
+pageBar.PageSize = 50;
+pageBar.TotalRecords = 1000;
+pageBar.PageChanged += (s, e) => {
+ LoadData(pageBar.CurrentPage, pageBar.PageSize);
+};
+```
+
+#### UcDictionarySelect - 鏁版嵁瀛楀吀涓嬫媺
+
+```csharp
+UcDictionarySelect cmbStatus = new UcDictionarySelect();
+cmbStatus.DictionaryType = "OrderStatus"; // 瀛楀吀绫诲瀷
+cmbStatus.LoadData();
+```
+
+#### UcLook* - 鏁版嵁鏌ユ壘鎺т欢
+
+**60+ 鏌ユ壘鎺т欢,瑕嗙洊鎵�鏈変富鏁版嵁**:
+
+```csharp
+// 瀹㈡埛鏌ユ壘
+UcLookCustomer lookCustomer = new UcLookCustomer();
+lookCustomer.ShowDialog();
+string customerId = lookCustomer.SelectedId;
+string customerName = lookCustomer.SelectedName;
+
+// 鐗╂枡鏌ユ壘
+UcLookItems lookItems = new UcLookItems();
+lookItems.ShowDialog();
+string itemId = lookItems.SelectedId;
+
+// 浠撳簱鏌ユ壘
+UcLookWarehouse lookWarehouse = new UcLookWarehouse();
+lookWarehouse.ShowDialog();
+```
+
+---
+
+## 9. 閰嶇疆璇存槑
+
+### 9.1 App.config 鍏抽敭閰嶇疆
+
+**浣嶇疆**: `Gs.DevApp\App.config` (杩愯鏃朵负 `Gs.DevApp.exe.config`)
+
+#### 鏍稿績閰嶇疆椤�
+
+```xml
+<appSettings>
+ <!-- 鍚庣 API 鍦板潃 (蹇呴』閰嶇疆) -->
+ <add key="WebApiUrl" value="http://192.168.0.51:8081/" />
+
+ <!-- 浜у搧鍚嶇О -->
+ <add key="ProductName" value="G-MES V2.0" />
+
+ <!-- 鐗堟湰鍙� -->
+ <add key="Version" value="0.1" />
+
+ <!-- 鏃ュ織鐩綍 (鐩稿璺緞鎴栫粷瀵硅矾寰�) -->
+ <add key="LogPath" value="logs" />
+
+ <!-- 鍒嗛〉澶у皬 -->
+ <add key="PageSize" value="50" />
+
+ <!-- 鍚敤鑷姩鏇存柊 (0=绂佺敤, 1=鍚敤) -->
+ <add key="IsAutoUpdater" value="0" />
+
+ <!-- 鑷姩鏇存柊閰嶇疆鏂囦欢 URL -->
+ <add key="AutoUpdaterXml" value="http://192.168.0.51:8086/AutoUpdater/AutoUpdater.xml" />
+
+ <!-- Toast 鎻愮ず妗嗘樉绀烘椂闀� (绉�) -->
+ <add key="ToastSeconds" value="5" />
+
+ <!-- 姘存瓒呮椂鏃堕棿 (绉�) -->
+ <add key="AsyncSeconds" value="2" />
+
+ <!-- 鏄惁鍚敤姘存鍙婂伐浣嶇爜鍔熻兘 (0=绂佺敤, 1=鍚敤) -->
+ <add key="IsWater" value="0" />
+
+ <!-- IQC 绉伴噸璇诲彇瓒呮椂 (姣) -->
+ <add key="IqcGetWeight" value="3000" />
+
+ <!-- 瀹氭椂閭欢鍙戦�侀棿闅� (姣) -->
+ <add key="TimingMailInterval" value="10000" />
+</appSettings>
+```
+
+### 9.2 鐢ㄦ埛璁剧疆 (鑷姩淇濆瓨)
+
+```xml
+<userSettings>
+ <Gs.DevApp.Properties.Settings>
+ <!-- 鐢ㄦ埛鍚� (璁颁綇瀵嗙爜鍔熻兘) -->
+ <setting name="userName" serializeAs="String">
+ <value />
+ </setting>
+
+ <!-- 瀵嗙爜 (鍔犲瘑瀛樺偍) -->
+ <setting name="userPwd" serializeAs="String">
+ <value />
+ </setting>
+
+ <!-- 璁颁綇瀵嗙爜 -->
+ <setting name="remember" serializeAs="String">
+ <value>False</value>
+ </setting>
+
+ <!-- 瀛椾綋璁剧疆 -->
+ <setting name="fontSizeName" serializeAs="String">
+ <value>瀹嬩綋,10</value>
+ </setting>
+
+ <!-- 鏄惁鍚敤绉伴噸鍔熻兘 -->
+ <setting name="isWeight" serializeAs="String">
+ <value>False</value>
+ </setting>
+ </Gs.DevApp.Properties.Settings>
+</userSettings>
+```
+
+### 9.3 閮ㄧ讲鍓嶅繀鏀归厤缃�
+
+**寮�鍙戠幆澧� 鈫� 鐢熶骇鐜**:
+
+| 閰嶇疆椤� | 寮�鍙戠幆澧� | 鐢熶骇鐜 |
+|--------|----------|----------|
+| `WebApiUrl` | `http://192.168.0.51:8081/` | `http://your-server:port/` |
+| `IsAutoUpdater` | `0` (绂佺敤) | `1` (鍚敤) |
+| `AutoUpdaterXml` | 鍐呯綉鍦板潃 | 鐢熶骇鐜 URL |
+| `LogPath` | `logs` | 寤鸿浣跨敤鍏叡鐩綍 |
+
+---
+
+## 10. 閮ㄧ讲鎸囧崡
+
+### 10.1 鏋勫缓 Release 鐗堟湰
+
+```bash
+# 娓呯悊骞堕噸鏂版瀯寤�
+msbuild Gs.DevApp\Gs.DevApp.csproj /t:Clean
+msbuild Gs.DevApp\Gs.DevApp.csproj /t:Rebuild /p:Configuration=Release /p:Platform="Any CPU"
+```
+
+### 10.2 鍙戝竷鐩綍缁撴瀯
+
+```
+Gs.DevApp.exe # 涓荤▼搴�
+Gs.DevApp.exe.config # 閰嶇疆鏂囦欢 (蹇呴』淇敼)
+DevExpress.*.dll # DevExpress 缁勪欢
+CefSharp.*.dll # CefSharp 缁勪欢
+AutoUpdater.NET.dll # 鑷姩鏇存柊缁勪欢
+Newtonsoft.Json.dll # JSON 搴�
+Oracle.ManagedDataAccess.dll # Oracle 椹卞姩
+x86/ # CefSharp x86 鏈湴搴� (蹇呴』)
+x64/ # CefSharp x64 鏈湴搴� (蹇呴』)
+locales/ # CefSharp 璇█鍖�
+logs/ # 鏃ュ織鐩綍 (杩愯鏃跺垱寤�)
+```
+
+### 10.3 浣跨敤瀹夎绋嬪簭
+
+1. 鎵撳紑 `Gs.Setup\Gs.Setup.vdproj`
+2. 閰嶇疆瀹夎绋嬪簭灞炴��:
+ - **ProductName**: G-MES V2.0
+ - **Manufacturer**: 钃濆疂
+ - **Version**: 涓� App.config 淇濇寔涓�鑷�
+3. 鍙抽敭椤圭洰 鈫� 鐢熸垚
+4. 杈撳嚭: `Gs.Setup\Release\Gs.Setup.msi`
+
+### 10.4 鑷姩鏇存柊閰嶇疆
+
+#### AutoUpdater.xml 绀轰緥
+
+```xml
+<?xml version="1.0" encoding="utf-8"?>
+<update>
+ <version>0.2.0.0</version>
+ <url>http://your-server/updates/Gs.DevApp_v0.2.0.0.zip</url>
+ <changelog>
+ <![CDATA[
+ <h3>鐗堟湰 0.2.0.0 鏇存柊鍐呭</h3>
+ <ul>
+ <li>鏂板锛氭潯鐮佹壒閲忔墦鍗板姛鑳�</li>
+ <li>浼樺寲锛氫粨搴撳嚭鍏ュ簱娴佺▼</li>
+ <li>淇锛氳川妫�鏁版嵁淇濆瓨澶辫触闂</li>
+ </ul>
+ ]]>
+ </changelog>
+ <mandatory>false</mandatory>
+</update>
+```
+
+#### 鍚敤鑷姩鏇存柊
+
+鍦� `App.config` 涓�:
+
+```xml
+<add key="IsAutoUpdater" value="1" />
+<add key="AutoUpdaterXml" value="http://your-server/updates/AutoUpdater.xml" />
+```
+
+### 10.5 閮ㄧ讲妫�鏌ユ竻鍗�
+
+- [ ] 淇敼 `WebApiUrl` 涓虹敓浜х幆澧冨湴鍧�
+- [ ] 妫�鏌� `IsAutoUpdater` 閰嶇疆
+- [ ] 纭繚 `x86/` 鍜� `x64/` 鐩綍瀹屾暣
+- [ ] 娴嬭瘯鏁版嵁搴撹繛鎺�
+- [ ] 楠岃瘉鏃ュ織鐩綍鍐欐潈闄�
+- [ ] 娴嬭瘯鑷姩鏇存柊鍔熻兘
+- [ ] 妫�鏌� DevExpress 璁稿彲璇�
+- [ ] 澶囦唤閰嶇疆鏂囦欢
+
+---
+
+## 11. 寮�鍙戣鑼冧笌鏈�浣冲疄璺�
+
+### 11.1 浠g爜缁勭粐瑙勮寖
+
+#### 鏂板妯″潡
+
+```
+DevFrm/
+鈹斺攢鈹� YourModule/ # 鏂版ā鍧楃洰褰�
+ 鈹溾攢鈹� Frm_Main.cs # 涓荤獥浣�
+ 鈹溾攢鈹� Frm_Edit.cs # 缂栬緫绐椾綋
+ 鈹溾攢鈹� Dlg_Select.cs # 閫夋嫨瀵硅瘽妗�
+ 鈹斺攢鈹� Models/ # 鏈湴妯″瀷 (鍙��)
+```
+
+#### 鍛藉悕瑙勮寖
+
+| 绫诲瀷 | 鍛藉悕瑙勫垯 | 绀轰緥 |
+|------|----------|------|
+| 涓荤獥浣� | `Frm_{涓氬姟鍚峿` | `Frm_Customer.cs` |
+| 缂栬緫绐椾綋 | `Frm_{涓氬姟鍚峿Edit` | `Frm_CustomerEdit.cs` |
+| 瀵硅瘽妗� | `Dlg_{涓氬姟鍚峿` | `Dlg_SelectCustomer.cs` |
+| 鐢ㄦ埛鎺т欢 | `Uc{鍔熻兘鍚峿` | `UcToolBarMenu.cs` |
+
+### 11.2 API 璋冪敤瑙勮寖
+
+#### 鉁� 姝g‘鍋氭硶
+
+```csharp
+// 浣跨敤 UtilityHelper.HttpPost
+string jsonParam = JsonConvert.SerializeObject(new {
+ id = customerId
+});
+
+string result = UtilityHelper.HttpPost(
+ "BasicData/Customer/GetById",
+ "GetById",
+ jsonParam
+);
+
+dynamic dy = UtilityHelper.ReturnToDynamic(result);
+if (dy.code == 200)
+{
+ // 澶勭悊鏁版嵁
+}
+else
+{
+ MsgHelper.ShowError(dy.msg.ToString());
+ LogHelper.WriteLog($"API Error: {dy.msg}", LogHelper.LogType.Error);
+}
+```
+
+#### 鉂� 閿欒鍋氭硶
+
+```csharp
+// 涓嶈鐩存帴浣跨敤 HttpClient銆乄ebRequest 绛�
+// 涓嶈璺宠繃閿欒澶勭悊
+// 涓嶈蹇界暐鏃ュ織璁板綍
+```
+
+### 11.3 寮傚父澶勭悊瑙勮寖
+
+```csharp
+try
+{
+ // 涓氬姟閫昏緫
+ string result = UtilityHelper.HttpPost(...);
+ dynamic dy = UtilityHelper.ReturnToDynamic(result);
+
+ if (dy.code == 200)
+ {
+ // 鎴愬姛澶勭悊
+ }
+ else
+ {
+ // API 杩斿洖閿欒
+ MsgHelper.ShowError(dy.msg.ToString());
+ LogHelper.WriteLog($"API Error: {dy.msg}", LogHelper.LogType.Error);
+ }
+}
+catch (Exception ex)
+{
+ // 鎹曡幏寮傚父
+ MsgHelper.ShowError($"鎿嶄綔澶辫触: {ex.Message}");
+ LogHelper.WriteLog($"Exception in {MethodName}: {ex}", LogHelper.LogType.Error);
+}
+```
+
+### 11.4 UI 鏇存柊瑙勮寖
+
+#### 闀挎椂闂存搷浣滀娇鐢ㄥ悗鍙扮嚎绋�
+
+```csharp
+// 浣跨敤 BackgroundWorker
+BackgroundWorker worker = new BackgroundWorker();
+worker.DoWork += (s, e) => {
+ // 鑰楁椂鎿嶄綔
+ e.Result = PerformLongOperation();
+};
+worker.RunWorkerCompleted += (s, e) => {
+ // UI 鏇存柊
+ UpdateUI(e.Result);
+};
+worker.RunWorkerAsync();
+```
+
+#### 閬垮厤 UI 闃诲
+
+```csharp
+// 鉂� 闃诲 UI 绾跨▼
+Thread.Sleep(5000);
+
+// 鉁� 浣跨敤瀹氭椂鍣ㄦ垨寮傛
+Timer timer = new Timer();
+timer.Interval = 5000;
+timer.Tick += (s, e) => {
+ timer.Stop();
+ // 鎵ц鎿嶄綔
+};
+timer.Start();
+```
+
+### 11.5 鎺т欢澶嶇敤瑙勮寖
+
+#### 浼樺厛浣跨敤鐜版湁鎺т欢
+
+```csharp
+// 鉁� 浣跨敤 UcLookCustomer
+UcLookCustomer lookCustomer = new UcLookCustomer();
+if (lookCustomer.ShowDialog() == DialogResult.OK)
+{
+ txtCustomerId.Text = lookCustomer.SelectedId;
+ txtCustomerName.Text = lookCustomer.SelectedName;
+}
+
+// 鉂� 涓嶈鑷繁鍐欓�夋嫨瀵硅瘽妗�
+// 宸叉湁 60+ UcLook* 鎺т欢鍙敤
+```
+
+### 11.6 鏃ュ織璁板綍瑙勮寖
+
+```csharp
+// 鍏抽敭鎿嶄綔鍓嶅悗璁板綍鏃ュ織
+LogHelper.WriteLog($"寮�濮嬩繚瀛樺鎴锋暟鎹�: {customerId}", LogHelper.LogType.Info);
+
+try
+{
+ string result = UtilityHelper.HttpPost(...);
+ LogHelper.WriteLog($"淇濆瓨鎴愬姛: {customerId}", LogHelper.LogType.Info);
+}
+catch (Exception ex)
+{
+ LogHelper.WriteLog($"淇濆瓨澶辫触: {ex.Message}", LogHelper.LogType.Error);
+}
+```
+
+### 11.7 閰嶇疆绠$悊瑙勮寖
+
+```csharp
+// 鉁� 浠庨厤缃枃浠惰鍙�
+string apiUrl = ConfigurationManager.AppSettings["WebApiUrl"];
+int pageSize = int.Parse(ConfigurationManager.AppSettings["PageSize"]);
+
+// 鉂� 涓嶈纭紪鐮�
+// string apiUrl = "http://192.168.0.51:8081/";
+```
+
+---
+
+## 12. 甯歌闂涓庢晠闅滄帓鏌�
+
+### 12.1 鏋勫缓澶辫触
+
+#### 闂: DevExpress 缁勪欢鎵句笉鍒�
+
+**鍘熷洜**: DevExpress 鏈畨瑁呮垨 NuGet 婧愭湭閰嶇疆
+
+**瑙e喅鏂规**:
+
+1. 瀹夎 DevExpress v22.2
+2. 閰嶇疆 NuGet 婧�:
+ ```
+ 宸ュ叿 鈫� NuGet 鍖呯鐞嗗櫒 鈫� 绋嬪簭鍖呯鐞嗗櫒璁剧疆 鈫� 绋嬪簭鍖呮簮
+ 娣诲姞: https://nuget.devexpress.com/<your_feed_key>/api
+ ```
+3. 杩樺師 NuGet 鍖�:
+ ```bash
+ nuget restore GsDevSolution.sln
+ ```
+
+#### 闂: CefSharp 鏈湴搴撳姞杞藉け璐�
+
+**鍘熷洜**: `x86/` 鎴� `x64/` 鐩綍缂哄け
+
+**瑙e喅鏂规**:
+
+纭繚杈撳嚭鐩綍鍖呭惈:
+```
+x86/
+ libcef.dll
+ chrome_elf.dll
+ ...
+x64/
+ libcef.dll
+ chrome_elf.dll
+ ...
+```
+
+### 12.2 杩愯鏃堕敊璇�
+
+#### 闂: "鏃犳硶杩炴帴鍒� API 鏈嶅姟鍣�"
+
+**鎺掓煡姝ラ**:
+
+1. 妫�鏌� `App.config` 涓殑 `WebApiUrl`
+2. 浣跨敤娴忚鍣ㄨ闂� API 鍦板潃
+3. 妫�鏌ョ綉缁滆繛鎺�
+4. 鏌ョ湅鏃ュ織鏂囦欢 `logs/{yyyy-MM-dd}.log`
+
+#### 闂: "鐧诲綍澶辫触"
+
+**鎺掓煡姝ラ**:
+
+1. 妫�鏌ョ敤鎴峰悕瀵嗙爜鏄惁姝g‘
+2. 妫�鏌ュ悗绔� API 鏄惁姝e父
+3. 鏌ョ湅鏃ュ織鏂囦欢涓殑閿欒淇℃伅
+4. 妫�鏌ユ暟鎹簱杩炴帴
+
+#### 闂: "绐椾綋鍔犺浇澶辫触"
+
+**鍘熷洜**: 鍙嶅皠鍒涘缓绐椾綋澶辫触
+
+**鎺掓煡姝ラ**:
+
+1. 妫�鏌ュ懡鍚嶇┖闂存槸鍚︽纭�
+2. 妫�鏌ョ獥浣撶被鏄惁涓� public
+3. 妫�鏌ョ獥浣撴槸鍚︽湁鏃犲弬鏋勯�犲嚱鏁�
+4. 鏌ョ湅鏃ュ織涓殑寮傚父鍫嗘爤
+
+### 12.3 鎬ц兘闂
+
+#### 闂: Grid 鍔犺浇鎱�
+
+**浼樺寲鏂规**:
+
+1. 鍚敤鍒嗛〉 (浣跨敤 `UcPageBar`)
+2. 鍑忓皯鍒楁暟
+3. 绂佺敤涓嶅繀瑕佺殑 Grid 鐗规��
+4. 浣跨敤铏氭嫙妯″紡 (澶ф暟鎹噺鏃�)
+
+```csharp
+gridView.OptionsView.ColumnAutoWidth = false;
+gridView.BestFitColumns();
+```
+
+#### 闂: API 璇锋眰瓒呮椂
+
+**瑙e喅鏂规**:
+
+1. 妫�鏌ョ綉缁滅姸鍐�
+2. 浼樺寲鍚庣鏌ヨ
+3. 澧炲姞瓒呮椂鏃堕棿 (淇敼 `UtilityHelper.cs` 涓殑瓒呮椂璁剧疆)
+
+### 12.4 鏃ュ織鐩稿叧
+
+#### 鏌ョ湅鏃ュ織
+
+**浣嶇疆**: `logs/{yyyy-MM-dd}.log`
+
+**鏃ュ織绾у埆**:
+- `[Info]` - 淇℃伅
+- `[Warning]` - 璀﹀憡
+- `[Error]` - 閿欒
+
+#### 鏃ュ織鍐欏叆澶辫触
+
+**鍘熷洜**: 鏃犲啓鏉冮檺
+
+**瑙e喅鏂规**:
+
+1. 浠ョ鐞嗗憳韬唤杩愯
+2. 淇敼 `LogPath` 涓哄叕鍏辩洰褰�
+3. 璧嬩簣搴旂敤鐩綍鍐欐潈闄�
+
+### 12.5 鏁版嵁搴撹繛鎺ラ棶棰�
+
+#### Oracle 杩炴帴澶辫触
+
+**妫�鏌�**:
+- Oracle.ManagedDataAccess.dll 鏄惁瀛樺湪
+- 杩炴帴瀛楃涓叉槸鍚︽纭�
+- 缃戠粶鏄惁鍙揪
+
+#### SQL Server 杩炴帴澶辫触
+
+**妫�鏌�**:
+- SQL Server 鏄惁鍚敤 TCP/IP
+- 绔彛鏄惁寮�鏀� (榛樿 1433)
+- 闃茬伀澧欒鍒�
+
+### 12.6 鑷姩鏇存柊闂
+
+#### 鏇存柊妫�鏌ュけ璐�
+
+**鎺掓煡**:
+
+1. 妫�鏌� `AutoUpdaterXml` URL 鏄惁鍙闂�
+2. 妫�鏌� XML 鏍煎紡鏄惁姝g‘
+3. 妫�鏌ョ綉缁滆繛鎺�
+4. 鏌ョ湅鏃ュ織鏂囦欢
+
+#### 鏇存柊涓嬭浇澶辫触
+
+**鎺掓煡**:
+
+1. 妫�鏌ユ洿鏂板寘 URL 鏄惁鏈夋晥
+2. 妫�鏌ョ鐩樼┖闂�
+3. 妫�鏌ュ啓鏉冮檺
+
+---
+
+## 闄勫綍 A: 鍚庣 API 绔偣
+
+### 璁よ瘉涓庣敤鎴�
+
+| 绔偣 | 璇存槑 |
+|------|------|
+| `User/UserLogin` | 鐢ㄦ埛鐧诲綍 |
+| `User/GetUserLoginInfo` | 鑾峰彇鐢ㄦ埛淇℃伅鍜岃彍鍗� |
+| `User/SetUserOrg` | 鍒囨崲缁勭粐 |
+
+### 缁勭粐涓庤彍鍗�
+
+| 绔偣 | 璇存槑 |
+|------|------|
+| `Organization/GetListPage` | 鑾峰彇缁勭粐鍒楄〃 |
+| `MenuAction/GetModelByNameSpace` | 鏍规嵁鍛藉悕绌洪棿鑾峰彇绐椾綋淇℃伅 |
+
+### 閫氱敤鍒楄〃鏌ヨ
+
+**妯″紡**: `{Module}/{Entity}/GetListPage`
+
+绀轰緥:
+- `BasicData/Customer/GetListPage` - 瀹㈡埛鍒楄〃
+- `BasicData/Items/GetListPage` - 鐗╂枡鍒楄〃
+- `Warehouse/Inventory/GetListPage` - 搴撳瓨鍒楄〃
+
+---
+
+## 闄勫綍 B: 蹇�熷弬鑰�
+
+### 甯哥敤鍛戒护
+
+```bash
+# 杩樺師 NuGet 鍖�
+nuget restore GsDevSolution.sln
+
+# Debug 鏋勫缓
+msbuild GsDevSolution.sln /p:Configuration=Debug
+
+# Release 鏋勫缓
+msbuild GsDevSolution.sln /p:Configuration=Release
+
+# 杩愯绋嬪簭
+Gs.DevApp\bin\Debug\Gs.DevApp.exe
+```
+
+### 甯哥敤浠g爜鐗囨
+
+```csharp
+// API 璋冪敤
+string result = UtilityHelper.HttpPost("Module/Action", "Action", jsonParam);
+dynamic dy = UtilityHelper.ReturnToDynamic(result);
+
+// 娑堟伅鎻愮ず
+MsgHelper.ShowSuccess("鎿嶄綔鎴愬姛");
+MsgHelper.ShowError("鎿嶄綔澶辫触");
+
+// 鏃ュ織璁板綍
+LogHelper.WriteLog("娑堟伅鍐呭", LogHelper.LogType.Info);
+
+// Toast 鎻愮ず
+Toast.Show("鎻愮ず鍐呭", 3);
+```
+
+---
+
+## 闄勫綍 C: 鐩稿叧鏂囨。
+
+- **CLAUDE.md** - Claude Code AI 杈呭姪寮�鍙戞寚鍗�
+- **DEVFRM_GUIDE.md** - DevFrm 妯″潡璇︾粏鎸囧崡
+- **ANALYSIS_REPORT.md** - 鏋舵瀯鍒嗘瀽鎶ュ憡
+- **DevFrm璇︾粏鍒嗘瀽.md** - 妯″潡鍒嗘瀽 (涓枃)
+
+---
+
+## 鑱旂郴涓庢敮鎸�
+
+濡傞渶鎶�鏈敮鎸佹垨鎶ュ憡闂,璇疯仈绯诲紑鍙戝洟闃熴��
+
+**鏈�鍚庢洿鏂�**: 2025-10-16
+
+---
+
+*鏈枃妗i殢椤圭洰鎸佺画鏇存柊,寤鸿瀹氭湡鏌ョ湅鏈�鏂扮増鏈��*
diff --git a/README.md b/README.md
index 2d69ce2..4ad7d41 100644
--- a/README.md
+++ b/README.md
@@ -1,4 +1,508 @@
-## LB_MesClient
+# LanBMes MES Client (G-MES V2.0)
-钃濆疂PC鍓嶇
+<div align="center">
+**钃濆疂鍒堕�犳墽琛岀郴缁� (MES) Windows 瀹㈡埛绔�**
+
+[](https://dotnet.microsoft.com/download/dotnet-framework/net48)
+[](https://www.devexpress.com/)
+[]()
+
+*涓哄埗閫犺溅闂存彁渚涘叏闈㈢殑鐢熶骇鎵ц銆佷粨鍌ㄧ鐞嗐�佽川閲忔帶鍒跺拰鎶ヨ〃鍒嗘瀽鑳藉姏*
+
+[鍔熻兘鐗规�(#鍔熻兘鐗规��) 鈥� [蹇�熷紑濮媇(#蹇�熷紑濮�) 鈥� [椤圭洰缁撴瀯](#椤圭洰缁撴瀯) 鈥� [鏂囨。](#鏂囨。) 鈥� [鎶�鏈爤](#鎶�鏈爤)
+
+</div>
+
+---
+
+## 馃搵 鐩綍
+
+- [椤圭洰绠�浠媇(#椤圭洰绠�浠�)
+- [鍔熻兘鐗规�(#鍔熻兘鐗规��)
+- [蹇�熷紑濮媇(#蹇�熷紑濮�)
+- [椤圭洰缁撴瀯](#椤圭洰缁撴瀯)
+- [鏍稿績妯″潡](#鏍稿績妯″潡)
+- [鎶�鏈爤](#鎶�鏈爤)
+- [寮�鍙戞寚鍗梋(#寮�鍙戞寚鍗�)
+- [閮ㄧ讲璇存槑](#閮ㄧ讲璇存槑)
+- [鏂囨。](#鏂囨。)
+- [甯歌闂](#甯歌闂)
+
+---
+
+## 馃幆 椤圭洰绠�浠�
+
+**LanBMes MES Client** 鏄竴娆惧熀浜� .NET Framework 4.8 鍜� DevExpress WinForms 鏋勫缓鐨勪紒涓氱骇鍒堕�犳墽琛岀郴缁�(MES)妗岄潰搴旂敤绋嬪簭銆傝绯荤粺涓哄埗閫犺溅闂存彁渚涘畬鏁寸殑鏁板瓧鍖栬В鍐虫柟妗�,娑电洊鐢熶骇璁″垝銆佸伐鍗曠鐞嗐�佺敓浜ф墽琛屻�佽川閲忔帶鍒躲�佷粨鍌ㄧ墿娴佺瓑鏍稿績涓氬姟娴佺▼銆�
+
+### 鏍稿績浼樺娍
+
+- 馃帹 **鐜颁唬鍖栫晫闈�** - 鍩轰簬 DevExpress FluentDesign 鐨勭洿瑙傜敤鎴蜂綋楠�
+- 鈿� **楂樺害闆嗘垚** - 涓庡悗绔� REST API 鏃犵紳瀵规帴,鏀寔 Oracle/SQL Server 鍙屾暟鎹簱
+- 馃敡 **鐏垫椿鎵╁睍** - 150+ 鍙鐢ㄤ笟鍔℃帶浠�,蹇�熸瀯寤烘柊鍔熻兘
+- 馃攼 **鏉冮檺绠$悊** - 鍩轰簬瑙掕壊鐨勭粏绮掑害鏉冮檺鎺у埗
+- 馃摫 **澶氱粓绔敮鎸�** - PC 妗岄潰绔� + 鎵嬫寔 PDA 绔崗鍚屼綔涓�
+- 馃彮 **宸ヤ笟闆嗘垚** - 鏀寔 Modbus TCP/RTU 璁惧閫氫俊
+
+### 閫傜敤鍦烘櫙
+
+- 鉁� 绂绘暎鍒堕�犱笟 (鐢靛瓙銆佹満姊般�佹苯杞﹂浂閮ㄤ欢绛�)
+- 鉁� 闇�瑕佺簿缁嗗寲杞﹂棿绠$悊鐨勫埗閫犱紒涓�
+- 鉁� 澶氬伐搴忔祦绋嬬鐞嗕笌璐ㄩ噺杩芥函
+- 鉁� 浠撳偍鐗╂祦涓庢潯鐮佺鐞�
+- 鉁� 鐢熶骇鏁版嵁閲囬泦涓庡疄鏃剁洃鎺�
+
+---
+
+## 鉁� 鍔熻兘鐗规��
+
+### 馃彮 鐢熶骇绠$悊
+
+- **宸ュ崟绠$悊** - 鐢熶骇浠诲姟涓嬭揪銆佹帓浜ц皟鏁淬�佽繘搴﹁拷韪�
+- **鐢熶骇鎵ц** - 宸ュ簭寮�宸ャ�佹暟鎹噰闆嗐�佹祦绋嬪崱绠$悊
+- **杩斿伐缁翠慨** - 涓嶈壇鍝佽繑宸ユ祦绋嬩笌缁翠慨璁板綍
+
+### 馃摝 浠撳偍鐗╂祦
+
+- **鍑哄簱绠$悊** - 鐢熶骇棰嗘枡銆佽ˉ鏂欍�侀��璐с�佸叾浠栧嚭搴�
+- **鍏ュ簱绠$悊** - 鍒拌揣鍏ュ簱銆侀��搴撱�佹潅椤瑰叆搴�
+- **搴撳瓨鎿嶄綔** - 璋冩嫧銆佺洏鐐广�佹潯鐮佺敓鎴愪笌鎵撳嵃
+- **PDA 浣滀笟** - 鎵嬫寔缁堢鎵爜鐞嗚揣涓庣Щ鍔ㄤ綔涓�
+
+### 鉁� 璐ㄩ噺绠$悊
+
+- **IPQC 鍒剁▼妫�楠�** - 棣栦欢妫�楠屻�佸贰妫�浣滀笟
+- **FQC 鎴愬搧缁堟** - 鎴愬搧璐ㄩ噺妫�楠屼笌寮傚父澶勭悊
+- **IQC 鏉ユ枡璐ㄦ** - 鏉ユ枡鎶芥銆丄QL 鎶芥牱鏂规
+- **缂洪櫡杩借釜** - 缂洪櫡浠g爜銆佹楠岄」鐩�佽川閲忔爣鍑嗙淮鎶�
+
+### 馃搳 鍩虹鏁版嵁
+
+- **涓绘暟鎹鐞�** - 瀹㈡埛銆佷緵搴斿晢銆佺墿鏂欍�佷骇绾裤�佸憳宸ャ�侀儴闂�
+- **宸ヨ璁惧** - 澶瑰叿宸ヨ鍙拌处銆佽閲忚澶囥�佺偣妫�浠诲姟
+- **鏉$爜绠$悊** - 鏉$爜鎵归噺鐢熸垚銆佹墦鍗版ā鏉胯缃�
+
+### 馃搱 鎶ヨ〃鍒嗘瀽
+
+- **鎶ヨ〃璁捐** - FastReport/DevExpress 鍙鍖栨姤琛ㄨ璁″櫒
+- **鑷畾涔夋姤琛�** - 鐏垫椿鐨勬暟鎹簮閰嶇疆涓庢姤琛ㄥ紩鎿�
+
+### 鈿欙笍 绯荤粺绠$悊
+
+- **鐢ㄦ埛鏉冮檺** - 鐢ㄦ埛銆佽鑹层�佽彍鍗曟潈闄愩�佹搷浣滄潈闄�
+- **绯荤粺閰嶇疆** - 鑿滃崟缁撴瀯銆佺粍缁囨灦鏋勩�佸崟鍙疯鍒欍�佺郴缁熸棩蹇�
+
+---
+
+## 馃殌 蹇�熷紑濮�
+
+### 鍓嶇疆瑕佹眰
+
+纭繚鎮ㄧ殑寮�鍙戠幆澧冩弧瓒充互涓嬭姹�:
+
+- 鉁� **鎿嶄綔绯荤粺**: Windows 10/11 鎴� Windows Server 2016+
+- 鉁� **寮�鍙戝伐鍏�**: Visual Studio 2022 (鎺ㄨ崘) 鎴� Visual Studio 2019
+- 鉁� **.NET Framework**: 4.8 SDK
+- 鉁� **DevExpress**: v22.2+ 璁稿彲璇�
+- 鉁� **鐗堟湰鎺у埗**: Git
+
+### 鍏嬮殕浠撳簱
+
+```bash
+git clone <repository_url>
+cd LB_MesClient/DevApp
+```
+
+### 杩樺師渚濊禆
+
+```bash
+# 浣跨敤 NuGet 杩樺師鍖�
+nuget restore GsDevSolution.sln
+
+# 鎴栧湪 Visual Studio 涓�:
+# 鍙抽敭瑙e喅鏂规 鈫� 杩樺師 NuGet 绋嬪簭鍖�
+```
+
+### 閰嶇疆鍚庣 API
+
+缂栬緫 `Gs.DevApp\App.config`,淇敼鍚庣 API 鍦板潃:
+
+```xml
+<add key="WebApiUrl" value="http://your-api-server:port/" />
+```
+
+### 鏋勫缓涓庤繍琛�
+
+```bash
+# 鍛戒护琛屾瀯寤�
+msbuild GsDevSolution.sln /p:Configuration=Debug /p:Platform="Any CPU"
+
+# 杩愯绋嬪簭
+Gs.DevApp\bin\Debug\Gs.DevApp.exe
+```
+
+**鎴栬�呭湪 Visual Studio 涓�**:
+
+1. 鎵撳紑 `GsDevSolution.sln`
+2. 璁剧疆 `Gs.DevApp` 涓哄惎鍔ㄩ」鐩�
+3. 鎸� `F5` 寮�濮嬭皟璇�
+
+---
+
+## 馃搧 椤圭洰缁撴瀯
+
+```
+GsDevSolution/
+鈹�
+鈹溾攢鈹� Gs.DevApp/ # 涓诲鎴风搴旂敤绋嬪簭
+鈹� 鈹溾攢鈹� DevFrm/ # 涓氬姟绐椾綋 (18涓鍩熸ā鍧�)
+鈹� 鈹� 鈹溾攢鈹� BasicData/ # 鍩虹鏁版嵁 (瀹㈡埛/渚涘簲鍟�/鐗╂枡/浜х嚎)
+鈹� 鈹� 鈹溾攢鈹� Work/ # 鐢熶骇鎵ц (寮�宸�/鏁版嵁閲囬泦/杩斿伐)
+鈹� 鈹� 鈹溾攢鈹� WOM/ # 宸ュ崟绠$悊 (浠诲姟涓嬭揪/鎺掍骇)
+鈹� 鈹� 鈹溾攢鈹� QC/ # 璐ㄩ噺绠$悊閫氱敤妯″潡
+鈹� 鈹� 鈹溾攢鈹� IPQC/ # 鍒剁▼妫�楠� (棣栦欢/宸℃)
+鈹� 鈹� 鈹溾攢鈹� FQC/ # 鎴愬搧缁堟
+鈹� 鈹� 鈹溾攢鈹� RkQC/ # 鏉ユ枡璐ㄦ
+鈹� 鈹� 鈹溾攢鈹� Ck/ # 鍑哄簱绠$悊
+鈹� 鈹� 鈹溾攢鈹� Rk/ # 鍏ュ簱绠$悊
+鈹� 鈹� 鈹溾攢鈹� Warehouse/ # 浠撳簱鎿嶄綔
+鈹� 鈹� 鈹溾攢鈹� Sales/ # 閿�鍞鍗�
+鈹� 鈹� 鈹溾攢鈹� WW/ # 濮斿绠$悊
+鈹� 鈹� 鈹溾攢鈹� Rpt/ # 鎶ヨ〃璁捐
+鈹� 鈹� 鈹溾攢鈹� Sys/ # 绯荤粺璁剧疆
+鈹� 鈹� 鈹溾攢鈹� User/ # 鐢ㄦ埛鏉冮檺
+鈹� 鈹� 鈹溾攢鈹� JJGZ/ # 澶瑰叿宸ヨ
+鈹� 鈹� 鈹溾攢鈹� BarCode/ # 鏉$爜绠$悊
+鈹� 鈹� 鈹斺攢鈹� PDA/ # 鎵嬫寔缁堢
+鈹� 鈹溾攢鈹� Entity/ # 鏁版嵁浼犺緭瀵硅薄 (DTO)
+鈹� 鈹溾攢鈹� ToolBox/ # 鍏叡宸ュ叿绫诲簱
+鈹� 鈹� 鈹溾攢鈹� UtilityHelper.cs # HTTP璇锋眰銆丣SON瑙f瀽銆丟rid鍒濆鍖�
+鈹� 鈹� 鈹溾攢鈹� LogHelper.cs # 鏃ュ織璁板綍
+鈹� 鈹� 鈹溾攢鈹� MsgHelper.cs # 娑堟伅鎻愮ず
+鈹� 鈹� 鈹斺攢鈹� ModbusHelper.cs # Modbus閫氫俊
+鈹� 鈹溾攢鈹� UserControl/ # 鍙鐢ㄦ帶浠跺簱 (150+)
+鈹� 鈹� 鈹溾攢鈹� UcToolBarMenu.cs # CRUD宸ュ叿鏍�
+鈹� 鈹� 鈹溾攢鈹� UcPageBar.cs # 鍒嗛〉鎺т欢
+鈹� 鈹� 鈹溾攢鈹� UcLook*.cs # 60+ 鏁版嵁鏌ユ壘鎺т欢
+鈹� 鈹� 鈹斺攢鈹� Toast.cs # Toast鎻愮ず
+鈹� 鈹溾攢鈹� Resources/ # 璧勬簮鏂囦欢
+鈹� 鈹溾攢鈹� App.config # 搴旂敤閰嶇疆
+鈹� 鈹斺攢鈹� Program.cs # 搴旂敤鍏ュ彛
+鈹�
+鈹溾攢鈹� Gs.WeightIqc/ # IQC 鏉ユ枡绉伴噸瀹㈡埛绔�
+鈹溾攢鈹� Gs.WeightLine/ # 浜х嚎绉伴噸瀹㈡埛绔�
+鈹溾攢鈹� Gs.Setup/ # 瀹夎绋嬪簭椤圭洰 (.vdproj)
+鈹斺攢鈹� packages/ # NuGet 鍖呯紦瀛�
+
+鎬昏:
+- 150+ 涓氬姟绐椾綋
+- 150+ 鍙鐢ㄦ帶浠�
+- 18 涓笟鍔¢鍩熸ā鍧�
+```
+
+---
+
+## 馃З 鏍稿績妯″潡
+
+### 1锔忊儯 鍩虹鏁版嵁绠$悊 (BasicData)
+
+缁存姢绯荤粺杩愯鎵�闇�鐨勪富鏁版嵁,鍖呮嫭瀹㈡埛銆佷緵搴斿晢銆佺墿鏂欍�佷骇绾裤�佸憳宸ャ�侀儴闂ㄧ瓑鏍稿績鍩虹鏁版嵁銆�
+
+**鍏抽敭绐椾綋**: `Frm_Customer`, `Frm_Supplier`, `Frm_MesItems`, `Frm_MesWorkshopLine`
+
+### 2锔忊儯 鐢熶骇鎵ц (Work)
+
+鏀寔宸ュ簭寮�宸ャ�佹暟鎹噰闆嗐�佹祦绋嬪崱绠$悊銆佽繑宸ョ淮淇瓑鐢熶骇鐜板満浣滀笟銆傛敮鎸� Modbus 璁惧瀹炴椂鏁版嵁閲囬泦銆�
+
+**鍏抽敭绐椾綋**: `Frm_WorkStart`, `Frm_WorkProcesses`, `Frm_Work01~09`, `Frm_Repair`
+
+### 3锔忊儯 璐ㄩ噺绠$悊 (QC/IPQC/FQC/RkQC)
+
+鎻愪緵澶氱骇璐ㄩ噺妫�楠屼綋绯�,鍖呮嫭鍒剁▼妫�楠� (IPQC)銆佹垚鍝佺粓妫� (FQC)銆佹潵鏂欒川妫� (IQC/RkQC),鏀寔 AQL 鎶芥牱鏂规涓庣己闄疯拷韪��
+
+**鍏抽敭绐椾綋**: `Frm_ShouJian`, `Frm_XunJian`, `Frm_Fqc`, `Frm_Cqfa`
+
+### 4锔忊儯 浠撳偍绠$悊 (Ck/Rk/Warehouse)
+
+瑕嗙洊鍑哄叆搴撳叏娴佺▼,鏀寔鐢熶骇棰嗘枡銆佽ˉ鏂欍�佸埌璐у叆搴撱�侀��搴撱�佽皟鎷ㄣ�佺洏鐐圭瓑鎿嶄綔,闆嗘垚鏉$爜绠$悊銆�
+
+**鍏抽敭绐椾綋**: `Frm_MesInvItemOut_SCLL`, `Frm_MesInvItemArn`, `Frm_MesDbck`, `Frm_ArrivalBarcode`
+
+### 5锔忊儯 宸ュ崟绠$悊 (WOM)
+
+鐢熶骇浠诲姟涓嬭揪銆佸伐鍗曟帓浜с�佽繘搴﹁拷韪�佸伐鍗曠姸鎬佺鐞嗐��
+
+### 6锔忊儯 鎶ヨ〃涓績 (Rpt)
+
+鏀寔 FastReport 鍜� DevExpress 鎶ヨ〃,鎻愪緵鍙鍖栨姤琛ㄨ璁″櫒涓庤嚜瀹氫箟鎶ヨ〃寮曟搸銆�
+
+**鍏抽敭绐椾綋**: `EasyRptDesign`, `EasyRptEdt`
+
+---
+
+## 馃敡 鎶�鏈爤
+
+### 鏍稿績妗嗘灦涓庡簱
+
+| 鎶�鏈� | 鐗堟湰 | 鐢ㄩ�� |
+|------|------|------|
+| **.NET Framework** | 4.8 | 搴旂敤鍩虹妗嗘灦 |
+| **C# WinForms** | - | 妗岄潰搴旂敤寮�鍙� |
+| **DevExpress** | v22.2.3 | UI缁勪欢搴� (FluentDesign, XtraGrid, XtraTab, XtraBars) |
+
+### 绗笁鏂圭粍浠�
+
+| 缁勪欢 | 鐗堟湰 | 鐢ㄩ�� |
+|------|------|------|
+| **CefSharp** | 109.1.110 | 宓屽叆寮� Chromium 娴忚鍣� |
+| **AutoUpdater.NET** | 1.9.2 | 鑷姩杞欢鏇存柊 |
+| **NModbus** | 3.0.81 | 宸ヤ笟璁惧閫氫俊 (Modbus TCP/RTU) |
+| **Newtonsoft.Json** | 13.0.3 | JSON 搴忓垪鍖� |
+| **System.Text.Json** | 8.0.4 | 鐜颁唬 JSON 鏀寔 |
+| **Oracle.ManagedDataAccess** | 鏈�鏂� | Oracle 鏁版嵁搴撹闂� |
+| **System.Data.SqlClient** | 鏈�鏂� | SQL Server 鏁版嵁搴撹闂� |
+
+### 鏋舵瀯妯″紡
+
+```
+鈹屸攢鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�
+鈹� UI Layer (DevExpress WinForms) 鈹� 鈫� 鐢ㄦ埛浜や簰灞�
+鈹溾攢鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�
+鈹� Business Logic (ToolBox + Forms) 鈹� 鈫� 涓氬姟閫昏緫灞�
+鈹溾攢鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�
+鈹� REST API (HTTP/JSON) 鈹� 鈫� 閫氫俊灞�
+鈹溾攢鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�
+鈹� Backend API Server 鈹� 鈫� 鏈嶅姟绔� (鍒椤圭洰)
+鈹溾攢鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�
+鈹� Data Layer (Oracle/SQL Server) 鈹� 鈫� 鏁版嵁鎸佷箙鍖栧眰
+鈹斺攢鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�鈹�
+```
+
+---
+
+## 馃摎 寮�鍙戞寚鍗�
+
+### 鏍稿績璁捐妯″紡
+
+#### 1. HTTP 璇锋眰闆嗕腑鍖�
+
+鎵�鏈� API 璋冪敤缁熶竴浣跨敤 `UtilityHelper.HttpPost()`:
+
+```csharp
+string result = UtilityHelper.HttpPost(
+ "BasicData/Customer/GetListPage", // API璺緞
+ "GetListPage", // 鏂规硶鍚�
+ jsonParam, // JSON鍙傛暟
+ true // 鏄剧ず鍔犺浇妗�
+);
+
+dynamic dy = UtilityHelper.ReturnToDynamic(result);
+if (dy.code == 200) {
+ // 澶勭悊鏁版嵁
+}
+```
+
+#### 2. 鍔ㄦ�佺獥浣撳姞杞� (鍙嶅皠)
+
+閫氳繃鍙嶅皠瀹炵幇鑿滃崟椹卞姩鐨勭獥浣撳姩鎬佸姞杞�:
+
+```csharp
+Form form = (Form)Assembly.GetExecutingAssembly()
+ .CreateInstance("Gs.DevApp.DevFrm.BasicData.Frm_Customer");
+```
+
+**浼樺娍**: 鑿滃崟缁撴瀯瀹屽叏鐢卞悗绔帶鍒�,鏃犻渶淇敼浠g爜鍗冲彲璋冩暣鑿滃崟銆�
+
+#### 3. 鍙鐢ㄦ帶浠朵紭鍏�
+
+椤圭洰鎻愪緵 150+ 鍙鐢ㄦ帶浠�,鏂板姛鑳藉紑鍙戝簲浼樺厛浣跨敤:
+
+```csharp
+// 浣跨敤鏍囧噯 CRUD 宸ュ叿鏍�
+UcToolBarMenu toolBar = new UcToolBarMenu();
+toolBar.AddClick += BtnAdd_Click;
+
+// 浣跨敤鍒嗛〉鎺т欢
+UcPageBar pageBar = new UcPageBar();
+pageBar.PageChanged += LoadData;
+
+// 浣跨敤鏁版嵁鏌ユ壘鎺т欢
+UcLookCustomer lookCustomer = new UcLookCustomer();
+lookCustomer.ShowDialog();
+```
+
+### 寮�鍙戣鑼�
+
+#### 鍛藉悕瑙勮寖
+
+| 绫诲瀷 | 瑙勫垯 | 绀轰緥 |
+|------|------|------|
+| 涓荤獥浣� | `Frm_{涓氬姟鍚峿` | `Frm_Customer.cs` |
+| 缂栬緫绐椾綋 | `Frm_{涓氬姟鍚峿Edit` | `Frm_CustomerEdit.cs` |
+| 瀵硅瘽妗� | `Dlg_{涓氬姟鍚峿` | `Dlg_SelectCustomer.cs` |
+| 鐢ㄦ埛鎺т欢 | `Uc{鍔熻兘鍚峿` | `UcToolBarMenu.cs` |
+
+#### 寮傚父澶勭悊瑙勮寖
+
+```csharp
+try {
+ string result = UtilityHelper.HttpPost(...);
+ dynamic dy = UtilityHelper.ReturnToDynamic(result);
+
+ if (dy.code == 200) {
+ // 鎴愬姛澶勭悊
+ } else {
+ MsgHelper.ShowError(dy.msg.ToString());
+ LogHelper.WriteLog($"API Error: {dy.msg}", LogHelper.LogType.Error);
+ }
+} catch (Exception ex) {
+ MsgHelper.ShowError($"鎿嶄綔澶辫触: {ex.Message}");
+ LogHelper.WriteLog($"Exception: {ex}", LogHelper.LogType.Error);
+}
+```
+
+#### 鏃ュ織璁板綍瑙勮寖
+
+```csharp
+// 鍏抽敭鎿嶄綔鍓嶅悗璁板綍鏃ュ織
+LogHelper.WriteLog($"寮�濮嬩繚瀛樺鎴锋暟鎹�: {customerId}", LogHelper.LogType.Info);
+
+// 鏃ュ織浣嶇疆: logs/{yyyy-MM-dd}.log
+```
+
+### 娣诲姞鏂版ā鍧�
+
+1. 鍦� `DevFrm/` 涓嬪垱寤烘柊鐩綍
+2. 鍒涘缓涓荤獥浣� (缁ф壙 `XtraForm`)
+3. 浣跨敤 `UtilityHelper.HttpPost()` 璋冪敤 API
+4. 澶嶇敤 `UserControl/` 涓殑鎺т欢
+5. 鍦ㄥ悗绔坊鍔犲搴旇彍鍗曢」
+
+---
+
+## 馃殺 閮ㄧ讲璇存槑
+
+### 鏋勫缓 Release 鐗堟湰
+
+```bash
+# 娓呯悊骞堕噸鏂版瀯寤�
+msbuild Gs.DevApp\Gs.DevApp.csproj /t:Clean
+msbuild Gs.DevApp\Gs.DevApp.csproj /t:Rebuild /p:Configuration=Release /p:Platform="Any CPU"
+```
+
+### 閰嶇疆娓呭崟
+
+閮ㄧ讲鍓嶉渶淇敼 `Gs.DevApp.exe.config`:
+
+- 鉁� 淇敼 `WebApiUrl` 涓虹敓浜х幆澧� API 鍦板潃
+- 鉁� 閰嶇疆 `IsAutoUpdater` 鍜� `AutoUpdaterXml`
+- 鉁� 纭繚 `x86/` 鍜� `x64/` 鐩綍瀹屾暣 (CefSharp 渚濊禆)
+
+### 浣跨敤瀹夎绋嬪簭
+
+1. 鎵撳紑 `Gs.Setup\Gs.Setup.vdproj`
+2. 閰嶇疆鐗堟湰鍙峰拰浜у搧淇℃伅
+3. 鐢熸垚 MSI 瀹夎鍖�
+4. 杈撳嚭: `Gs.Setup\Release\Gs.Setup.msi`
+
+### 鑷姩鏇存柊
+
+缂栬緫 `AutoUpdater.xml`:
+
+```xml
+<?xml version="1.0" encoding="utf-8"?>
+<update>
+ <version>0.2.0.0</version>
+ <url>http://your-server/updates/Gs.DevApp_v0.2.0.0.zip</url>
+ <changelog><![CDATA[<h3>鏇存柊鍐呭</h3>...]]></changelog>
+ <mandatory>false</mandatory>
+</update>
+```
+
+---
+
+## 馃摉 鏂囨。
+
+### 瀹屾暣鏂囨。
+
+- 馃摌 **[HELP.md](HELP.md)** - 瀹屾暣鐨勯」鐩府鍔╂寚鍗� (涓枃,1400+ 琛�)
+- 馃摋 **[CLAUDE.md](CLAUDE.md)** - Claude Code AI 杈呭姪寮�鍙戞寚鍗�
+- 馃摍 **[DEVFRM_GUIDE.md](DEVFRM_GUIDE.md)** - DevFrm 妯″潡璇︾粏鎸囧崡 (濡傚瓨鍦�)
+- 馃摃 **[ANALYSIS_REPORT.md](ANALYSIS_REPORT.md)** - 鏋舵瀯鍒嗘瀽鎶ュ憡 (濡傚瓨鍦�)
+
+### 蹇�熼摼鎺�
+
+- [椤圭洰姒傝](HELP.md#1-椤圭洰姒傝)
+- [鏋勫缓涓庤繍琛宂(HELP.md#5-鏋勫缓涓庤繍琛�)
+- [鍔熻兘妯″潡璇﹁В](HELP.md#6-devfrm-鍔熻兘妯″潡璇﹁В)
+- [鏋舵瀯涓庤璁℃ā寮廬(HELP.md#7-鏋舵瀯涓庤璁℃ā寮�)
+- [閰嶇疆璇存槑](HELP.md#9-閰嶇疆璇存槑)
+- [寮�鍙戣鑼僝(HELP.md#11-寮�鍙戣鑼冧笌鏈�浣冲疄璺�)
+- [甯歌闂](HELP.md#12-甯歌闂涓庢晠闅滄帓鏌�)
+
+---
+
+## 鉂� 甯歌闂
+
+### Q: DevExpress 缁勪欢鎵句笉鍒�?
+
+**A**: 纭繚宸插畨瑁� DevExpress v22.2 骞堕厤缃� NuGet 婧�:
+
+```
+宸ュ叿 鈫� NuGet 鍖呯鐞嗗櫒 鈫� 绋嬪簭鍖呯鐞嗗櫒璁剧疆 鈫� 绋嬪簭鍖呮簮
+娣诲姞: https://nuget.devexpress.com/<your_feed_key>/api
+```
+
+### Q: CefSharp 鍔犺浇澶辫触?
+
+**A**: 纭繚杈撳嚭鐩綍鍖呭惈 `x86/` 鍜� `x64/` 瀛愮洰褰曞強鍏跺唴瀹广��
+
+### Q: 鏃犳硶杩炴帴鍒� API 鏈嶅姟鍣�?
+
+**A**: 妫�鏌� `App.config` 涓殑 `WebApiUrl` 閰嶇疆,纭繚鍚庣 API 鏈嶅姟姝e父杩愯銆�
+
+### Q: 濡備綍璋冭瘯澶氫釜瀹炰緥?
+
+**A**: 鍦� `Program.cs` 涓敞閲婂崟瀹炰緥妫�鏌ヤ唬鐮�:
+
+```csharp
+// Process[] MyProcesses = Process.GetProcessesByName("Gs.DevApp");
+// if (MyProcesses.Length > 1) { MyProcesses[0].Kill(); }
+```
+
+### Q: 鏃ュ織鏂囦欢鍦ㄥ摢閲�?
+
+**A**: 鏃ュ織浣嶇疆: `logs/{yyyy-MM-dd}.log` (搴旂敤绋嬪簭鐩綍涓�)
+
+---
+
+## 馃摐 璁稿彲璇�
+
+鏈」鐩负涓撴湁杞欢,鏈粡鎺堟潈涓嶅緱澶嶅埗銆佸垎鍙戞垨淇敼銆�
+
+---
+
+## 馃 璐$尞涓庢敮鎸�
+
+濡傞渶鎶�鏈敮鎸佹垨鎶ュ憡闂,璇疯仈绯诲紑鍙戝洟闃熴��
+
+---
+
+## 馃搳 椤圭洰缁熻
+
+- **鎬讳唬鐮佽鏁�**: 绾� 100,000+ 琛�
+- **涓氬姟绐椾綋**: 150+ 涓�
+- **鍙鐢ㄦ帶浠�**: 150+ 涓�
+- **涓氬姟棰嗗煙**: 18 涓ā鍧�
+- **鏀寔鏁版嵁搴�**: Oracle + SQL Server
+- **寮�鍙戝懆鏈�**: 鎸佺画杩唬涓�
+
+---
+
+<div align="center">
+
+**G-MES V2.0** - 鏅鸿兘鍒堕��,鏁板瓧鏈潵
+
+*鏈�鍚庢洿鏂�: 2025-10-16*
+
+</div>
--
Gitblit v1.9.3