|
@@ -62,24 +62,14 @@
|
|
|
<span>{{ row.parentName }}</span>
|
|
<span>{{ row.parentName }}</span>
|
|
|
</template>
|
|
</template>
|
|
|
</el-table-column>
|
|
</el-table-column>
|
|
|
- <el-table-column label="推荐用量类型" align="center" width="70">
|
|
|
|
|
|
|
+ <el-table-column label="NRV" align="center" width="150">
|
|
|
<template slot-scope="{row}">
|
|
<template slot-scope="{row}">
|
|
|
- <span>{{ row.recommendType | recommendTypeFilter }}</span>
|
|
|
|
|
|
|
+ <span>{{ row | nutrientNrvFilter }}</span>
|
|
|
</template>
|
|
</template>
|
|
|
</el-table-column>
|
|
</el-table-column>
|
|
|
- <el-table-column label="每日推荐量值" align="center" width="70">
|
|
|
|
|
|
|
+ <el-table-column label="NRV单位" align="center" width="80">
|
|
|
<template slot-scope="{row}">
|
|
<template slot-scope="{row}">
|
|
|
- <span>{{ row.recommend ? `${row.recommend} ${row.recommendUnit}` : '' }}</span>
|
|
|
|
|
- </template>
|
|
|
|
|
- </el-table-column>
|
|
|
|
|
- <el-table-column label="每日推荐量范围起始值" align="center" width="80">
|
|
|
|
|
- <template slot-scope="{row}">
|
|
|
|
|
- <span>{{ row.recommendBegin ? `${row.recommendBegin} ${row.recommendUnit}` : '' }}</span>
|
|
|
|
|
- </template>
|
|
|
|
|
- </el-table-column>
|
|
|
|
|
- <el-table-column label="每日推荐量范围截止值" align="center" width="80">
|
|
|
|
|
- <template slot-scope="{row}">
|
|
|
|
|
- <span>{{ row.recommendEnd ? `${row.recommendEnd} ${row.recommendUnit}` : '' }}</span>
|
|
|
|
|
|
|
+ <span>{{ row.nrvUnit }}</span>
|
|
|
</template>
|
|
</template>
|
|
|
</el-table-column>
|
|
</el-table-column>
|
|
|
<el-table-column label="创建时间" width="180px" align="center">
|
|
<el-table-column label="创建时间" width="180px" align="center">
|
|
@@ -138,33 +128,32 @@
|
|
|
<el-form-item label="编码" prop="code">
|
|
<el-form-item label="编码" prop="code">
|
|
|
<el-input v-model="params.code" placeholder="编码" :disabled="dialogStatus === 'edit'" />
|
|
<el-input v-model="params.code" placeholder="编码" :disabled="dialogStatus === 'edit'" />
|
|
|
</el-form-item>
|
|
</el-form-item>
|
|
|
- <el-form-item label="推荐用量类型" prop="recommendType">
|
|
|
|
|
- <el-radio v-model="params.recommendType" :label="0">值</el-radio>
|
|
|
|
|
- <el-radio v-model="params.recommendType" :label="1">范围</el-radio>
|
|
|
|
|
- <el-radio v-model="params.recommendType" :label="2">无</el-radio>
|
|
|
|
|
|
|
+ <el-form-item label="NRV类型" prop="nrvType">
|
|
|
|
|
+ <el-radio v-model="nrvType" :label="0" @change="nrvTypeChange">值</el-radio>
|
|
|
|
|
+ <el-radio v-model="nrvType" :label="1" @change="nrvTypeChange">范围</el-radio>
|
|
|
|
|
+ </el-form-item>
|
|
|
|
|
+ <el-form-item v-if="nrvType===0" prop="nrv" label="NRV">
|
|
|
|
|
+ <el-input v-model="params.nrv" placeholder="NRV" />
|
|
|
</el-form-item>
|
|
</el-form-item>
|
|
|
- <el-form-item v-if="params.recommendType!==2" label="推荐量单位" prop="recommendUnit">
|
|
|
|
|
|
|
+ <el-form-item v-if="nrvType===1" prop="nrvMin" label="NRV大于等于:">
|
|
|
|
|
+ <el-input v-model="params.nrvMin" />
|
|
|
|
|
+ </el-form-item>
|
|
|
|
|
+ <el-form-item v-if="nrvType===1" prop="nrvMax" label="NRV小于等于:">
|
|
|
|
|
+ <el-input v-model="params.nrvMax" />
|
|
|
|
|
+ </el-form-item>
|
|
|
|
|
+ <el-form-item label="NRV单位" prop="nrvUnit">
|
|
|
<el-select
|
|
<el-select
|
|
|
- v-model="params.recommendUnit"
|
|
|
|
|
|
|
+ v-model="params.nrvUnit"
|
|
|
filterable
|
|
filterable
|
|
|
remote
|
|
remote
|
|
|
reserve-keyword
|
|
reserve-keyword
|
|
|
- placeholder="请选择推荐量单位"
|
|
|
|
|
|
|
+ placeholder="请选择NRV单位"
|
|
|
:remote-method="queryUnits"
|
|
:remote-method="queryUnits"
|
|
|
:loading="loading"
|
|
:loading="loading"
|
|
|
>
|
|
>
|
|
|
<el-option v-for="item in units" :key="item.id" :label="item.name" :value="item.name" />
|
|
<el-option v-for="item in units" :key="item.id" :label="item.name" :value="item.name" />
|
|
|
</el-select>
|
|
</el-select>
|
|
|
</el-form-item>
|
|
</el-form-item>
|
|
|
- <el-form-item v-if="params.recommendType===0" prop="recommend" label="每日推荐摄入量">
|
|
|
|
|
- <el-input v-model="params.recommend" placeholder="每日推荐摄入量" />
|
|
|
|
|
- </el-form-item>
|
|
|
|
|
- <el-form-item v-if="params.recommendType===1" prop="recommendBegin" label="每日推荐摄入量范围-开始值">
|
|
|
|
|
- <el-input v-model="params.recommendBegin" placeholder="每日推荐摄入量范围-开始值" />
|
|
|
|
|
- </el-form-item>
|
|
|
|
|
- <el-form-item v-if="params.recommendType===1" prop="recommendEnd" label="每日推荐摄入量范围-截止值">
|
|
|
|
|
- <el-input v-model="params.recommendEnd" placeholder="每日推荐摄入量范围-截止值" />
|
|
|
|
|
- </el-form-item>
|
|
|
|
|
<el-form-item label="上级营养素" prop="parentId">
|
|
<el-form-item label="上级营养素" prop="parentId">
|
|
|
<el-select
|
|
<el-select
|
|
|
v-model="params.parentId"
|
|
v-model="params.parentId"
|
|
@@ -200,14 +189,20 @@ import SingleImage from '@/components/Upload/SingleImage'
|
|
|
import { getList, update, remove, create, updateSortOrder } from '@/api/nutrient'
|
|
import { getList, update, remove, create, updateSortOrder } from '@/api/nutrient'
|
|
|
import { getList as getUnits } from '@/api/unit'
|
|
import { getList as getUnits } from '@/api/unit'
|
|
|
|
|
|
|
|
-const recommendTypes = { 0: '值', 1: '范围', 2: '无' }
|
|
|
|
|
-
|
|
|
|
|
export default {
|
|
export default {
|
|
|
name: 'NutrientList',
|
|
name: 'NutrientList',
|
|
|
components: { Pagination, SingleImage },
|
|
components: { Pagination, SingleImage },
|
|
|
filters: {
|
|
filters: {
|
|
|
- recommendTypeFilter(value) {
|
|
|
|
|
- return recommendTypes[value]
|
|
|
|
|
|
|
+ nutrientNrvFilter(row) {
|
|
|
|
|
+ if (row.nrvMin && row.nrvMax) {
|
|
|
|
|
+ return `${row.nrvMin} ~ ${row.nrvMax}`
|
|
|
|
|
+ } else if (row.nrvMin) {
|
|
|
|
|
+ return `≥ ${row.nrvMin}`
|
|
|
|
|
+ } else if (row.nrvMax) {
|
|
|
|
|
+ return `≤ ${row.nrvMax}`
|
|
|
|
|
+ } else {
|
|
|
|
|
+ return row.nrv
|
|
|
|
|
+ }
|
|
|
}
|
|
}
|
|
|
},
|
|
},
|
|
|
data() {
|
|
data() {
|
|
@@ -230,7 +225,8 @@ export default {
|
|
|
rules: {
|
|
rules: {
|
|
|
name: [{ required: true, message: '名称不允许为空', trigger: 'blur' }]
|
|
name: [{ required: true, message: '名称不允许为空', trigger: 'blur' }]
|
|
|
},
|
|
},
|
|
|
- params: { recommendType: 2 },
|
|
|
|
|
|
|
+ params: { },
|
|
|
|
|
+ nrvType: 0,
|
|
|
units: [],
|
|
units: [],
|
|
|
loading: false,
|
|
loading: false,
|
|
|
parentNutrients: []
|
|
parentNutrients: []
|
|
@@ -254,7 +250,10 @@ export default {
|
|
|
handleCreateOrUpdate(dialogStatus, row) {
|
|
handleCreateOrUpdate(dialogStatus, row) {
|
|
|
this.queryUnits()
|
|
this.queryUnits()
|
|
|
this.queryNutrients()
|
|
this.queryNutrients()
|
|
|
- this.params = dialogStatus === 'create' ? { recommendType: 2 } : Object.assign({}, row) // copy obj
|
|
|
|
|
|
|
+ this.params = dialogStatus === 'create' ? {} : Object.assign({}, row)
|
|
|
|
|
+ if (dialogStatus !== 'create' && (row.nrvMin || row.nrvMax)) {
|
|
|
|
|
+ this.nrvType = 1
|
|
|
|
|
+ }
|
|
|
this.dialogStatus = dialogStatus
|
|
this.dialogStatus = dialogStatus
|
|
|
this.dialogFormVisible = true
|
|
this.dialogFormVisible = true
|
|
|
this.$nextTick(() => {
|
|
this.$nextTick(() => {
|
|
@@ -311,6 +310,11 @@ export default {
|
|
|
this.$message.error(res.data.message)
|
|
this.$message.error(res.data.message)
|
|
|
this.fetchData()
|
|
this.fetchData()
|
|
|
})
|
|
})
|
|
|
|
|
+ },
|
|
|
|
|
+ nrvTypeChange(value) {
|
|
|
|
|
+ this.$set(this.params, 'nrv', '')
|
|
|
|
|
+ this.$set(this.params, 'nrvMin', '')
|
|
|
|
|
+ this.$set(this.params, 'nrvMax', '')
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|