| ¶Ô±ÈÐÂÎļþ |
| | |
| | | # MES è´¨æ£å级ï¼åå·¥æ£éªæ¥åï¼åç»æ£éªé¡¹ + å
¬å¼ææ¬ + å¹³è¡æµé + æå°ï¼ |
| | | |
| | | > æ¯æçº¸è´¨"æ£ä¸éæ£éªè®°å½"ï¼GB/T 6027ï¼ç±»æ¥åï¼è¡åç»ç©éµãå
¬å¼ææ¬å±ç¤ºãå¹³è¡æµéæ¹æ¬¡åãè¡¨å¤´éæ ·ä¿¡æ¯ãåæè
/夿 ¸äºº/å®¡æ ¸äººç¾ååºãå端æµè§å¨æå°ãIQC/IPQC/OQC/RQC åç±»æ£éªåéç¨ã |
| | | |
| | | ## æ¶å页é¢ï¼å已宿½ï¼ |
| | | |
| | | | é¡µé¢ | åæ´ | |
| | | |------|------| |
| | | | è´¨æ£ææ ç»´æ¤ `views/mes/qc/indicator` | è¡¨åæ°å¢ æ¡ç®ç±»å/æå±åç»/å
¬å¼ææ¬/å使æ¬/æåºå·ï¼å表æ°å¢ æ¡ç®ç±»å/æå±åç»/åä½ åï¼ç»æå¼ç±»åä»
å½å
¥é¡¹æ¾ç¤ºå¿
å¡« | |
| | | | è´¨æ£æ¹æ¡-ææ é¡¹ `views/mes/qc/template` | æ¹æ¡è¡¨åæ°å¢"é»è®¤æ§è¡æ å"ï¼ææ 项å表æ°å¢"æåºå·""åä¸å¤å®"å¼å
³åï¼å¯åè¡¨ç´æ¹ï¼ | |
| | | | åç±»æ£éªå表å `views/mes/qc/{iqc,ipqc,oqc,rqc}` | æ°å¢ éæ ·å°ç¹/è¯ä¹¦ç¼å·/æ§è¡æ å/夿 ¸äºº/å®¡æ ¸äººï¼éæ©è´¨æ£æ¹æ¡æ¶æ§è¡æ åèªå¨å¸¦å
¥æ¹æ¡é»è®¤å¼ï¼å表æä½åæ°å¢"æå°æ¥å" | |
| | | | æ£éªç»æå½å
¥ `views/mes/qc/indicatorresult/components/form.vue` | æåç»æ 渲æï¼ç»æ é¢è¡ + å
¬å¼ææ¬ï¼ï¼æ¯ä¸ªå½å
¥é¡¹æ¯æå¢å "æµéæ¹æ¬¡"å¹³è¡å | |
| | | | æå°ç»ä»¶ï¼æ°å»ºï¼ `views/mes/qc/components/qc-report-print.vue` | Teleport + @media print æµè§å¨æå°æ¥åçå¼ | |
| | | |
| | | ## æ°æ®åºåæ´ï¼å·²æ§è¡è³ ruoyi-vue-proï¼ç»æå·²åæ¥ `docs/sql/config_export_all_20260904.sql` é¶æ®µä¸ï¼ |
| | | |
| | | | 表 | æ°å¢å | |
| | | |----|--------| |
| | | | `mes_qc_indicator` | `parent_id`(0=顶级)ã`item_type`(1å½å
¥/2åç»)ã`formula_text`ã`unit_text`ã`sort_order` | |
| | | | `mes_qc_template_indicator` | `sort_order`ã`judge_flag`(é»è®¤1åä¸å¤å®) | |
| | | | `mes_qc_indicator_result_detail` | `measure_no`(æµéæ¹æ¬¡å·ï¼é»è®¤1) | |
| | | | `mes_qc_iqc` / `ipqc` / `oqc` / `rqc` | `sampling_location`ã`certificate_no`ã`execute_standard`ã`audit_user_id`ã`approve_user_id` | |
| | | | `mes_qc_template` | `default_execute_standard` | |
| | | |
| | | ææ å±çº§è§åï¼ä»
两级ï¼åç»é¡¹å¿
须顶级ï¼å½å
¥é¡¹å¯æä¸ä¸ªåç»ï¼ï¼åå±çº§ä¸æ£æµé¡¹åç§°å¯ä¸ï¼ä¸ååç»ä¸å
许åååæ°è¡ï¼å¦"æ°´å""é
¸å«é"ç»ä¸åæä¸ä¸ª"è¯æ ·è´¨é m"ï¼ã |
| | | |
| | | ç§åæ°æ®ï¼`sql/mysql/mes_qc_indicator_seed.sql`ï¼æ£ä¸éæ¥åæ ·ä¾æ ï¼ç¼ç åç¼ `SEED-BT-`ï¼å¹çå¯éè·ï¼ã |
| | | |
| | | ## API |
| | | |
| | | | æ¹æ³ | è·¯å¾ | 说æ | |
| | | |------|------|------| |
| | | | GET | /mes/qc/indicator/list | ææ å¹³éºå表ï¼åç«¯æ®æ¤æ´¾çæ ï¼RespVO æ°å¢ parentId/itemType/formulaText/unitText/sortOrder/parentNameï¼ | |
| | | | POST/PUT | /mes/qc/indicator/createã/update | SaveReqVO å«ä¸è¿° 5 æ°å段ï¼å 餿åé¡¹çææ å°è¢«æ¦æª | |
| | | | PUT | /mes/qc/template/indicator/update | æ¯æ sortOrder/judgeFlag | |
| | | | GET | /mes/qc/indicator-result/get-detail-list | Item æ å½¢åï¼+parentId/itemType/formulaText/unitText/sortOrder/childrenï¼åå¼ value/remark æ¹ä¸º `measures: [{resultId, measureNo, value, remark}]` | |
| | | | POST | /mes/qc/indicator-result/createã/update | æç»é¡¹ +`measureNo`ï¼ç©ºé»è®¤1ï¼ï¼åç»é¡¹ä¸æäº¤æç» | |
| | | | GET | /mes/qc/indicator-result/report | **æ°å¢**ï¼æå°æ¥åèåæ°æ®ï¼åæ° `qcId`ã`qcType`ã`resultId`(å¯é)ï¼æé `mes:qc-iqc:query` | |
| | | |
| | | **/report ååºç¤ºä¾ï¼èéï¼ï¼** |
| | | |
| | | ```json |
| | | { |
| | | "qcType": 1, |
| | | "docCode": "IQC20260830001", |
| | | "itemName": "æ£ä¸é", |
| | | "samplingLocation": "ç½åº", |
| | | "certificateNo": "V0028", |
| | | "executeStandard": "GB/T6027", |
| | | "samplingTime": "2026-08-30T01:00:00", |
| | | "batchQuantity": 30, |
| | | "checkResult": 1, |
| | | "inspectorName": "æ°è³", |
| | | "auditName": "海丽", |
| | | "approveName": "çäº", |
| | | "measureNos": [1, 2], |
| | | "items": [ |
| | | { |
| | | "indicatorId": 21, "indicatorName": "é
¸å«é", "itemType": 2, |
| | | "formulaText": "w3 = c à V à 0.06005 / m à 100%", |
| | | "children": [ |
| | | { "indicatorName": "è¯æ ·è´¨é m /g", "itemType": 1, |
| | | "measures": [ |
| | | { "measureNo": 1, "value": "10.023" }, |
| | | { "measureNo": 2, "value": "10.115" } |
| | | ] } |
| | | ] |
| | | } |
| | | ] |
| | | } |
| | | ``` |
| | | |
| | | ## æ°æ®å¸¦å
¥è¯´æ |
| | | |
| | | 1. æ¹æ¡ `defaultExecuteStandard` â æ°å»ºåç±»æ£éªåéæ¹æ¡åèªå¨å¡«å
¥ `executeStandard`ï¼ç¨æ·å·²æå¡«åä¸è¦çï¼ä»
å½è¯·æ±å¼ä¸ºç©ºæ¶åç«¯ä»æ¹æ¡åå¡«ï¼ã |
| | | 2. æ¹æ¡ææ `sortOrder`/`judgeFlag` â çææ£éªè¡/ç»ææ æ¶æåºä¸å¤å®æç¤ºä¾æ®ï¼`judgeFlag=false`ï¼åç»/ä¸é´åæ°è¡ï¼ä¸åä¸åæ ¼å¤å®æç¤ºã |
| | | 3. ææ æ å½¢ç»æç±åå
¸å± `parent_id` æ´¾çï¼æ£éªè¡è¡¨ä¸å å±çº§å段ï¼èæå¹³ææ ï¼parentId=0ï¼å®å
¨å
¼å®¹ã |
| | | |
| | | ## æå°çå¼å段æ å°ï¼qc-report-print.vue â 纸质æ¥åï¼ |
| | | |
| | | | 纸质æ ä½ | æ°æ®æ¥æº | |
| | | |----------|----------| |
| | | | è¯ä¹¦ç¼å· / éæ ·å°ç¹ / æ¹é / éæ ·æ¶é´ / æ§è¡æ å | report åååæ®µ | |
| | | | åç»è¡ï¼æ°´å/é
¸å«éâ¦ï¼ | itemType=2 èç¹ï¼åç§°è¡ + å
¬å¼ææ¬(formulaText) | |
| | | | åæ°è¡/ç»æè¡ | åç» children å½å
¥é¡¹ï¼æ sortOrder æåº | |
| | | | å¹³è¡æµé两å | measureNos æ°ç»é©±å¨åå¤´ï¼æ¯ measureNo ä¸å | |
| | | | å¤è§ç宿§é¡¹ | resultType=ææ¬/åå
¸ çå½å
¥é¡¹ç´æ¥æ¾ç¤º value | |
| | | | åæè
/夿 ¸äºº/å®¡æ ¸äºº | inspectorName / auditName / approveName | |
| | | |
| | | ## ä¸å¡è§å |
| | | |
| | | | åºæ¯ | è§å | |
| | | |------|------| |
| | | | åç»é¡¹å½å
¥ | ä¸å½å¼ï¼ç»æå¼ç±»åéèãæç»ä¸æäº¤ãå端 validateDetailValues 对 GROUP è·³è¿æ ¼å¼æ ¡éª | |
| | | | å¹³è¡æµé | æ¯å½å
¥é¡¹è³å°ä¿ç 1 个æµéæ¹æ¬¡ï¼æ°å¢æ¹æ¬¡èªå¨åä¸ä¸ä¸ªåºå· | |
| | | | ç»æåæ¾ | åæ¹æ¬¡èæ°æ® measureNo=1ï¼å端 measures æ£å¸¸æ¸²æ | |
| | | | å¤å®æµç¨ | ä¸åï¼checkResult ä»ç±å®ææ£éªæ¶äººå·¥å¡«åï¼ç³»ç»æ èªå¨éå¼å¤å® | |
| | | | å 餿æ | åå¨å项æ¶åç«¯æ¦æªæ¥é | |
| | | |
| | | ## 注æäºé¡¹ |
| | | |
| | | - æå°ä¸ºæµè§å¨ `window.print()`ï¼å»ºè®®å¨ Chrome ä¸é¢è§ï¼éèæå°å¤å
¶ä»å
ç´ ç±ç»ä»¶å
`@media print` æ§å¶ã |
| | | - `/report` ç `qcType`ï¼1=IQCã2=IPQCã3=OQCã4=RQCï¼ä¸ `MesQcTypeEnum` ä¸è´ã |
| | | - 夿 ¸äºº/å®¡æ ¸äººä»
ä½ä¸ºè®°å½ä¸æå°ç¾ååºï¼ä¸å¼å
¥å®¡æ¹æµè½¬ã |
| | | - æä»¶éä»¶ç±»ææ ï¼resultType=æä»¶ï¼æ²¿ç¨åæºå¶ï¼æªå¨æ¬æ¬¡èå´ã |
| | | - åå½ç¹ï¼æ¢ææå¹³ææ çèæ£éªåï¼å½å
¥/宿/Excel 导åºï¼è¡ä¸ºä¸åï¼`measure_no` é»è®¤ 1 å¯¹èæ°æ®éæã |