|
@@ -30,17 +30,17 @@
|
|
</el-col>
|
|
</el-col>
|
|
<el-col :span="8">
|
|
<el-col :span="8">
|
|
<el-form-item label="单价:">
|
|
<el-form-item label="单价:">
|
|
- <el-input-number v-model="baseForm.price" :controls="false" :min="0" class="w-100" :precision="2" @change="calculate" />
|
|
|
|
|
|
+ <el-input v-model="baseForm.price" @change="calculatePrice" />
|
|
</el-form-item>
|
|
</el-form-item>
|
|
</el-col>
|
|
</el-col>
|
|
<el-col :span="8">
|
|
<el-col :span="8">
|
|
<el-form-item label="数量:" prop="meterAmount">
|
|
<el-form-item label="数量:" prop="meterAmount">
|
|
- <el-input-number v-model="baseForm.meterAmount" :controls="false" class="w-100" :precision="2" @change="calculate" />
|
|
|
|
|
|
+ <el-input v-model="baseForm.meterAmount" @change="calculateMount" />
|
|
</el-form-item>
|
|
</el-form-item>
|
|
</el-col>
|
|
</el-col>
|
|
<el-col :span="8">
|
|
<el-col :span="8">
|
|
<el-form-item label="计量金额:">
|
|
<el-form-item label="计量金额:">
|
|
- <el-input-number v-model="baseForm.meterMoney" disabled :controls="false" :min="0" class="w-100" :precision="2" />
|
|
|
|
|
|
+ <el-input v-model="baseForm.meterMoney" disabled />
|
|
</el-form-item>
|
|
</el-form-item>
|
|
</el-col>
|
|
</el-col>
|
|
<el-col :span="8">
|
|
<el-col :span="8">
|
|
@@ -96,7 +96,7 @@
|
|
<div class="flex-1 text-[16px] text-blue">附件列表</div>
|
|
<div class="flex-1 text-[16px] text-blue">附件列表</div>
|
|
<div class="text-orange font-400">可上传 图片(png、jpg、jpeg)、Excel(xls、xlsx)、PDF、Word(doc、docx)文件</div>
|
|
<div class="text-orange font-400">可上传 图片(png、jpg、jpeg)、Excel(xls、xlsx)、PDF、Word(doc、docx)文件</div>
|
|
</div>
|
|
</div>
|
|
- <el-form :model="baseForm" label-position="top" style="overflow-y: auto;height: 100px;">
|
|
|
|
|
|
+ <el-form :model="baseForm" label-position="top" style="overflow-y: auto;height: 150px;">
|
|
<el-form-item label="">
|
|
<el-form-item label="">
|
|
<hc-form-upload type="list" :src="fileName" :h-props="hProps" @upload="formItemUpload" @change="formItemChange" />
|
|
<hc-form-upload type="list" :src="fileName" :h-props="hProps" @upload="formItemUpload" @change="formItemChange" />
|
|
</el-form-item>
|
|
</el-form-item>
|
|
@@ -114,7 +114,9 @@ import { useAppStore } from '~src/store'
|
|
import contractApi from '~api/debit-pay/material/contract.js'
|
|
import contractApi from '~api/debit-pay/material/contract.js'
|
|
import periodApi from '~api/debit-pay/material/periods.js'
|
|
import periodApi from '~api/debit-pay/material/periods.js'
|
|
import orderApi from '~api/debit-pay/material/order.js'
|
|
import orderApi from '~api/debit-pay/material/order.js'
|
|
-import { arrToKey, formValidate, getArrValue } from 'js-fast-way'
|
|
|
|
|
|
+import { formValidate, getArrValue, isNullES } from 'js-fast-way'
|
|
|
|
+import { isNumberReg } from '~uti/tools'
|
|
|
|
+import BigNumber from 'bignumber.js'
|
|
const props = defineProps({
|
|
const props = defineProps({
|
|
ids: {
|
|
ids: {
|
|
type: [String, Number],
|
|
type: [String, Number],
|
|
@@ -174,8 +176,32 @@ watch(isShow, (val) => {
|
|
}
|
|
}
|
|
})
|
|
})
|
|
//计算计量金额
|
|
//计算计量金额
|
|
-const calculate = ()=>{
|
|
|
|
- baseForm.value.meterMoney = baseForm.value?.meterAmount * baseForm.value?.price
|
|
|
|
|
|
+// const calculate = ()=>{
|
|
|
|
+// baseForm.value.meterMoney = baseForm.value?.meterAmount * baseForm.value?.price
|
|
|
|
+// }
|
|
|
|
+//数量改变计算计量金额
|
|
|
|
+const calculateMount = (val)=>{
|
|
|
|
+ //如果为空
|
|
|
|
+ let mount = val
|
|
|
|
+ const isMeter = isNumberReg(mount)
|
|
|
|
+ if (isNullES(mount) || !isMeter) {
|
|
|
|
+ mount = 0
|
|
|
|
+ baseForm.value.meterAmount = mount
|
|
|
|
+ }
|
|
|
|
+ //计算计量金额
|
|
|
|
+ baseForm.value.meterMoney = (BigNumber(baseForm.value?.price).multipliedBy(mount)).toString()
|
|
|
|
+}
|
|
|
|
+//单价改变计算计量金额
|
|
|
|
+const calculatePrice = (val)=>{
|
|
|
|
+ //如果为空
|
|
|
|
+ let price = val
|
|
|
|
+ const isMeter = isNumberReg(price)
|
|
|
|
+ if (isNullES(price) || !isMeter) {
|
|
|
|
+ price = 0
|
|
|
|
+ baseForm.value.price = price
|
|
|
|
+ }
|
|
|
|
+ //计算计量金额
|
|
|
|
+ baseForm.value.meterMoney = (BigNumber(baseForm.value?.meterAmount).multipliedBy(price)).toString()
|
|
}
|
|
}
|
|
const detailsModalShow = () => {
|
|
const detailsModalShow = () => {
|
|
nextTick(() => {
|
|
nextTick(() => {
|