瀏覽代碼

数字输入框修改

duy 6 月之前
父節點
當前提交
77aa973cc2
共有 2 個文件被更改,包括 31 次插入20 次删除
  1. 29 18
      src/renderer/src/views/project/data/addAndEdit.vue
  2. 2 2
      src/renderer/src/views/project/data/input-number.vue

+ 29 - 18
src/renderer/src/views/project/data/addAndEdit.vue

@@ -45,10 +45,10 @@
                                     <el-input v-model="baseForm.operationCompany" clearable placeholder="请输入" />
                                 </el-form-item>
                                 <el-form-item label="实际运营里程(公里):" prop="actualOperatingMileage">
-                                    <HcInputNumber v-model="baseForm.actualOperatingMileage" clearable placeholder="请输入" class="w-full" />
+                                    <HcInputNumber1 v-model="baseForm.actualOperatingMileage" clearable placeholder="请输入" class="w-full" />
                                 </el-form-item>
                                 <el-form-item label="车道数" prop="lane">
-                                    <HcInputNumber v-model="baseForm.lane" clearable placeholder="请输入" class="w-full" />
+                                    <HcInputNumber1 v-model="baseForm.lane" clearable placeholder="请输入" class="w-full" />
                                 </el-form-item>
                             </div>
                         </div>
@@ -78,7 +78,7 @@
                             <div class="jitems-center mt-1 w-full flex justify-between">
                                 <span class="text-gray">年度收入</span>
                                 <div class="ml-3 w-64 flex items-center whitespace-nowrap">
-                                    <HcInputNumber v-model="yearFuns[selectIndex].tollInflow" clearable placeholder="请输入" :disabled="data?.isView" class="w-full" />
+                                    <HcInputNumber1 v-model="yearFuns[selectIndex].tollInflow" clearable placeholder="请输入" :disabled="data?.isView" class="w-full" />
                                     <span class="ml-1 flex-shrink-0 font-900">万元</span>
                                 </div>
                             </div>
@@ -91,7 +91,7 @@
                             <div class="mt-1 w-full flex items-center justify-between">
                                 <span class="text-gray">年度收入</span>
                                 <div class="ml-3 w-64 flex items-center whitespace-nowrap">
-                                    <HcInputNumber v-model="yearFuns[selectIndex].otherInflow" clearable placeholder="请输入" :disabled="data?.isView" class="w-full" />
+                                    <HcInputNumber1 v-model="yearFuns[selectIndex].otherInflow" clearable placeholder="请输入" :disabled="data?.isView" class="w-full" />
                                     <span class="ml-1 flex-shrink-0 font-900">万元</span>
                                 </div>
                             </div>
@@ -109,7 +109,7 @@
                             <div class="jitems-center mt-1 w-full flex justify-between">
                                 <span class="text-gray">总投资</span>
                                 <div class="ml-3 w-64 flex items-center whitespace-nowrap">
-                                    <HcInputNumber v-model="yearFuns[selectIndex].constructInvestOutflow" clearable placeholder="请输入" :disabled="data?.isView" class="w-full" />
+                                    <HcInputNumber1 v-model="yearFuns[selectIndex].constructInvestOutflow" clearable placeholder="请输入" :disabled="data?.isView" class="w-full" />
                                     <span class="ml-1 flex-shrink-0 font-900">万元</span>
                                 </div>
                             </div>
@@ -122,7 +122,7 @@
                             <div class="mt-1 w-full flex items-center justify-between">
                                 <span class="text-gray">投入比例</span>
                                 <div class="ml-3 w-64">
-                                    <HcInputNumber v-model="yearFuns[selectIndex].constructProportionOutflow" clearable placeholder="请输入" :disabled="data?.isView" class="w-full" />
+                                    <el-input v-model="yearFuns[selectIndex].constructProportionOutflow" clearable placeholder="请输入(格式如:14:45:60)" :disabled="data?.isView" class="w-full" @input="(value) => validateInput(value, selectIndex)" />
                                 </div>
                             </div>
                         </div>
@@ -133,7 +133,7 @@
                             <div class="mt-1 w-full flex items-center justify-between">
                                 <span class="text-gray">年度偿还</span>
                                 <div class="ml-3 w-64 flex items-center whitespace-nowrap">
