ZaiZai před 1 rokem
rodič
revize
12d9b798b0

+ 3 - 3
package.json

@@ -17,8 +17,8 @@
         "crypto-js": "^4.2.0",
         "dayjs": "^1.11.11",
         "echarts": "^5.5.0",
-        "element-plus": "^2.7.2",
-        "hc-vue3-ui": "^3.9.1",
+        "element-plus": "^2.7.3",
+        "hc-vue3-ui": "^3.9.4",
         "js-base64": "^3.7.7",
         "js-fast-way": "^0.5.0",
         "js-md5": "^0.8.3",
@@ -38,7 +38,7 @@
         "autoprefixer": "^10.4.19",
         "eslint": "^8.57.0",
         "eslint-plugin-vue": "^9.24.0",
-        "sass": "^1.77.0",
+        "sass": "^1.77.1",
         "unocss": "0.58.9",
         "unocss-preset-extra": "0.5.3",
         "vite": "^4.5.0",

+ 1 - 1
public/version.json

@@ -1,3 +1,3 @@
 {
-  "value": "20240507170340"
+  "value": "20240511174113"
 }

+ 8 - 0
src/api/modules/tentative/material/testSample.js

@@ -17,4 +17,12 @@ export default {
             params: { ids },
         }, msg)
     },
+    //修改
+    async update(form, msg = true) {
+        return HcApi({
+            url: '/api/blade-business/entrustinfo/update',
+            method: 'post',
+            data: form,
+        }, msg)
+    },
 }

+ 45 - 6
src/views/tentative/material/modules/testSample/inventory.vue

@@ -68,15 +68,15 @@
                         </el-form-item>
                     </el-col>
                     <el-col v-if="rowActionTitle === '等待检测'" :span="24">
-                        <el-form-item label="试验检测时间:" prop="key9">
-                            <el-date-picker v-model="formModel.key9" class="block" type="date" format="YYYY-MM-DD" value-format="YYYY-MM-DD" />
+                        <el-form-item label="试验检测时间:" prop="ctestTime">
+                            <el-date-picker v-model="formModel.ctestTime" class="block" type="date" format="YYYY-MM-DD" value-format="YYYY-MM-DD" />
                         </el-form-item>
                     </el-col>
                 </el-row>
             </el-form>
             <template #footer>
                 <el-button @click="rowActionModalClose">取消</el-button>
-                <el-button hc-btn type="primary" @click="rowActionSave">创建</el-button>
+                <el-button hc-btn type="primary" :loading="saveLoading" @click="rowActionSave">创建</el-button>
             </template>
         </hc-new-dialog>
     </hc-card-item>
@@ -85,8 +85,9 @@
 <script setup>
 import { onMounted, ref, watch } from 'vue'
 import { useAppStore } from '~src/store'
+import router from '~src/router/index'
 import { getErtractInfo } from '~api/other'
-import { getArrValue, getObjValue, isNullES } from 'js-fast-way'
+import { formValidate, getArrValue, getObjValue, isNullES } from 'js-fast-way'
 import mainApi from '~api/tentative/material/testSample'
 
 //参数
