From ed544586dddf01d0fcaedb0db411f243da98b1fe Mon Sep 17 00:00:00 2001 From: Junjie <fallin.jie@qq.com> Date: 星期三, 25 二月 2026 12:40:47 +0800 Subject: [PATCH] # --- skills/zy-wcs-pixijs-frontend/agents/openai.yaml | 4 + skills/zy-wcs-dev/SKILL.md | 115 ++++++++++++++++++++++++++++ skills/zy-wcs-dev/agents/openai.yaml | 4 + skills/zy-wcs-pixijs-frontend/SKILL.md | 101 +++++++++++++++++++++++++ 4 files changed, 224 insertions(+), 0 deletions(-) diff --git a/skills/zy-wcs-dev/SKILL.md b/skills/zy-wcs-dev/SKILL.md new file mode 100644 index 0000000..dc2e0b4 --- /dev/null +++ b/skills/zy-wcs-dev/SKILL.md @@ -0,0 +1,115 @@ +--- +name: zy-wcs-dev +description: 缁存姢鍜屽紑鍙� WCS锛圫pring Boot + MyBatis-Plus + Layui/Vue锛夐」鐩殑鎵ц鍨嬫妧鑳姐�傚鐞嗗悗绔帴鍙�/鏈嶅姟/Mapper 涓� XML 鑱斿姩淇敼銆佽澶囩嚎绋嬩笌璋冨害閫昏緫鎺掓煡銆佸墠绔〉闈笌闈欐�� JS 鏀瑰姩銆佷互鍙婃湰鍦版瀯寤轰笌鍥炲綊楠岃瘉銆傜敤鎴锋彁鍒� WCS銆乣com/zy` 鍖呯粨鏋勩�乣application.yml`銆乣mapper/*.xml`銆乣src/main/webapp/views`銆佽澶囨帶鍒剁嚎绋嬶紙Crn/Rgv/Station/DualCrn锛夋垨瑕佹眰鈥滄寜褰撳墠椤圭洰鏂瑰紡鏀逛唬鐮�/鎺掓煡闂鈥濇椂浣跨敤銆� +--- + +# zy-wcs-dev + +## Overview + +鍦ㄨ浠撳簱鍐呮墽琛屾敼鍔ㄦ椂锛屼紭鍏堟渶灏忓彉鏇淬�佸揩閫熼獙璇併�佹槑纭奖鍝嶈寖鍥淬�傚缁堟妸 Java 浠g爜銆丮yBatis XML銆佸墠绔〉闈笌瀵瑰簲闈欐�佽剼鏈涓轰竴涓仈鍔ㄥ崟鍏冦�� + +## Project Quick Map + +- 鍚庣鍏ュ彛锛歚src/main/java/com/zy/Boot.java` +- 鏍稿績鍒嗗眰锛� + - `core`锛氳澶囩紪鎺掋�佽繛鎺ラ┍鍔ㄣ�佺嚎绋嬩笌鍗忚 + - `asrs`锛氫笟鍔″煙銆佷换鍔¤皟搴︺�佹帴鍙f帶鍒跺櫒 + - `system`锛氱敤鎴锋潈闄愩�佹棩蹇椼�佺郴缁熼厤缃� + - `common`锛氬叕鍏� web 涓庡伐鍏风被 +- 鎸佷箙灞傦細 + - Java Mapper锛歚src/main/java/com/zy/**/mapper/*Mapper.java` + - SQL XML锛歚src/main/resources/mapper/*.xml` +- 鍓嶇锛� + - 椤甸潰锛歚src/main/webapp/views/**` + - 鑴氭湰锛歚src/main/webapp/static/js/**` + - 鏍峰紡锛歚src/main/webapp/static/css/**` +- 閰嶇疆锛歚src/main/resources/application.yml` +- 鏋勫缓浜х墿锛歚target/wcs.war` + +## Workflow + +### 1. Confirm Scope + +- 鏄庣‘鏀瑰姩灞炰簬鍝竴灞傦細鍚庣鎺ュ彛銆佷笟鍔℃湇鍔°�佽澶囩嚎绋嬨�佹暟鎹簱鏄犲皠銆佸墠绔〉闈€�� +- 鏄庣‘鏄惁娑夊強鑱斿姩鏂囦欢锛歚Controller -> Service -> Mapper.java -> Mapper.xml -> view/js`銆� +- 鏄庣‘鏄惁闇�瑕佸吋瀹圭幇鏈変笂涓嬫枃璺緞锛歚/@pom.build.finalName@`锛堝疄闄呬负 `/wcs`锛夈�� + +### 2. Locate Code Precisely + +- 鐢� `rg` 蹇�熷畾浣嶏紝閬垮厤鐩茬洰鍏ㄩ噺闃呰锛� +```bash +rg -n "鍏抽敭瀛�" src/main/java src/main/resources src/main/webapp +rg --files src/main/java/com/zy | rg "Controller|Service|Mapper" +``` +- 浼樺厛璇诲彇涓庢敼鍔ㄧ洿鎺ョ浉鍏崇殑鏈�灏忔枃浠堕泦锛屽啀鎵╁睍涓婁笅娓镐緷璧栥�� + +### 3. Implement Minimal Safe Change + +#### 鍚庣鏀瑰姩 + +- 鎺у埗鍣ㄤ粎鍋氬弬鏁颁笌鍝嶅簲缁勭粐锛屾牳蹇冮�昏緫鏀惧湪 `Service`/`ServiceImpl`銆� +- 淇敼瀹炰綋/瀛楁鏃跺悓姝ユ鏌ワ細 + - 瀹炰綋绫� + - Mapper 鎺ュ彛 + - 瀵瑰簲 XML锛坄resultMap`銆乣select/insert/update`锛� +- 璁惧鐩稿叧閫昏緫鏀瑰姩鏃讹紝浼樺厛妫�鏌ワ細 + - `core/thread/**` + - `core/network/**` + - `core/task/**` + - `asrs/task/**` + +#### 鍓嶇鏀瑰姩 + +- 椤甸潰閫氬父鍦� `views/<feature>/`锛屽叾閫昏緫閫氬父鍦� `static/js/<feature>/`銆� +- 鏀瑰姩椤甸潰瀛楁鏃跺悓姝ユ鏌ュ悗绔帴鍙e瓧娈靛悕涓� JSON 缁撴瀯銆� +- 淇濇寔褰撳墠 Layui/Vue 浠g爜椋庢牸锛屼笉寮曞叆閲嶅瀷鏂版鏋躲�� + +### 4. Validate Locally + +鎸夋垚鏈粠浣庡埌楂樻墽琛岋細 + +1. 缂栬瘧鏍¢獙锛� +```bash +mvn -q -DskipTests compile +``` +2. 鍗曟祴锛堣嫢鏈夛級锛� +```bash +mvn test +``` +3. 鎵撳寘锛� +```bash +mvn clean package -DskipTests +``` +4. 鏈湴鍚姩楠岃瘉锛� +```bash +mvn spring-boot:run +``` + +鍚姩鍚庨噸鐐规鏌ワ細 +- 绔彛鏄惁涓� `9090` +- 涓婁笅鏂囪矾寰勬槸鍚︿负 `/wcs` +- 鏃ュ織鐩綍鏄惁鍙啓锛歚./stock/out/wcs/logs` + +### 5. High-Risk Checklist + +- 涓嶆彁浜ょ湡瀹炲瘑閽�/瀵嗙爜銆俙application.yml` 鍑虹幇鏁忔劅鍊兼椂锛岃緭鍑轰腑浣跨敤鑴辨晱鍗犱綅銆� +- 淇敼 Mapper XML 鍚庯紝纭 SQL 瀛楁涓庡疄浣撳瓧娈垫槧灏勪竴鑷达紝閬垮厤杩愯鏃剁┖瀛楁鎴栫被鍨嬮敊璇�� +- 淇敼璋冨害鍣ㄦ垨绾跨▼閫昏緫鏃讹紝纭涓嶅瓨鍦ㄦ槑鏄鹃樆濉炪�佹寰幆鎴栧叡浜姸鎬佺珵浜夈�� +- 淇敼 API 鏃讹紝纭鍓嶇璋冪敤璺緞鍖呭惈涓婁笅鏂囪矾寰勫墠缂�锛坄/wcs`锛夈�� + +## Response Template + +鎵ц浠诲姟鍚庯紝鎸変互涓嬬粨鏋勭粰鍑虹粨鏋滐細 + +1. 鍏堢粰缁撹锛氬畬鎴愪簡浠�涔堛�佸奖鍝嶅摢浜涙ā鍧椼�� +2. 鍒楀嚭淇敼鏂囦欢娓呭崟銆� +3. 璇存槑楠岃瘉鍛戒护涓庣粨鏋滐紙鎴愬姛/澶辫触鍙婂師鍥狅級銆� +4. 鑻ユ湁鏈畬鎴愰」锛屾槑纭樆濉炵偣鍜屼笅涓�姝ャ�� + +## Do and Don't + +- Do锛氫紭鍏堟渶灏忔敼鍔ㄣ�佸彲鍥炴粴銆佸彲楠岃瘉銆� +- Do锛氭柊澧為�昏緫鏃朵繚鎸佸懡鍚嶅拰鍖呯粨鏋勪竴鑷达紙Controller/Service/Mapper锛夈�� +- Don't锛氭湭缁忚姹備笉鏀瑰姩鏃犲叧鏂囦欢鎴栬繘琛屽ぇ瑙勬ā閲嶆瀯銆� +- Don't锛氭湭缁忕‘璁や笉鍒犻櫎鎴栨浛鎹㈢幇鏈夎澶囩紪鎺掍富娴佺▼銆� diff --git a/skills/zy-wcs-dev/agents/openai.yaml b/skills/zy-wcs-dev/agents/openai.yaml new file mode 100644 index 0000000..116e73f --- /dev/null +++ b/skills/zy-wcs-dev/agents/openai.yaml @@ -0,0 +1,4 @@ +interface: + display_name: "ZY WCS Dev" + short_description: "Develop and debug the zy-wcs Java project" + default_prompt: "Use this skill to implement or troubleshoot backend/frontend changes in the zy-wcs project, including controller/service/mapper/xml linkage and local Maven verification." diff --git a/skills/zy-wcs-pixijs-frontend/SKILL.md b/skills/zy-wcs-pixijs-frontend/SKILL.md new file mode 100644 index 0000000..a07d7c6 --- /dev/null +++ b/skills/zy-wcs-pixijs-frontend/SKILL.md @@ -0,0 +1,101 @@ +--- +name: zy-wcs-pixijs-frontend +description: 鍦� zy-wcs 椤圭洰涓繘琛� PixiJS 鍓嶇鍦板浘涓庤澶囧彲瑙嗗寲寮�鍙�/鎺掗殰鐨勬墽琛屾妧鑳姐�傜敤浜庝慨鏀� `src/main/webapp/components/MapCanvas.js`銆乣views/watch/console.html`銆乣views/watch/console_pixijs.html`銆乣views/locMap/locMap.html` 绛夋枃浠讹紝澶勭悊鍦板浘娓叉煋銆佹嫋鎷界缉鏀俱�佹棆杞暅鍍忋�乄ebSocket 瀹炴椂鏁版嵁缁戝畾锛坈rn/dualcrn/rgv/station锛夈�佷氦浜掗珮浜笌鎬ц兘浼樺寲銆傜敤鎴锋彁鍒扳�淧ixiJS 鍦板浘鈥濃�滄帶鍒跺彴鍦板浘鍗¢】鈥濃�滆澶囩偣浣嶆樉绀洪敊璇�濃�渨atch 椤甸潰鍓嶇鏀瑰姩鈥濇椂浣跨敤銆� +--- + +# zy-wcs-pixijs-frontend + +## Overview + +璇ユ妧鑳介潰鍚戞湰浠撳簱鐜版湁 PixiJS 瀹炵幇锛屼笉鍋氫粠闆舵鏋舵敼閫犮�備紭鍏堝湪褰撳墠 Vue + Pixi 缁撴瀯涓仛鏈�灏忋�佸畨鍏ㄣ�佸彲楠岃瘉鏀瑰姩銆� + +## Entry Points + +- 涓诲叆鍙i〉闈細`src/main/webapp/views/watch/console.html` +- 涓荤敾甯冪粍浠讹細`src/main/webapp/components/MapCanvas.js` +- 鏃х増椤甸潰锛堜粛鍙弬鑰冿級锛歚src/main/webapp/views/watch/console_pixijs.html` +- 鏃х増闈欐�佸湴鍥捐剼鏈細`src/main/webapp/static/js/console.map.js` +- 搴撲綅鍦板浘椤甸潰锛歚src/main/webapp/views/locMap/locMap.html` +- Pixi 杩愯搴擄細`src/main/webapp/static/js/pixi-legacy.min.js`锛堥」鐩负 Pixi v5 浣撶郴锛� + +## Workflow + +### 1. Confirm Change Type + +- 娓叉煋闂锛歴prite 浣嶇疆銆佸浘灞傞『搴忋�佽建閬�/璐ф灦缁樺埗銆佹枃瀛楃缉鏀俱�� +- 浜や簰闂锛氭嫋鎷姐�佹粴杞缉鏀俱�佺偣鍑讳簨浠躲�乭over tooltip銆� +- 瀹炴椂鏁版嵁闂锛歐ebSocket 娑堟伅璺敱銆佺姸鎬侀鑹叉槧灏勩�佽澶囩紪鍙蜂笌浠诲姟鍙锋樉绀恒�� +- 瑙嗗浘鍙樻崲闂锛氭棆杞�侀暅鍍忋�乫it-to-view銆佹ゼ灞傚垏鎹㈠悗澶嶄綅銆� + +### 2. Locate the Correct File First + +- `console.html` 鍙礋璐e灞傞〉闈笌 card/鍙傛暟鑱斿姩銆� +- `MapCanvas.js` 璐熻矗缁濆ぇ澶氭暟 Pixi 閫昏緫锛堝垱寤虹敾甯冦�佹覆鏌撱�乄ebSocket銆佺姸鎬佸埛鏂般�佸彉鎹級銆� +- `console_pixijs.html` 涓� `console.map.js` 灞炰簬鏃у疄鐜帮紝鏀瑰姩鍓嶅厛纭褰撳墠椤甸潰鏄惁瀹為檯浣跨敤銆� + +寤鸿瀹氫綅鍛戒护锛� +```bash +rg -n "map-canvas|createMapData|drawTracks|applyMapTransform|connectWs|webSocketOnMessage" src/main/webapp +``` + +### 3. Implement with Existing MapCanvas Lifecycle + +- 鍒濆鍖栭摼璺細`mounted -> createMap -> connectWs -> getMap -> createMapData` +- 瀹炴椂鍒锋柊閾捐矾锛� + - 瀹氭椂鍙戦�侊細`/console/latest/data/crn|dualcrn|station|rgv` + - 娑堟伅鍒嗗彂锛歚webSocketOnMessage` + - 娓叉煋鏇存柊锛歚setCrnInfo/setDualCrnInfo/setRgvInfo/setSiteInfo` +- 鍙樻崲閾捐矾锛� + - `rotateMap/toggleMirror` + - `applyMapTransform -> fitStageToContent -> scheduleAdjustLabels` + +### 4. PixiJS Change Rules + +- 淇濇寔瀹瑰櫒鑱岃矗涓嶅彉锛� + - `tracksGraphics` 鐢昏建閬撶嚎 + - `shelvesContainer` 鏀捐揣鏋� + - `objectsContainer` 鏀鹃潤鎬佸璞� + - `objectsContainer2` 鏀捐澶囧璞★紙crn/dualcrn/rgv锛� +- 鏂板璁惧绫诲瀷鏃讹紝鑷冲皯鍚屾锛� + - `createMapData` 鐨勮瘑鍒笌鍒涘缓 + - WebSocket 璺敱涓� `setXxxInfo` + - 鐘舵�佽壊涓庢枃鏈洿鏂伴�昏緫 +- 淇敼缂╂斁/鏃嬭浆閫昏緫鏃讹紝蹇呴』鍥炲綊 `adjustLabelScale`锛岄伩鍏嶆枃鏈�掔疆銆佽繃灏忔垨閿欎綅銆� + +### 5. WebSocket and Data Safety + +- 淇濇寔娑堟伅 URL 瀛楃涓蹭笌鍚庣涓�鑷达紝閬垮厤鎷煎啓婕傜Щ銆� +- 澶勭悊 JSON 鍓嶅厛鍒ょ┖骞跺吋瀹规暟瀛楀瓧绗︿覆銆� +- 妤煎眰鍒囨崲鏈熼棿灏婇噸 `isSwitchingFloor`锛岄伩鍏嶇姸鎬佹洿鏂颁笌閲嶅缓骞跺彂鍐茬獊銆� +- 閲嶈繛閫昏緫娌跨敤鎸囨暟閫�閬匡紝涓嶈鏀规垚楂橀閲嶈繛銆� + +### 6. Performance Checklist + +- 浼樺厛澶嶇敤绾圭悊缂撳瓨锛堝 `pixiShelfMap`銆乣pixiTrackMap`銆侀鑹茬汗鐞嗙紦瀛橈級銆� +- 涓嶅湪楂橀鍥炶皟閲岄噸澶� new 澶у璞★紱灏介噺澶嶇敤瀵硅薄涓庡鍣ㄣ�� +- 浜や簰鐩戝惉涓庡畾鏃跺櫒鍦� `beforeDestroy` 閲屾垚瀵归噴鏀俱�� +- 瀵� UI 鏂囨湰鎴� hover 璁$畻浣跨敤鑺傛祦/RAF锛堥」鐩凡鐢� `requestAnimationFrame`锛夈�� + +### 7. Verify Quickly + +1. 鎵撳紑 `views/watch/console.html`锛岀‘璁ゅ湴鍥炬甯告覆鏌撱�� +2. 娴嬭瘯鎷栨嫿銆佹粴杞缉鏀俱�佹棆杞�侀暅鍍忋�� +3. 瑙傚療 WebSocket 鏁版嵁椹卞姩涓嬭澶囦綅缃拰鐘舵�佽壊鏄惁鍒锋柊銆� +4. 鍒囨崲妤煎眰鍚庣‘璁ゆ棤娈嬪奖銆佹棤鏃у眰瀵硅薄娉勬紡銆� +5. 鍏虫敞 FPS 闈㈡澘鏄惁鏄庢樉涓嬮檷銆� + +## Output Format + +瀹屾垚浠诲姟鍚庢寜浠ヤ笅缁撴瀯杈撳嚭锛� + +1. 鏀瑰姩缁撹锛堜慨澶�/鏂板鍐呭锛夈�� +2. 鏂囦欢娓呭崟锛堢簿纭埌璺緞锛夈�� +3. 娓叉煋閾捐矾褰卞搷鐐癸紙鍒濆鍖栥�佸疄鏃舵洿鏂般�佷氦浜掋�佹�ц兘锛夈�� +4. 楠岃瘉缁撴灉涓庢湭瑕嗙洊椋庨櫓銆� + +## Do and Don't + +- Do锛氫紭鍏堟敼 `MapCanvas.js` 涓婚摼璺紝涓嶉殢鎰忔敼鏃х増椤甸潰銆� +- Do锛氫繚鎸佷笌鐜版湁 Vue + Pixi v5 椋庢牸涓�鑷淬�� +- Don't锛氭湭缁忕‘璁わ紝涓嶅垏鎹� Pixi 鐗堟湰鎴栭噸鏋勪负鏂板墠绔鏋躲�� +- Don't锛氬湪瀹氭椂鍒锋柊鍜� pointer 浜嬩欢涓紩鍏ラ珮寮�閿�鍚屾閫昏緫銆� diff --git a/skills/zy-wcs-pixijs-frontend/agents/openai.yaml b/skills/zy-wcs-pixijs-frontend/agents/openai.yaml new file mode 100644 index 0000000..a728597 --- /dev/null +++ b/skills/zy-wcs-pixijs-frontend/agents/openai.yaml @@ -0,0 +1,4 @@ +interface: + display_name: "ZY WCS PixiJS Frontend" + short_description: "Develop and debug PixiJS map pages in zy-wcs" + default_prompt: "Use this skill to implement or troubleshoot PixiJS frontend changes in zy-wcs, especially MapCanvas.js rendering, websocket-driven device updates, interactions, and performance." -- Gitblit v1.9.1