-                                    <HcInputNumber v-model="yearFuns[selectIndex].borrowPrincipalOutflow" clearable placeholder="请输入" :disabled="data?.isView" class="w-full" />
+                                    <HcInputNumber1 v-model="yearFuns[selectIndex].borrowPrincipalOutflow" clearable placeholder="请输入" :disabled="data?.isView" class="w-full" />
                                     <span class="ml-1 flex-shrink-0 font-900">万元</span>
                                 </div>
                             </div>
@@ -147,7 +147,7 @@
                             <div class="jitems-center mt-1 w-full flex justify-between">
                                 <span class="text-gray">年度偿还</span>
                                 <div class="ml-3 w-64 flex items-center whitespace-nowrap">
-                                    <HcInputNumber v-model="yearFuns[selectIndex].borrowInterestOutflow" clearable placeholder="请输入" :disabled="data?.isView" class="w-full" />
+                                    <HcInputNumber1 v-model="yearFuns[selectIndex].borrowInterestOutflow" clearable placeholder="请输入" :disabled="data?.isView" class="w-full" />
                                     <span class="ml-1 flex-shrink-0 font-900">万元</span>
                                 </div>
                             </div>
@@ -160,35 +160,35 @@
                             <div class="mt-1 w-full flex items-center justify-between">
                                 <span class="text-gray">养护、小修费</span>
                                 <div class="ml-3 w-64 flex items-center whitespace-nowrap">
-                                    <HcInputNumber v-model="yearFuns[selectIndex].operateMaintainOutflow" clearable placeholder="请输入" :disabled="data?.isView" class="w-full" />
+                                    <HcInputNumber1 v-model="yearFuns[selectIndex].operateMaintainOutflow" clearable placeholder="请输入" :disabled="data?.isView" class="w-full" />
                                     <span class="ml-1 flex-shrink-0 font-900">万元</span>
                                 </div>
                             </div>
                             <div class="mt-1 w-full flex items-center justify-between">
                                 <span class="text-gray">大修费</span>
                                 <div class="ml-3 w-64 flex items-center whitespace-nowrap">
-                                    <HcInputNumber v-model="yearFuns[selectIndex].operateOverhaulOutflow" clearable placeholder="请输入" :disabled="data?.isView" class="w-full" />
+                                    <HcInputNumber1 v-model="yearFuns[selectIndex].operateOverhaulOutflow" clearable placeholder="请输入" :disabled="data?.isView" class="w-full" />
                                     <span class="ml-1 flex-shrink-0 font-900">万元</span>
                                 </div>
                             </div>
                             <div class="mt-1 w-full flex items-center justify-between">
                                 <span class="text-gray">资本性支出</span>
                                 <div class="ml-3 w-64 flex items-center whitespace-nowrap">
-                                    <HcInputNumber v-model="yearFuns[selectIndex].operateCapitalOutflow" clearable placeholder="请输入" :disabled="data?.isView" class="w-full" />
+                                    <HcInputNumber1 v-model="yearFuns[selectIndex].operateCapitalOutflow" clearable placeholder="请输入" :disabled="data?.isView" class="w-full" />
                                     <span class="ml-1 flex-shrink-0 font-900">万元</span>
                                 </div>
                             </div>
                             <div class="mt-1 w-full flex items-center justify-between">
                                 <span class="text-gray">运营管理费</span>
                                 <div class="ml-3 w-64 flex items-center whitespace-nowrap">
-                                    <HcInputNumber v-model="yearFuns[selectIndex].operateOperationOutflow" clearable placeholder="请输入" :disabled="data?.isView" class="w-full" />
+                                    <HcInputNumber1 v-model="yearFuns[selectIndex].operateOperationOutflow" clearable placeholder="请输入" :disabled="data?.isView" class="w-full" />
                                     <span class="ml-1 flex-shrink-0 font-900">万元</span>
                                 </div>
                             </div>
                             <div class="mt-1 w-full flex items-center justify-between">
                                 <span class="text-gray">其他费用</span>
                                 <div class="ml-3 w-64 flex items-center whitespace-nowrap">
