From 3aa3b3e91f274d1544f397e9f286853d01187fcd Mon Sep 17 00:00:00 2001
From: zs <zhousong@weben-smart.com>
Date: 周三, 04 6月 2025 17:41:04 +0800
Subject: [PATCH] 变量文档

---
 PipeLineLems/pipelinelems_web/src/widgets/PipeAccessoryAssembly/Views/Pages/PipeAccessoryAssembly/PipeAccessoryAssembly.tsx |  358 +++++++++++++++++++++++++++++++++++++++++++++++------------
 1 files changed, 285 insertions(+), 73 deletions(-)

diff --git a/PipeLineLems/pipelinelems_web/src/widgets/PipeAccessoryAssembly/Views/Pages/PipeAccessoryAssembly/PipeAccessoryAssembly.tsx b/PipeLineLems/pipelinelems_web/src/widgets/PipeAccessoryAssembly/Views/Pages/PipeAccessoryAssembly/PipeAccessoryAssembly.tsx
index 200869b..91441ff 100644
--- a/PipeLineLems/pipelinelems_web/src/widgets/PipeAccessoryAssembly/Views/Pages/PipeAccessoryAssembly/PipeAccessoryAssembly.tsx
+++ b/PipeLineLems/pipelinelems_web/src/widgets/PipeAccessoryAssembly/Views/Pages/PipeAccessoryAssembly/PipeAccessoryAssembly.tsx
@@ -1,6 +1,8 @@
 import { defineComponent, onMounted, ref } from 'vue'
 import type { Ref } from 'vue'
 import styles from './PipeAccessoryAssembly.module.scss'
+import pipeImage from '@/images/pipe-assembly-drawing-example.png'
+import { ConfirmBox } from '@/components/ConfirmBox/ConfirmBox' 
 import {
   ElInput,
   ElForm,
@@ -9,11 +11,15 @@
   ElSelect,
   ElOption,
   ElMessage,
+  ElCol,
 } from 'element-plus'
 import {
   getPlaceNoForStockList,
   getMaterialModelList,
   instock,
+  findSingleWorkPlanByFilter,
+  startProduction,
+  finishProduction
 } from '@/widgets/PipeAccessoryAssembly/Models/Service/PipeAccessoryAssembly'
 import { Message } from '@element-plus/icons-vue/dist/types'
 
@@ -21,12 +27,22 @@
   name: 'PipeAccessoryAssembly',
   setup() {
     // 鏌ヨ琛ㄥ崟鏁版嵁
-    const queryForm = ref({
-      materialModel: '',
-      placeNo: '',
-      materialBatch: '',
-      stockNumber: '',
-    })
+const queryForm = ref({
+  pipeSpecCode: '',
+  processRouteNumber: '',
+  taskCode: '',
+  length: '',
+  projectNumber: '',
+  shipNumber: '',
+  material: '',
+  outerDiameter: '',
+  thickness: '',
+  plannedStartTime: '',
+  plannedEndTime: '',
+  workstationCode: '',
+  processName: '',
+  equipmentCode: ''
+})
 
     // 鏁版嵁婧�
     const modelOptions = ref<Array<{ value: string; label: string }>>([])
@@ -34,8 +50,8 @@
 
     onMounted(() => {
       // 缁勪欢鎸傝浇鍚庤幏鍙栧瀷鍙峰垪琛ㄥ拰搴撲綅鍙峰垪琛�
-      getModelList()
-      getPlaceNoList()
+      // getModelList()
+      // getPlaceNoList()
     })
 
     // 缁勭洏鎿嶄綔
@@ -78,76 +94,272 @@
         label: item.placeNoDesc,
       }))
     }
