新增第二耗材价格自动关联并计算
This commit is contained in:
@@ -12,7 +12,13 @@
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="耗材价格" prop="price">
|
||||
<el-input-number v-model="form.price" placeholder="请输入耗材价格"></el-input-number>
|
||||
<div class="center">
|
||||
<el-input-number v-model="form.price" placeholder="请输入"></el-input-number>
|
||||
<div class="ipt">
|
||||
第二单位价格:
|
||||
<el-input-number v-model="twoPrice" placeholder="请输入"></el-input-number>
|
||||
</div>
|
||||
</div>
|
||||
</el-form-item>
|
||||
<!-- <el-form-item label="库存">
|
||||
<el-input-number v-model="form.stockNumber" placeholder="请输入库存值"></el-input-number>
|
||||
@@ -23,7 +29,7 @@
|
||||
<el-form-item label="单位" prop="conUnit">
|
||||
<el-input v-model="form.conUnit" placeholder="请输入单位"></el-input>
|
||||
</el-form-item>
|
||||
<el-alert class="u-m-t-10 u-m-b-10" title="提示" description="换算值为第二单位*第二单位转换数量=第一单位" type="warning" show-icon
|
||||
<el-alert class="u-m-t-10 u-m-b-10" title="提示" description="换算值为第一单位*第二单位转换数量=第二单位" type="warning" show-icon
|
||||
:closable="false"></el-alert>
|
||||
<el-form-item label="预警值">
|
||||
<el-input-number v-model="form.conWarning" placeholder="请输入耗材预警值"></el-input-number>
|
||||
@@ -50,9 +56,11 @@
|
||||
|
||||
|
||||
<script setup>
|
||||
import { ref, reactive, computed } from "vue";
|
||||
import consApi from "@/api/product/cons";
|
||||
import consGroupApi from "@/api/product/cons-group";
|
||||
import { ElMessage } from "element-plus";
|
||||
|
||||
const consGroups = ref([]);
|
||||
const rules = {
|
||||
conName: [{ required: true, message: "请输入耗材名称", trigger: "blur" }],
|
||||
@@ -94,6 +102,21 @@ const form = reactive({
|
||||
...basicForm,
|
||||
});
|
||||
|
||||
// 第二单位价格为计算字段:第一单位价格 * 第二单位转换数量
|
||||
const twoPrice = computed({
|
||||
get() {
|
||||
const p = Number(form.price || 0);
|
||||
const c = Number(form.conUnitTwoConvert || 0);
|
||||
return c ? Number((p * c).toFixed(2)) : 0;
|
||||
},
|
||||
set(val) {
|
||||
const c = Number(form.conUnitTwoConvert || 0);
|
||||
if (!c) return;
|
||||
// 修改第二单位价格时,反算第一单位价格并保留两位小数
|
||||
form.price = Number((Number(val) / c).toFixed(2));
|
||||
},
|
||||
});
|
||||
|
||||
const show = ref(false);
|
||||
let dialogtitle = ref("");
|
||||
function open(item) {
|
||||
@@ -171,4 +194,18 @@ defineExpose({
|
||||
open,
|
||||
close,
|
||||
});
|
||||
</script>
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
.center {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
|
||||
.ipt {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
gap: 5px;
|
||||
margin-left: 28px;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
Reference in New Issue
Block a user