-                                    <HcInputNumber v-model="yearFuns[selectIndex].operateOtherOutflow" clearable placeholder="请输入" :disabled="data?.isView" class="w-full" />
+                                    <HcInputNumber1 v-model="yearFuns[selectIndex].operateOtherOutflow" clearable placeholder="请输入" :disabled="data?.isView" class="w-full" />
                                     <span class="ml-1 flex-shrink-0 font-900">万元</span>
                                 </div>
                             </div>
@@ -201,7 +201,7 @@
                             <div class="mt-1 w-full flex items-center justify-between">
                                 <span class="text-gray">年度税金</span>
                                 <div class="ml-3 w-64 flex items-center whitespace-nowrap">
-                                    <HcInputNumber v-model="yearFuns[selectIndex].operationTaxesOutflow" clearable placeholder="请输入" :disabled="data?.isView" class="w-full" />
+                                    <HcInputNumber1 v-model="yearFuns[selectIndex].operationTaxesOutflow" clearable placeholder="请输入" :disabled="data?.isView" class="w-full" />
                                     <span class="ml-1 flex-shrink-0 font-900">万元</span>
                                 </div>
                             </div>
@@ -215,7 +215,7 @@
                             <div class="jitems-center mt-1 w-full flex justify-between">
                                 <span class="text-gray">年度费用</span>
                                 <div class="ml-3 w-64 flex items-center whitespace-nowrap">
-                                    <HcInputNumber v-model="yearFuns[selectIndex].otherOutflow" clearable placeholder="请输入" :disabled="data?.isView" class="w-full" />
+                                    <HcInputNumber1 v-model="yearFuns[selectIndex].otherOutflow" clearable placeholder="请输入" :disabled="data?.isView" class="w-full" />
                                     <span class="ml-1 flex-shrink-0 font-900">万元</span>
                                 </div>
                             </div>
@@ -244,7 +244,7 @@
                             <div class="jitems-center mt-1 w-full flex justify-between">
                                 <span class="text-gray">车流量</span>
                                 <div class="ml-3 w-64 flex items-center">
-                                    <HcInputNumber 
+                                    <HcInputNumber1 
                                         v-model="carList[carSelectIndex].numbers[index]" 
                                         clearable 
                                         placeholder="请输入" 
@@ -277,7 +277,7 @@ import { getDictionaryData } from '~src/utils/tools'
 import { arrIndex, formValidate, getArrValue } from 'js-fast-way'
 import projectApi from '~api/promanage/project'
 import { getDictionary } from '~api/dictbiz.js'
-import HcInputNumber from './input-number.vue'
+import HcInputNumber1 from './input-number.vue'
 const props = defineProps({
     data: {
         type: Object,
@@ -305,6 +305,13 @@ const stageYearOptions = ref([
 const stageYearOptions1 = ref([
   
 ])
+const validateInput = (value, index) => {
+    if (yearFuns.value && yearFuns.value[index]) {
+        // 移除所有非数字和英文符号的字符
+        const filteredValue = value.replace(/[^0-9:.-]/g, '')
+        yearFuns.value[index].constructProportionOutflow = filteredValue
+    }
+}
 const yearFuns = ref([
 {
 
@@ -398,7 +405,11 @@ watch(() => props.data, (data) => {
         },
 ]
 baseForm.value = {}
-stageYearOptions.value = []
+stageYearOptions.value = [{
+        value: '1',
+        label: '建设期',
+    
+}]
     return
   }
     baseForm.value = data

+ 2 - 2
src/renderer/src/views/project/data/input-number.vue

@@ -1,5 +1,5 @@
 <template>
-    <el-input-number v-model="warningValue" :min="0" class="warn-innput w-46px" :controls="false" @blur="inputBlur" />
+    <el-input-number v-model="warningValue" :min="0" class="w-46px" :controls="false" @blur="inputBlur" />
 </template>
 
 <script setup>
@@ -7,7 +7,7 @@ import { ref, watch } from 'vue'
 import { isNullES } from 'js-fast-way'
 
 defineOptions({
-    name: 'HcInputNumber',
+    name: 'HcInputNumberNum',
 })
 
 //双向绑定