+    const handleChange =async (value) => {
+      console.log('杈撳叆鍐呭纭:', value); // 澶卞幓鐒︾偣鎴栧洖杞︽椂瑙﹀彂
+      if(value==''){
+        initQueryForm();
+        return;
+      }
+      // 鍦ㄦ澶勬坊鍔犱笟鍔¢�昏緫锛堝鏍¢獙銆佹彁浜ょ瓑锛�
+      const param={
+        pipeSpecCode:value,
+        pipeSpecCode_FilterMode:2,//绮惧噯鏌ヨ
+        processName:'瑁呴厤宸ュ簭',
+        processName_FilterMode:2,//绮惧噯鏌ヨ
+      }
+      const workPlan = await findSingleWorkPlanByFilter(param);
+      console.log('杩斿洖:'+workPlan);
+      if(workPlan==''){
+        ElMessage.error('娌℃湁鎵惧埌鏁版嵁'); 
+        initQueryForm();
+      }else{
+        queryForm.value=workPlan;
+      }
+    };
+    const initQueryForm=()=>{
+      queryForm.value ={ pipeSpecCode: '',
+        processRouteNumber: '',
+        taskCode: '',
+        length: '',
+        projectNumber: '',
+        shipNumber: '',
+        material: '',
+        outerDiameter: '',
+        thickness: '',
+        plannedStartTime: '',
+        plannedEndTime: '',
+        workstationCode: '',
+        processName: '',
+        equipmentCode: ''}
+    }
+
+    // 寮�宸ヤ簨浠跺鐞�
+    const startWork = () => {
+      console.log('鎵ц寮�宸ユ搷浣�');
+      if(queryForm.value.pipeSpecCode==''){
+        ElMessage.error('璇疯緭鍏ョ娈电紪鐮�'); 
+        return
+      }
+      ConfirmBox( 
+                `纭畾瑕佸皢绠℃缂栫爜${queryForm.value.pipeSpecCode}寮�宸ュ悧` 
+              ).then(async () => { 
+                //鎮ㄧ殑涓氬姟閫昏緫
+                const param={
+                  taskCode:queryForm.value.taskCode,
+                };
+                const ret = await startProduction(param);
+      console.log('杩斿洖:'+ret);
+                if(ret.code="200"){
+                  ElMessage.success('寮�宸ユ垚鍔�'); 
+                }else{
+                  ElMessage.error('寮�宸ュけ璐�:'+ret.message); 
+                }
+              }) 
+    } 
+    // 瀹屽伐浜嬩欢澶勭悊
+    const finishWork = () => {
+      console.log('鎵ц寮�宸ユ搷浣�');
+      if(queryForm.value.pipeSpecCode==''){
+        ElMessage.error('璇疯緭鍏ョ娈电紪鐮�'); 
+        return
+      }
+      ConfirmBox( 
+                `纭畾瑕佸皢绠℃缂栫爜${queryForm.value.pipeSpecCode}瀹屽伐鍚梎 
+              ).then(async () => { 
+                //鎮ㄧ殑涓氬姟閫昏緫
+                const param={
+                  pipeSpecCode:queryForm.value.pipeSpecCode,
+                  processName:queryForm.value.processName,
+                };
+                const ret = await finishProduction(param);
+      console.log('杩斿洖:'+ret);
+                if(ret.code="200"){
+                  ElMessage.success('瀹屽伐鎴愬姛'); 
+                }else{
+                  ElMessage.error('瀹屽伐澶辫触:'+ret.message); 
+                }
+              }) 
+    }
+    const tableData = ref([
+      { sequence: 1, flangeA: 'RF-200-1.6MPa', flangeB: 'WN-200-1.6MPa' },
+      { sequence: 2, flangeA: 'WN-250-2.5MPa', flangeB: 'SO-250-2.5MPa' },
+      { sequence: 3, flangeA: 'PL-300-1.0MPa', flangeB: 'RF-300-1.0MPa' },
+      { sequence: 4, flangeA: 'SO-150-2.0MPa', flangeB: 'WN-150-2.0MPa' },
+      { sequence: 5, flangeA: 'RF-400-1.6MPa', flangeB: 'PL-400-1.6MPa' },
+      { sequence: 6, flangeA: 'WN-200-4.0MPa', flangeB: 'SO-200-4.0MPa' },
+      { sequence: 7, flangeA: 'SO-300-1.6MPa', flangeB: 'RF-300-1.6MPa' },
+      { sequence: 8, flangeA: 'PL-250-1.0MPa', flangeB: 'WN-250-1.0MPa' },
+      { sequence: 9, flangeA: 'RF-150-2.5MPa', flangeB: 'SO-150-2.5MPa' },
+      { sequence: 10, flangeA: 'WN-400-2.0MPa', flangeB: 'PL-400-2.0MPa' }
+    ]);
+
 
     return () => {
       return (
-        <div class={styles.PipeAccessoryAssemblyContent}>
-          <ElForm label-position="top" class={styles.h5Form}>
-            <ElFormItem label="鍨嬪彿">
-              <ElSelect
-                v-model={queryForm.value.materialModel}
-                placeholder="璇烽�夋嫨鍨嬪彿"
-                clearable
-                class={styles.formInput}
-              >
-                {modelOptions.value.map((item) => (
-                  <ElOption
-                    key={item.value}
-                    label={item.label}
-                    value={item.value}
+        <div
+          class={styles.PipeAccessoryAssemblyContent}
+          style="overflow-y: auto !important;  height: 100%;"
+        >
+             <ElFormItem label="绠℃缂栫爜&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;">
+                  <ElInput
+                    v-model={queryForm.value.pipeSpecCode}
+                    clearable
+                    class={styles.formInput}
+                    onInput={handleChange}
                   />
-                ))}
-              </ElSelect>
-            </ElFormItem>
-            <ElFormItem label="搴撲綅鍙�">
-              <ElSelect
-                v-model={queryForm.value.placeNo}
-                placeholder="璇烽�夋嫨搴撲綅鍙�"
-                clearable
-                class={styles.formInput}
-              >
-                {placeNoOptions.value.map((item) => (
-                  <ElOption
-                    key={item.value}
-                    label={item.label}
-                    value={item.value}
+                </ElFormItem>
+          <div class={styles.actionButtons}>
+            <ElButton type="warning" onClick={startWork}>寮�宸�</ElButton>
+            <ElButton type="warning" onClick={finishWork}>瀹屽伐</ElButton>
+            {/* <ElButton type="warning">鏆傚仠</ElButton>
+            <ElButton type="warning">鑷姩</ElButton>
+            <ElButton type="warning">璐ㄦ</ElButton> */}
+          </div>
+
+          <h2 class={styles.blockTitle}>褰撳墠浠诲姟</h2>
+          <ElForm label-position="left" >
+             
+                <ElFormItem label="鐗╂枡娴佸悜&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;">
+                  <ElInput
+                    v-model={queryForm.value.processRouteNumber}
+                    disabled
+                    clearable
+                    class={styles.formInput}
                   />
-                ))}
-              </ElSelect>
-            </ElFormItem>
-            <ElFormItem label="鎵规鍙�">
-              <ElInput
-                v-model={queryForm.value.materialBatch}
-                placeholder="璇疯緭鍏ユ壒娆″彿"
-                clearable
-                class={styles.formInput}
-              />
-            </ElFormItem>
-            <ElFormItem label="鏁伴噺">
-              <ElInput
-                v-model={queryForm.value.stockNumber}
-                placeholder="璇疯緭鍏ユ暟閲�"
-                clearable
-                class={styles.formInput}
-              />
-            </ElFormItem>
-            <div class={styles.buttonGroup}>
-              {/* <ElButton
-                type="primary"
-                onClick={handlePalletize}
-                class={styles.actionButton}
-              >
-                缁勭洏
-              </ElButton> */}
-              <ElButton
-                type="success"
-                onClick={handlePalletizeStorage}
-                class={styles.actionButton}
-              >
-                缁勭洏鍏ュ簱
-              </ElButton>
-            </div>
-          </ElForm>
+                </ElFormItem>
+                <ElFormItem label="浠诲姟缂栧彿&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;">
+                  <ElInput
+                    v-model={queryForm.value.taskCode}
+                    disabled
+                    clearable
+                    class={styles.formInput}
+                  />
+                </ElFormItem>
+                <ElFormItem label="绠℃闀垮害&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;">
+                  <ElInput
+                    v-model={queryForm.value.length}
+                    disabled
+                    clearable
+                    class={styles.formInput}
+                  />
+                </ElFormItem>
+                <ElFormItem label="椤圭洰&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;鍙�">
+                  <ElInput
+                    v-model={queryForm.value.projectNumber}
+                    disabled
+                    clearable
+                    class={styles.formInput}
+                  />
+                </ElFormItem>
+                <ElFormItem label="鑸�&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;鍙�">
+                  <ElInput
+                    v-model={queryForm.value.shipNumber}
+                    disabled
+                    clearable
+                    class={styles.formInput}
+                  />
+                </ElFormItem>
+                <ElFormItem label="鏉�&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;璐�">
+                  <ElInput
+                    v-model={queryForm.value.material}
+                    disabled
+                    clearable
+                    class={styles.formInput}
+                  />
+                </ElFormItem>
+                <ElFormItem label="澶�&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;寰�">
+                  <ElInput
+                    v-model={queryForm.value.outerDiameter}
+                    disabled
+                    clearable
+                    class={styles.formInput}
+                  />
+                </ElFormItem>
+                <ElFormItem label="澹�&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;鍘�">
+                  <ElInput
+                    v-model={queryForm.value.thickness}
+                    disabled
+                    clearable
+                    class={styles.formInput}
+                  />
+                </ElFormItem>
+                <ElFormItem label="璁″垝寮�濮嬫椂闂�">
+                  <ElInput
+                    v-model={queryForm.value.plannedStartTime}
+                    disabled
+                    clearable
+                    class={styles.formInput}
+                  />
+                </ElFormItem>
+                <ElFormItem label="璁″垝瀹屾垚鏃堕棿">
+                  <ElInput
+                    v-model={queryForm.value.plannedEndTime}
+                    disabled
+                    clearable
+                    class={styles.formInput}
+                  />
+                </ElFormItem>
+              </ElForm>
+
+              <h2 class={styles.blockTitle}>褰撳墠宸ヤ綅/璁惧淇℃伅</h2>
+          <ElForm label-position="left" >
+                <ElFormItem label="宸ヤ綅浠g爜&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;">
+                  <ElInput
+                    v-model={queryForm.value.workstationCode}
+                    disabled
+                    clearable
+                    class={styles.formInput}
+                  />
+                </ElFormItem>
+                <ElFormItem label="宸ュ簭鍚嶇О&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;">
+                  <ElInput
+                    v-model={queryForm.value.processName}
+                    disabled
+                    clearable
+                    class={styles.formInput}
+                  />
+                </ElFormItem>
+                <ElFormItem label="璁惧浠g爜&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;">
+                  <ElInput
+                    v-model={queryForm.value.equipmentCode}
+                    disabled
+                    clearable
+                    class={styles.formInput}
+                  />
+                </ElFormItem>
+                {/* <ElFormItem label="璁惧鐘舵��">
+                  <ElInput
+                    v-model={queryForm.value.materialBatch}
+                    disabled
+                    clearable
+                    class={styles.formInput}
+                  />
+                </ElFormItem> */}
+                {/* <ElFormItem label="鎿嶄綔浜�">
+                  <ElInput
+                    v-model={queryForm.value.materialBatch}
+                    disabled
+                    clearable
+                    class={styles.formInput}
+                  />
+                </ElFormItem> */}
+              </ElForm>
+
+          {/* <div class="info-block">
+            <h2 class="block-title">宸ヨ壓淇℃伅</h2>
+            <el-table stripe  v-model:dataSource={tableData}>
+              <el-table-column prop="sequence" label="搴�"></el-table-column>
+              <el-table-column prop="flangeA" label="娉曞叞A"></el-table-column>
+              <el-table-column prop="flangeB" label="娉曞叞B"></el-table-column>
+            </el-table>
+          </div> */}
+          <h2 class="block-title">鍥剧焊</h2>
+          <img
+            src={pipeImage}
+            alt="璁惧鍥剧墖"
+            style="height:1250px;"
+            class="equipment-image"
+          ></img>
         </div>
       )
     }

--
Gitblit v1.9.3