|
@@ -235,11 +235,7 @@
|
|
</el-col>
|
|
</el-col>
|
|
<el-col :span="4">
|
|
<el-col :span="4">
|
|
<el-select v-model="sItem.condition" filterable clearable placeholder="请选择" style="width: 100%;">
|
|
<el-select v-model="sItem.condition" filterable clearable placeholder="请选择" style="width: 100%;">
|
|
- <el-option label="包含" value="包含" />
|
|
|
|
- <el-option label="不包含" value="不包含" />
|
|
|
|
- <el-option label="大于" value="大于" />
|
|
|
|
- <el-option label="小于" value="小于" />
|
|
|
|
- <el-option label="等于" value="等于" />
|
|
|
|
|
|
+ <el-option v-for="(item,index) in selectFormula" :key="index" :label="item.formula" :value="item.formula" />
|
|
</el-select>
|
|
</el-select>
|
|
</el-col>
|
|
</el-col>
|
|
<el-col :span="6">
|
|
<el-col :span="6">
|
|
@@ -266,8 +262,63 @@
|
|
</div>
|
|
</div>
|
|
</el-card>
|
|
</el-card>
|
|
</el-col>
|
|
</el-col>
|
|
|
|
+ <!-- 质控预警 -->
|
|
|
|
+ <el-col :span="24">
|
|
|
|
+ <el-divider />
|
|
|
|
+ <el-card v-for="(item, index) of ruleForm.rule" :key="'rule'+index" class="box-card" shadow="never">
|
|
|
|
+ <div slot="header" class="clearfix box-card_header span">
|
|
|
|
+ <span class="text">质控预警</span>
|
|
|
|
+ </div>
|
|
|
|
+ <div>
|
|
|
|
+ <el-row v-for="(sItem, sIndex) of item.condition_content" :key="'tj'+sIndex" :gutter="12" class="mb12">
|
|
|
|
+ <el-col :span="2">
|
|
|
|
+ <div class="text-right">条件{{ sIndex + 1 }}</div>
|
|
|
|
+ </el-col>
|
|
|
|
+ <el-col :span="8">
|
|
|
|
+ <el-cascader
|
|
|
|
+ v-model="sItem.param1"
|
|
|
|
+ :options="objects"
|
|
|
|
+ :props="{
|
|
|
|
+ expandTrigger: 'hover',
|
|
|
|
+ value: 'field',
|
|
|
|
+ label: 'field_name',
|
|
|
|
+ children: 'child'
|
|
|
|
+ }"
|
|
|
|
+ clearable
|
|
|
|
+ filterable
|
|
|
|
+ :show-all-levels="false"
|
|
|
|
+ placeholder="请选择"
|
|
|
|
+ style="width: 100%;"
|
|
|
|
+ />
|
|
|
|
+ </el-col>
|
|
|
|
+ <el-col :span="4">
|
|
|
|
+ <el-select v-model="sItem.condition" filterable clearable placeholder="请选择" style="width: 100%;">
|
|
|
|
+ <el-option label="包含" value="包含" />
|
|
|
|
+ <el-option label="不包含" value="不包含" />
|
|
|
|
+ <el-option label="大于" value="大于" />
|
|
|
|
+ <el-option label="小于" value="小于" />
|
|
|
|
+ <el-option label="等于" value="等于" />
|
|
|
|
+ </el-select>
|
|
|
|
+ </el-col>
|
|
|
|
+ <el-col :span="6">
|
|
|
|
+ <el-input v-model="sItem.param2" clearable placeholder="请输入" style="width: 100%;" />
|
|
|
|
+ </el-col>
|
|
|
|
+ <el-col :span="4">
|
|
|
|
+ <el-button type="primary" plain icon="el-icon-plus" size="mini" @click="onAddTJ(index, sIndex)" />
|
|
|
|
+ <el-button v-if="item.condition_content.length !== 1" size="mini" type="primary" plain icon="el-icon-minus" @click="onDeleteTJ(index, sIndex)" />
|
|
|
|
+ </el-col>
|
|
|
|
+ </el-row>
|
|
|
|
+ <!-- <div class="span">
|
|
|
|
+ <span>条件之间的逻辑</span>
|
|
|
|
+ <el-radio v-model="item.condition_relation" :label="1" class="ml40">且(满足所有条件)</el-radio>
|
|
|
|
+ <el-radio v-model="item.condition_relation" :label="2">或(满足任意一条件)</el-radio>
|
|
|
|
+ </div> -->
|
|
|
|
+ </div>
|
|
|
|
+ </el-card>
|
|
|
|
+ </el-col>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
</el-col>
|
|
</el-col>
|
|
|
|
+
|
|
</el-row>
|
|
</el-row>
|
|
</el-form>
|
|
</el-form>
|
|
<span slot="footer" class="dialog-footer">
|
|
<span slot="footer" class="dialog-footer">
|
|
@@ -280,7 +331,7 @@
|
|
<script>
|
|
<script>
|
|
import { add_rule } from '@/api/rule/config'
|
|
import { add_rule } from '@/api/rule/config'
|
|
import { get_all_word_map } from '@/api/dict'
|
|
import { get_all_word_map } from '@/api/dict'
|
|
-import { get_rule_detail } from '@/api/rule/config'
|
|
|
|
|
|
+import { get_rule_detail, getSelectFormula } from '@/api/rule/config'
|
|
|
|
|
|
export default {
|
|
export default {
|
|
props: {
|
|
props: {
|
|
@@ -321,6 +372,7 @@ export default {
|
|
error_level: '',
|
|
error_level: '',
|
|
status: '',
|
|
status: '',
|
|
rule_type: '普通规则',
|
|
rule_type: '普通规则',
|
|
|
|
+ selectFormula: [],
|
|
rule: [
|
|
rule: [
|
|
// 质控逻辑只有一条
|
|
// 质控逻辑只有一条
|
|
{
|
|
{
|
|
@@ -398,6 +450,7 @@ export default {
|
|
},
|
|
},
|
|
created() {
|
|
created() {
|
|
this.getQcData()
|
|
this.getQcData()
|
|
|
|
+ this.getSelectFormula()
|
|
if (this.data.row.id) {
|
|
if (this.data.row.id) {
|
|
this.getDetail(this.data.row.id)
|
|
this.getDetail(this.data.row.id)
|
|
}
|
|
}
|
|
@@ -453,6 +506,13 @@ export default {
|
|
})
|
|
})
|
|
return alist
|
|
return alist
|
|
},
|
|
},
|
|
|
|
+ getSelectFormula() {
|
|
|
|
+ getSelectFormula({}).then(res => {
|
|
|
|
+ const { p } = res
|
|
|
|
+ console.log(p)
|
|
|
|
+ this.selectFormula = p
|
|
|
|
+ })
|
|
|
|
+ },
|
|
// 搜索质控字典
|
|
// 搜索质控字典
|
|
getQcData() {
|
|
getQcData() {
|
|
get_all_word_map({ status: 1 }).then(res => {
|
|
get_all_word_map({ status: 1 }).then(res => {
|