|
|
@@ -10,6 +10,22 @@
|
|
|
<el-breadcrumb-item>预录入样本</el-breadcrumb-item>
|
|
|
</el-breadcrumb>
|
|
|
<span style="float: right;">
|
|
|
+ <el-form ref="form" :inline="true" style="float: left; margin-top: -11.5px">
|
|
|
+ <el-form-item label="样本条码">
|
|
|
+ <el-input size="mini" style="width: 165px;" v-model="BarCode" placeholder="请输入样本条码"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item>
|
|
|
+ <el-dropdown split-button type="primary" size="mini" @click="seachdata" @command="handleSearchCommand">
|
|
|
+ 查询
|
|
|
+ <el-dropdown-menu slot="dropdown">
|
|
|
+ <el-dropdown-item command="search">高级查询</el-dropdown-item>
|
|
|
+ <el-dropdown-item command="clear">查询重置</el-dropdown-item>
|
|
|
+ <el-dropdown-item style="color:black;" v-for="item in searchTemplates" :key="item.name" :command="item.template">{{item.name}}</el-dropdown-item>
|
|
|
+ <el-dropdown-item divided style="color:black;" command="编辑">自定义</el-dropdown-item>
|
|
|
+ </el-dropdown-menu>
|
|
|
+ </el-dropdown>
|
|
|
+ </el-form-item>
|
|
|
+ </el-form>
|
|
|
<router-link :to="'/samples/prerecorded/new/unhumanpre'">
|
|
|
<el-button type="primary" size="mini" style="margin-left:10px; margin-top: -4px;" v-if="acc !='ssqOy' && acc != 'saB4v'">分装预录入</el-button>
|
|
|
</router-link>
|
|
|
@@ -31,24 +47,7 @@
|
|
|
<el-button type="primary" size="mini" style="margin-left:10px; margin-top: -4px;" @click="batchdelete">删除</el-button>
|
|
|
<el-button type="primary" size="mini" style="margin-left:10px; margin-top: -4px;" @click="columndialogVisible = true">显示列</el-button>
|
|
|
</span>
|
|
|
- <el-form ref="form" :inline="true" style="float: right; margin-top: -10px">
|
|
|
- <el-form-item label="样本条码">
|
|
|
- <el-input size="mini" style="width: 165px;" v-model="BarCode" placeholder="请输入样本条码"></el-input>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item>
|
|
|
- <el-dropdown split-button type="primary" size="mini" @click="seachdata" @command="handleSearchCommand">
|
|
|
- 查询
|
|
|
- <el-dropdown-menu slot="dropdown">
|
|
|
- <el-dropdown-item command="search">高级查询</el-dropdown-item>
|
|
|
- <el-dropdown-item command="clear">查询重置</el-dropdown-item>
|
|
|
- <el-dropdown-item style="color:black;" v-for="item in searchTemplates" :key="item.name" :command="item.template">{{item.name}}</el-dropdown-item>
|
|
|
- <el-dropdown-item divided style="color:black;" command="编辑">自定义</el-dropdown-item>
|
|
|
- </el-dropdown-menu>
|
|
|
- </el-dropdown>
|
|
|
- </el-form-item>
|
|
|
- </el-form>
|
|
|
</div>
|
|
|
-
|
|
|
<el-table ref="multipleTable" :data="list" bordertooltip-effect="dark" border height="calc(100vh - 230px)" style="width: 100%;"
|
|
|
@selection-change="handleSelectionChange" @header-dragend="header_dragend">
|
|
|
<el-table-column type="selection" width="55"></el-table-column>
|
|
|
@@ -83,7 +82,6 @@
|
|
|
<template v-else-if="item.filed === 'SurveyDate'">
|
|
|
{{Jstimehandle(scope.row[item.filed])}}
|
|
|
</template>
|
|
|
-
|
|
|
<template v-else-if="item.filed === 'Genus'">
|
|
|
<el-popover trigger="hover" placement="top">
|
|
|
<template v-for="item in ExpandInfoList">
|
|
|
@@ -96,8 +94,6 @@
|
|
|
</div>
|
|
|
</el-popover>
|
|
|
</template>
|
|
|
-
|
|
|
-
|
|
|
<template v-else>
|
|
|
{{scope.row[item.filed]}}
|
|
|
</template>
|
|
|
@@ -108,7 +104,6 @@
|
|
|
:page-sizes="[10, 100, 200, 500]" :page-size="size" layout="total, sizes, prev, pager, next, jumper" :total="currentItemCount">
|
|
|
</el-pagination>
|
|
|
</el-card>
|
|
|
-
|
|
|
<el-dialog title="高级查询" :visible.sync="dialogVisible" width="1000px">
|
|
|
<el-form ref="advancedSearchForm" label-width="90px">
|
|
|
<el-row>
|
|
|
@@ -125,20 +120,24 @@
|
|
|
<el-option v-for="item in sampletypes" :label="item.Name" :value="item.Id" :key="item.Id"></el-option>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
-
|
|
|
- <el-form-item label="创建日期">
|
|
|
+ <el-form-item label="开始日期">
|
|
|
<el-date-picker
|
|
|
v-model="StartDate"
|
|
|
type="date"
|
|
|
size="mini"
|
|
|
format="yyyy-MM-dd"
|
|
|
style="width:100%"
|
|
|
- placeholder="开始日期">
|
|
|
+ placeholder="请选择">
|
|
|
</el-date-picker>
|
|
|
</el-form-item>
|
|
|
-
|
|
|
<el-form-item label="容器类型">
|
|
|
- <el-select size="mini" style="width:100%" v-model="DItem" placeholder="请选择" @change="GetEquipmentInfos">
|
|
|
+ <el-select
|
|
|
+ size="mini"
|
|
|
+ style="width:100%"
|
|
|
+ v-model="DItem"
|
|
|
+ clearable placeholder="请选择"
|
|
|
+ @clear="GetEquipmentClear"
|
|
|
+ @change="GetEquipmentInfos">
|
|
|
<el-option
|
|
|
v-for="item in EquipmentList"
|
|
|
:key="item.DItem"
|
|
|
@@ -147,8 +146,6 @@
|
|
|
</el-option>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
-
|
|
|
-
|
|
|
</el-col>
|
|
|
<el-col :span="8">
|
|
|
<el-form-item label="样本编码">
|
|
|
@@ -170,7 +167,7 @@
|
|
|
format="yyyy-MM-dd"
|
|
|
size="mini"
|
|
|
style="width:100%"
|
|
|
- placeholder="结束日期">
|
|
|
+ placeholder="请选择">
|
|
|
</el-date-picker>
|
|
|
</el-form-item>
|
|
|
<el-form-item label="容器名称">
|
|
|
@@ -204,7 +201,6 @@
|
|
|
<el-input v-model="GroupName" placeholder="输入所属分组" size="mini" style="width:100%"></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
-
|
|
|
</el-row>
|
|
|
</el-form>
|
|
|
<span slot="footer" class="dialog-footer">
|
|
|
@@ -212,7 +208,6 @@
|
|
|
<el-button size="mini" type="primary" @click="seachdata">查 询</el-button>
|
|
|
</span>
|
|
|
</el-dialog>
|
|
|
-
|
|
|
<el-dialog title="打印" :visible.sync="dialogPrintVisible" size="tiny">
|
|
|
<el-select v-model="Printscheme" clearable placeholder="请选择">
|
|
|
<el-option v-for="item in printschemelist" :label="item.Name" :value="item.FileName" :key="item.FieldName"></el-option>
|
|
|
@@ -221,7 +216,6 @@
|
|
|
<br>
|
|
|
<el-button type="primary" @click="doprintscheme">打 印</el-button>
|
|
|
</el-dialog>
|
|
|
-
|
|
|
<el-dialog title="选中显示列(拖拽可以实现排序)" :visible.sync="columndialogVisible" top="5vh">
|
|
|
<el-checkbox :indeterminate="isIndeterminate" v-model="checkAll" @change="handleCheckAllChange" style="margin-left:15px;">全选</el-checkbox>
|
|
|
<div style="margin: 10px 0;"></div>
|
|
|
@@ -238,106 +232,6 @@
|
|
|
</div>
|
|
|
</el-dialog>
|
|
|
|
|
|
-<!--
|
|
|
- <el-dialog title="自定义搜索" :visible.sync="searchDialogVisible" width="1000px" top="5vh">
|
|
|
- <el-form ref="form" inline label-width="120px">
|
|
|
- <el-row :gutter="0">
|
|
|
- <el-col :span="10">
|
|
|
- <el-form-item label="自定义搜索名称">
|
|
|
- <el-input v-model="searchTemplateName" placeholder="请输入自定义名称" style="width:80%">
|
|
|
- </el-input>
|
|
|
- </el-form-item>
|
|
|
- </el-col>
|
|
|
- <el-col :span="2">
|
|
|
- <el-button @click="addSearchTab(searchTemplateName)">添加</el-button>
|
|
|
- </el-col>
|
|
|
- </el-row>
|
|
|
- </el-form>
|
|
|
- <el-row :gutter="0">
|
|
|
- <el-col :span="5">
|
|
|
- <div class="searchDialogLeftStyle">
|
|
|
- <el-tag v-for="tag in searchTemplates" :id="tag.Name" :key="tag.Name" closable class="reporttag reportselect"
|
|
|
- :onclick="'clickmodeltypetag(' + tag.Name + ')'" style="display:block;text-align:center;color:white;"
|
|
|
- @close="removeSearchTab(tag.Name)">
|
|
|
- <i class="el-icon-caret-right" v-if="tag.Name == currentSearchTemplateName"></i>
|
|
|
- {{tag.Name}}
|
|
|
- </el-tag>
|
|
|
- </div>
|
|
|
- </el-col>
|
|
|
- <el-col :span="19">
|
|
|
- <div class="searchDialogRightStyle">
|
|
|
- <el-form ref="form" inline label-width="0px">
|
|
|
- <el-row style="margin-top:10px;">
|
|
|
- <el-col :span="24" style="margin-left:10px;">{{">> "+currentSearchTemplateName}}</el-col>
|
|
|
- </el-row>
|
|
|
- <el-row style="margin-top:10px;margin-bottom:10px;">
|
|
|
- <el-col class="line" :span="24" style="background-color:lightgrey; line-height: 2px;"> </el-col>
|
|
|
- </el-row>
|
|
|
- <el-row :gutter="1">
|
|
|
- <el-col :span="5">
|
|
|
- <el-select v-model="searchField" @change="changeSearchField()" placeholder="请选择" style="margin-left:5px;margin-right:5px;">
|
|
|
- <el-option v-for="item in searchcolumn" :key="item.field" :label="item.name" :value="item.filed"></el-option>
|
|
|
- </el-select>
|
|
|
- </el-col>
|
|
|
- <el-col :span="8">
|
|
|
- <el-input v-if="searchField == 'BarCode'" v-model="searchValue.BarCode" placeholder="请输入样本条码" style="margin-left:5px;display:inline-block;"></el-input>
|
|
|
- <el-input v-else-if="searchField == 'SampleCode'" v-model="searchValue.SampleCode" placeholder="请输入样本编码"></el-input>
|
|
|
- <el-input v-else-if="searchField == 'SourceName'" v-model="searchValue.SourceName" placeholder="请输入身份证号或姓名"></el-input>
|
|
|
- <el-input v-else-if="searchField == 'InnerCode'" v-model="searchValue.InnerCode" placeholder="请输入样本内码"></el-input>
|
|
|
- <el-input v-else-if="searchField == 'Name'" v-model="searchValue.Name" placeholder="请输入名称"></el-input>
|
|
|
- <el-input v-else-if="searchField == 'CreateBy'" v-model="searchValue.CreateBy" placeholder="请输入录入人"></el-input>
|
|
|
- <el-input v-else-if="searchField == 'GroupName'" v-model="searchValue.GroupName" placeholder="请输入所属分组"></el-input>
|
|
|
- <el-date-picker v-else-if="searchField == 'ReceiveDate'" v-model="searchValue.CreateOn" type="daterange"
|
|
|
- range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期" style="width:100%"></el-date-picker>
|
|
|
-
|
|
|
- <el-select v-else-if="searchField == 'SampleTypeName'" v-model="searchValue.SampleType" clearable
|
|
|
- placeholder="请选择" @change="selsampletypeChange" style="width:100%">
|
|
|
- <el-option v-for="item in sampletypes" :key="item.Id" :label="item.Name" :value="item.Name"></el-option>
|
|
|
- </el-select>
|
|
|
- <el-date-picker v-else-if="searchField == 'ValidityDate'" v-model="searchValue.Validity" type="daterange"
|
|
|
- range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期" style="width:100%">
|
|
|
- </el-date-picker>
|
|
|
- <el-input v-else-if="searchField == 'Capacity'" v-model="searchValue.Capacity" placeholder="请输入容量"></el-input>
|
|
|
- <el-input v-else-if="searchField == 'Location'" v-model="searchValue.Location" placeholder=" 请输入存储位置"></el-input>
|
|
|
- <el-input v-else v-model="searchValue.Extension" placeholder="" style="margin-left:5px;display:inline-block;"></el-input>
|
|
|
- </el-col>
|
|
|
- <el-col :span="3">
|
|
|
- <el-select v-model="orAnd" placeholder="请选择" style="margin-left:15px;">
|
|
|
- <el-option v-for="item in orAndData" :key="item.value" :label="item.name" :value="item.value"></el-option>
|
|
|
- </el-select>
|
|
|
- </el-col>
|
|
|
- <el-col :span="3">
|
|
|
- <el-button type="primary" size="middle" style="margin-left:5px;display:inline-block;" @click="addSearchField">添加</el-button>
|
|
|
- </el-col>
|
|
|
- <el-col :span="5">
|
|
|
- <el-button type="primary" size="middle" style="display:inline-block;" @click="saveAndSearchWithTemplate">查询</el-button>
|
|
|
- <el-button type="primary" size="middle" style="display:inline-block;" @click="saveSearchTemplate">保存</el-button>
|
|
|
- </el-col>
|
|
|
- </el-row>
|
|
|
- <el-row style="margin-top:10px;">
|
|
|
- <el-col class="line" :span="24" style="background-color:lightgrey; line-height: 2px;"> </el-col>
|
|
|
- </el-row>
|
|
|
- <el-row>
|
|
|
- <el-table :data="searchTableData" border style="width: 100%">
|
|
|
- <el-table-column prop="Name" label="检索名称" show-overflow-tooltip>
|
|
|
- </el-table-column>
|
|
|
- <el-table-column prop="Value" label="数值范围" width="300px" show-overflow-tooltip>
|
|
|
- </el-table-column>
|
|
|
- <el-table-column prop="Guanxi" label="查询关系" show-overflow-tooltip>
|
|
|
- </el-table-column>
|
|
|
- <el-table-column prop="Operate" label="操作" show-overflow-tooltip>
|
|
|
- <template slot-scope="scope">
|
|
|
- <el-button @click="deleteSearchField(scope.row)" type="text" size="small">删除</el-button>
|
|
|
- </template>
|
|
|
- </el-table-column>
|
|
|
- </el-table>
|
|
|
- </el-row>
|
|
|
- </el-form>
|
|
|
- </div>
|
|
|
- </el-col>
|
|
|
- </el-row>
|
|
|
- </el-dialog>
|
|
|
--->
|
|
|
<!-- 自定义查询 -->
|
|
|
<samplesearchdialog @close="closeDialog"
|
|
|
ref="samplesearchdialog"></samplesearchdialog>
|
|
|
@@ -423,7 +317,7 @@
|
|
|
Capacity: '',
|
|
|
Location: '',
|
|
|
Extension: '',
|
|
|
- GroupName: '',
|
|
|
+ GroupName: ''
|
|
|
},
|
|
|
sampinputtreeprops2: {
|
|
|
value: 'name',
|
|
|
@@ -692,10 +586,16 @@
|
|
|
})
|
|
|
},
|
|
|
GetEquipmentInfos () {
|
|
|
- service.postRequest('dashoo.biobank.bee-0.1', 'Equipment', 'GetEquipmentInfos', {DItem: this.DItem})
|
|
|
- .then(res => {
|
|
|
- this.EquipmentInfosList = res.data
|
|
|
- })
|
|
|
+ if (this.DItem != ''){
|
|
|
+ service.postRequest('dashoo.biobank.bee-0.1', 'Equipment', 'GetEquipmentInfos', {DItem: this.DItem})
|
|
|
+ .then(res => {
|
|
|
+ this.EquipmentInfosList = res.data
|
|
|
+ })
|
|
|
+ }
|
|
|
+ },
|
|
|
+ GetEquipmentClear () {
|
|
|
+ this.EquipmentInfosList = null
|
|
|
+ this.EquipmentIds = null
|
|
|
},
|
|
|
// 根据子code获取所有父code
|
|
|
// getparentcodebytopcode(v) {
|