Forráskód Böngészése

发票管理新增报告查询

sangwenwei 1 éve
szülő
commit
008d50e27b

+ 18 - 28
src/views/cw/projectReportArchive/ProjectReportArchiveForm.vue

@@ -115,7 +115,8 @@
 					  :rules="[
                   {required: true, message:'请输入审计收费(元)', trigger:'blur'}
                		]">
-					  <el-input-number
+					  <el-input
+						  @input="fixedAccount"
 						  v-model="inputForm.auditMoney"
 						  controls-position="right"
 						  :controls="false"
@@ -123,9 +124,9 @@
 						  :min="0.00"
 						  :max="9999999999999999"
 						  placeholder="请输入审计收费(元)"
-						  @blur="inputForm.auditMoney=twoDecimalPlaces(inputForm.auditMoney)"
+						  :readonly="true"
 						  clearable>
-					  </el-input-number>
+					  </el-input>
 				  </el-form-item>
 
 			  	</el-col>
@@ -751,34 +752,23 @@
           }
         }
       },
-	  twoDecimalPlaces (num) {
-			let str = num.toString()
-			var len1 = str.substr(0, 1)
-			var len2 = str.substr(1, 1)
-			// eslint-disable-next-line eqeqeq
-			if (str.length > 1 && len1 == 0 && len2 != '.') {
-				str = str.substr(1, 1)
+		fixedAccount () {
+			if (isNaN(this.inputForm.auditMoney) && !/^-$/.test(this.inputForm.auditMoney)) {
+				this.inputForm.auditMoney = ''
 			}
-			// eslint-disable-next-line eqeqeq
-			if (len1 == '.') {
-				str = ''
+			if (!/^[+-]?\d*\.{0,1}\d{0,1}$/.test(this.inputForm.auditMoney)) {
+				this.inputForm.auditMoney = this.inputForm.auditMoney.replace(/\.\d{2,}$/, this.inputForm.auditMoney.substr(this.inputForm.account.indexOf('.'), 3))
 			}
-			// eslint-disable-next-line eqeqeq
-			if (str.indexOf('.') != -1) {
-				var str_ = str.substr(str.indexOf('.') + 1)
-				// eslint-disable-next-line eqeqeq
-				if (str_.indexOf('.') != -1) {
-					str = str.substr(0, str.indexOf('.') + str_.indexOf('.') + 1)
-				}
-				if (str_.length > 2) {
-					this.$message.warning(`金额小数点后只能输入两位,请正确输入!`)
-					return (str = '')
-				}
+			// 禁止录入整数部分两位以上,但首位为0
+			var regStrs = [
+				['^(\\-)?0(\\d+)$', '$1']
+			]
+			for (var i = 0; i < regStrs.length; i++) {
+				var reg = new RegExp(regStrs[i][0])
+				var result = this.inputForm.auditMoney.replace(reg, regStrs[i][1])
+				this.inputForm.auditMoney = result
 			}
-			// eslint-disable-next-line no-useless-escape
-			str = str.replace(/[^\d^\.]+/g, '') // 保留数字和小数点
-			return str
-	  },
+		},
     }
   }
 </script>