@@ -101,6 +102,7 @@ const props = defineProps({
 const store = useAppStore()
 const projectId = ref(store.getProjectId)
 const contractId = ref(store.getContractId)
+const contractInfo = ref(store.getContractInfo)
 
 //渲染完成
 onMounted(() => {
@@ -207,6 +209,11 @@ const formRules = {
         trigger: 'blur',
         message: '请填写试验数量',
     },
+    ctestTime: {
+        required: true,
+        trigger: 'blur',
+        message: '请选择试验检测时间',
+    },
 }
 
 //弹窗
@@ -228,10 +235,42 @@ const detectionShow = (row) => {
 }
 
 //提交保存
+const saveLoading = ref(false)
 const rowActionSave = async () => {
     const title = rowActionTitle.value
-    console.log(title)
-    rowActionModalClose()
+    const isForm = await formValidate(formRef.value)
+    if (!isForm) return
+    saveLoading.value = true
+    const { id, expCount, ctestTime } = formModel.value
+    let form = { id, expCount, ctestTime }
+    if (title === '创建报告') {
+        form.sampleStatus = 4
+        delete form.ctestTime
+    } else if (title === '等待检测') {
+        form.sampleStatus = 3
+    }
+    const { error, code, msg } = await mainApi.update(form)
+    saveLoading.value = false
+    if (!error && code === 200) {
+        window.$message.success('创建成功')
+        rowActionModalClose()
+        //跳转到试验填报的新增
+        if (title === '创建报告') {
+            const { contractType } = contractInfo.value
+            const { primaryKeyId } = treeInfo.value
+            router.push({
+                path: '/tentative/detect/test-form',
+                query: {
+                    nodeId: primaryKeyId || '',
+                    dataType: contractType > 0 ? contractType + '' : '1',
+                    commissionId: id,
+                    isaddType: true,
+                },
+            }).then()
+        }
+    } else {
+        window.$message.error(msg || '创建失败')
+    }
 }
 
 //关闭弹窗

+ 14 - 109
yarn.lock

@@ -937,17 +937,6 @@
   resolved "http://39.108.216.210:9000/@vitejs/plugin-vue/-/plugin-vue-4.6.2.tgz"
   integrity sha512-kqf7SGFoG+80aZG6Pf+gsZIVvGSCKE98JbiWqcCV9cThtg91Jav0yvYFC9Zb+jKetNGF6ZKeoaxgZfND21fWKw==
 
-"@vue/compiler-core@3.4.26":
-  version "3.4.26"
-  resolved "http://39.108.216.210:9000/@vue/compiler-core/-/compiler-core-3.4.26.tgz#d507886520e83a6f8339ed55ed0b2b5d84b44b73"
-  integrity sha512-N9Vil6Hvw7NaiyFUFBPXrAyETIGlQ8KcFMkyk6hW1Cl6NvoqvP+Y8p1Eqvx+UdqsnrnI9+HMUEJegzia3mhXmQ==
-  dependencies:
-    "@babel/parser" "^7.24.4"
-    "@vue/shared" "3.4.26"
-    entities "^4.5.0"
-    estree-walker "^2.0.2"
-    source-map-js "^1.2.0"
-
 "@vue/compiler-core@3.4.27":
   version "3.4.27"
   resolved "http://39.108.216.210:9000/@vue/compiler-core/-/compiler-core-3.4.27.tgz#e69060f4b61429fe57976aa5872cfa21389e4d91"
@@ -959,14 +948,6 @@
     estree-walker "^2.0.2"
     source-map-js "^1.2.0"
 
-"@vue/compiler-dom@3.4.26":
-  version "3.4.26"
-  resolved "http://39.108.216.210:9000/@vue/compiler-dom/-/compiler-dom-3.4.26.tgz#acc7b788b48152d087d4bb9e655b795e3dbec554"
-  integrity sha512-4CWbR5vR9fMg23YqFOhr6t6WB1Fjt62d6xdFPyj8pxrYub7d+OgZaObMsoxaF9yBUHPMiPFK303v61PwAuGvZA==
-  dependencies:
-    "@vue/compiler-core" "3.4.26"
-    "@vue/shared" "3.4.26"
-
 "@vue/compiler-dom@3.4.27":
   version "3.4.27"
   resolved "http://39.108.216.210:9000/@vue/compiler-dom/-/compiler-dom-3.4.27.tgz#d51d35f40d00ce235d7afc6ad8b09dfd92b1cc1c"
@@ -975,21 +956,6 @@
     "@vue/compiler-core" "3.4.27"
     "@vue/shared" "3.4.27"
 
-"@vue/compiler-sfc@3.4.26":
-  version "3.4.26"
-  resolved "http://39.108.216.210:9000/@vue/compiler-sfc/-/compiler-sfc-3.4.26.tgz#c679f206829954c3c078d8a9be76d0098b8377ae"
-  integrity sha512-It1dp+FAOCgluYSVYlDn5DtZBxk1NCiJJfu2mlQqa/b+k8GL6NG/3/zRbJnHdhV2VhxFghaDq5L4K+1dakW6cw==
-  dependencies:
-    "@babel/parser" "^7.24.4"
-    "@vue/compiler-core" "3.4.26"
-    "@vue/compiler-dom" "3.4.26"
-    "@vue/compiler-ssr" "3.4.26"
-    "@vue/shared" "3.4.26"
-    estree-walker "^2.0.2"
-    magic-string "^0.30.10"
-    postcss "^8.4.38"
-    source-map-js "^1.2.0"
-
 "@vue/compiler-sfc@3.4.27", "@vue/compiler-sfc@^3.4.27":
   version "3.4.27"
   resolved "http://39.108.216.210:9000/@vue/compiler-sfc/-/compiler-sfc-3.4.27.tgz#399cac1b75c6737bf5440dc9cf3c385bb2959701"
@@ -1005,14 +971,6 @@
     postcss "^8.4.38"
     source-map-js "^1.2.0"
 
-"@vue/compiler-ssr@3.4.26":
-  version "3.4.26"
-  resolved "http://39.108.216.210:9000/@vue/compiler-ssr/-/compiler-ssr-3.4.26.tgz#22842d8adfff972d87bb798b8d496111f7f814b5"
-  integrity sha512-FNwLfk7LlEPRY/g+nw2VqiDKcnDTVdCfBREekF8X74cPLiWHUX6oldktf/Vx28yh4STNy7t+/yuLoMBBF7YDiQ==
-  dependencies:
-    "@vue/compiler-dom" "3.4.26"
-    "@vue/shared" "3.4.26"
-
 "@vue/compiler-ssr@3.4.27":
   version "3.4.27"
   resolved "http://39.108.216.210:9000/@vue/compiler-ssr/-/compiler-ssr-3.4.27.tgz#2a8ecfef1cf448b09be633901a9c020360472e3d"
@@ -1031,13 +989,6 @@
   resolved "http://39.108.216.210:9000/@vue/devtools-api/-/devtools-api-6.6.1.tgz#7c14346383751d9f6ad4bea0963245b30220ef83"
   integrity sha512-LgPscpE3Vs0x96PzSSB4IGVSZXZBZHpfxs+ZA1d+VEPwHdOXowy/Y2CsvCAIFrf+ssVU1pD1jidj505EpUnfbA==
 
-"@vue/reactivity@3.4.26":
-  version "3.4.26"
-  resolved "http://39.108.216.210:9000/@vue/reactivity/-/reactivity-3.4.26.tgz#1191f543809d4c93e5b3e842ba83022350a3f205"
-  integrity sha512-E/ynEAu/pw0yotJeLdvZEsp5Olmxt+9/WqzvKff0gE67tw73gmbx6tRkiagE/eH0UCubzSlGRebCbidB1CpqZQ==
-  dependencies:
-    "@vue/shared" "3.4.26"
-
 "@vue/reactivity@3.4.27":
   version "3.4.27"
   resolved "http://39.108.216.210:9000/@vue/reactivity/-/reactivity-3.4.27.tgz#6ece72331bf719953f5eaa95ec60b2b8d49e3791"
@@ -1045,14 +996,6 @@
   dependencies:
     "@vue/shared" "3.4.27"
 
-"@vue/runtime-core@3.4.26":
-  version "3.4.26"
-  resolved "http://39.108.216.210:9000/@vue/runtime-core/-/runtime-core-3.4.26.tgz#51ee971cb700370a67e5a510c4a84eff7491d658"
-  integrity sha512-AFJDLpZvhT4ujUgZSIL9pdNcO23qVFh7zWCsNdGQBw8ecLNxOOnPcK9wTTIYCmBJnuPHpukOwo62a2PPivihqw==
-  dependencies:
-    "@vue/reactivity" "3.4.26"
-    "@vue/shared" "3.4.26"
-
 "@vue/runtime-core@3.4.27":
   version "3.4.27"
   resolved "http://39.108.216.210:9000/@vue/runtime-core/-/runtime-core-3.4.27.tgz#1b6e1d71e4604ba7442dd25ed22e4a1fc6adbbda"
@@ -1061,15 +1004,6 @@
     "@vue/reactivity" "3.4.27"
     "@vue/shared" "3.4.27"
 
-"@vue/runtime-dom@3.4.26":
-  version "3.4.26"
-  resolved "http://39.108.216.210:9000/@vue/runtime-dom/-/runtime-dom-3.4.26.tgz#179aa7c8dc964112e6d096bc8ec5f361111009a1"
-  integrity sha512-UftYA2hUXR2UOZD/Fc3IndZuCOOJgFxJsWOxDkhfVcwLbsfh2CdXE2tG4jWxBZuDAs9J9PzRTUFt1PgydEtItw==
-  dependencies:
-    "@vue/runtime-core" "3.4.26"
-    "@vue/shared" "3.4.26"
-    csstype "^3.1.3"
-
 "@vue/runtime-dom@3.4.27":
   version "3.4.27"
   resolved "http://39.108.216.210:9000/@vue/runtime-dom/-/runtime-dom-3.4.27.tgz#fe8d1ce9bbe8921d5dd0ad5c10df0e04ef7a5ee7"
@@ -1079,14 +1013,6 @@
     "@vue/shared" "3.4.27"
     csstype "^3.1.3"
 
-"@vue/server-renderer@3.4.26":
-  version "3.4.26"
-  resolved "http://39.108.216.210:9000/@vue/server-renderer/-/server-renderer-3.4.26.tgz#6d0c6b0366bfe0232579aea00e3ff6784e5a1c60"
-  integrity sha512-xoGAqSjYDPGAeRWxeoYwqJFD/gw7mpgzOvSxEmjWaFO2rE6qpbD1PC172YRpvKhrihkyHJkNDADFXTfCyVGhKw==
-  dependencies:
-    "@vue/compiler-ssr" "3.4.26"
-    "@vue/shared" "3.4.26"
-
 "@vue/server-renderer@3.4.27":
   version "3.4.27"
   resolved "http://39.108.216.210:9000/@vue/server-renderer/-/server-renderer-3.4.27.tgz#3306176f37e648ba665f97dda3ce705687be63d2"
@@ -1095,11 +1021,6 @@
     "@vue/compiler-ssr" "3.4.27"
     "@vue/shared" "3.4.27"
 
-"@vue/shared@3.4.26":
-  version "3.4.26"
-  resolved "http://39.108.216.210:9000/@vue/shared/-/shared-3.4.26.tgz#f17854fb1faf889854aed4b23b60e86a8cab6403"
-  integrity sha512-Fg4zwR0GNnjzodMt3KRy2AWGMKQXByl56+4HjN87soxLNU9P5xcJkstAlIeEF3cU6UYOzmJl1tV0dVPGIljCnQ==
-
 "@vue/shared@3.4.27":
   version "3.4.27"
   resolved "http://39.108.216.210:9000/@vue/shared/-/shared-3.4.27.tgz#f05e3cd107d157354bb4ae7a7b5fc9cf73c63b50"
@@ -1598,10 +1519,10 @@ electron-to-chromium@^1.4.668:
   resolved "http://39.108.216.210:9000/electron-to-chromium/-/electron-to-chromium-1.4.682.tgz#27577b88ccccc810e09b05093345cf1830f1bd65"
   integrity sha512-oCglfs8yYKs9RQjJFOHonSnhikPK3y+0SvSYc/YpYJV//6rqc0/hbwd0c7vgK4vrl6y2gJAwjkhkSGWK+z4KRA==
 
-element-plus@^2.7.2:
-  version "2.7.2"
-  resolved "http://39.108.216.210:9000/element-plus/-/element-plus-2.7.2.tgz#a5361ab0de49ea1e3c91955e4da3916a358b3bcf"
-  integrity sha512-AdEzBU/A68iUleio0MkQ46JeU5SeQvFFd915GJFScJmUEo5AmYg3OQ4pVjcu+p3b3Nupg9MC5Wa4xjAiC51kUg==
+element-plus@^2.7.3:
+  version "2.7.3"
+  resolved "http://39.108.216.210:9000/element-plus/-/element-plus-2.7.3.tgz#2266af776927110ad0d347211acbd914159eda20"
+  integrity sha512-OaqY1kQ2xzNyRFyge3fzM7jqMwux+464RBEqd+ybRV9xPiGxtgnj/sVK4iEbnKnzQIa9XK03DOIFzoToUhu1DA==
   dependencies:
     "@ctrl/tinycolor" "^3.4.1"
     "@element-plus/icons-vue" "^2.3.1"
@@ -2025,19 +1946,19 @@ has-flag@^4.0.0:
   resolved "http://39.108.216.210:9000/has-flag/-/has-flag-4.0.0.tgz"
   integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==
 
-hc-vue3-ui@^3.9.1:
-  version "3.9.1"
-  resolved "http://39.108.216.210:9000/hc-vue3-ui/-/hc-vue3-ui-3.9.1.tgz#dcf9408fe5ba8a131c72965f32babc4af975134d"
-  integrity sha512-6ZFX/E5Z1ZPq9CpOwzQzAfqzmGnKqiFH29RwKho+ebW9/7eBEkeOmWF7VIJwamVqGTzdFqp+8V/wwqX4Zdle/A==
+hc-vue3-ui@^3.9.4:
+  version "3.9.4"
+  resolved "http://39.108.216.210:9000/hc-vue3-ui/-/hc-vue3-ui-3.9.4.tgz#c2f6215a304a91fafe73b80edccc331944c2c670"
+  integrity sha512-QSrBWXD/ILFD86x7elcyV17uM9hB0nJpGmfUaiWgbEcUEt44+tfpa5Ur0x2T6Mw38SSJHr2k60epMefsL+F2uw==
   dependencies:
     axios "^1.6.8"
     dayjs "^1.11.11"
     js-base64 "^3.7.7"
-    js-fast-way "^0.4.9"
+    js-fast-way "^0.5.0"
     js-md5 "^0.8.3"
     sortablejs "^1.15.1"
     split.js "^1.6.5"
-    vue "3.4.26"
+    vue "3.4.27"
 
 html2canvas@1.4.1:
   version "1.4.1"
@@ -2161,11 +2082,6 @@ js-base64@^3.7.7:
   resolved "http://39.108.216.210:9000/js-base64/-/js-base64-3.7.7.tgz#e51b84bf78fbf5702b9541e2cb7bfcb893b43e79"
   integrity sha512-7rCnleh0z2CkXhH67J8K1Ytz0b2Y+yxTPL+/KOJoa20hfnVQ/3/T6W/KflYI4bRHRagNeXeU2bkNGI3v1oS/lw==
 
-js-fast-way@^0.4.9:
-  version "0.4.9"
-  resolved "http://39.108.216.210:9000/js-fast-way/-/js-fast-way-0.4.9.tgz#2f80881707c1058bbcdfc1d65b0364823230e43b"
-  integrity sha512-Y4nwTg+PK9keRiPRyItzzxHSVoQ6r3Y9YQbPzyqrj8DJ8nCRL5Z/Wynz722TGwu71zKeaU3Nwj9pTRhy5Ps80w==
-
 js-fast-way@^0.5.0:
   version "0.5.0"
   resolved "https://registry.npmjs.org/js-fast-way/-/js-fast-way-0.5.0.tgz#d1a5d10de0ec930fb793b90d1f6f1cbaec49a29e"
@@ -2731,10 +2647,10 @@ safe-buffer@~5.2.0:
   resolved "http://39.108.216.210:9000/safe-buffer/-/safe-buffer-5.2.1.tgz"
   integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==
 
-sass@^1.77.0:
-  version "1.77.0"
-  resolved "http://39.108.216.210:9000/sass/-/sass-1.77.0.tgz#e736c69aff9fae4a4e6dae60a979eee9c942f321"
-  integrity sha512-eGj4HNfXqBWtSnvItNkn7B6icqH14i3CiCGbzMKs3BAPTq62pp9NBYsBgyN4cA+qssqo9r26lW4JSvlaUUWbgw==
+sass@^1.77.1:
+  version "1.77.1"
+  resolved "http://39.108.216.210:9000/sass/-/sass-1.77.1.tgz#018cdfb206afd14724030c02e9fefd8f30a76cd0"
+  integrity sha512-OMEyfirt9XEfyvocduUIOlUSkWOXS/LAt6oblR/ISXCTukyavjex+zQNm51pPCOiFKY1QpWvEH1EeCkgyV3I6w==
   dependencies:
     chokidar ">=3.0.0 <4.0.0"
     immutable "^4.0.0"
@@ -3082,17 +2998,6 @@ vue-router@^4.3.2:
   dependencies:
     "@vue/devtools-api" "^6.5.1"
 
-vue@3.4.26:
-  version "3.4.26"
-  resolved "http://39.108.216.210:9000/vue/-/vue-3.4.26.tgz#936c97e37672c737705d7bdfa62c31af18742269"
-  integrity sha512-bUIq/p+VB+0xrJubaemrfhk1/FiW9iX+pDV+62I/XJ6EkspAO9/DXEjbDFoe8pIfOZBqfk45i9BMc41ptP/uRg==
-  dependencies:
-    "@vue/compiler-dom" "3.4.26"
-    "@vue/compiler-sfc" "3.4.26"
-    "@vue/runtime-dom" "3.4.26"
-    "@vue/server-renderer" "3.4.26"
-    "@vue/shared" "3.4.26"
-
 vue@3.4.27:
   version "3.4.27"
   resolved "http://39.108.216.210:9000/vue/-/vue-3.4.27.tgz#40b7d929d3e53f427f7f5945386234d2854cc2a1"