4
0
shihang 6 роки тому
батько
коміт
5bfd596a8d

+ 168 - 138
src/dashoo.cn/backend/api/controllers/logs/loginfos.go

@@ -8,9 +8,15 @@ import (
 	"time"
 
 	"dashoo.cn/backend/api/business/baseUser"
+	"dashoo.cn/backend/api/business/donorsinfo"
+	"dashoo.cn/backend/api/business/extend"
 	"dashoo.cn/backend/api/business/logsinfo"
 	"dashoo.cn/backend/api/business/operationlog"
+	"dashoo.cn/backend/api/business/samplenoteitem"
+	"dashoo.cn/backend/api/business/samplesinfo"
+	"dashoo.cn/backend/api/business/stypenoteitem"
 	. "dashoo.cn/backend/api/controllers"
+	"dashoo.cn/backend/api/mydb"
 	"dashoo.cn/utils"
 	"dashoo.cn/utils/db"
 )
@@ -302,85 +308,85 @@ func (this *LoginfosController) List() {
 // @Description 样本日志列表
 // @Success 200 {object} business.device.DeviceChannels
 // @router /samplelist [get]
-//func (this *LoginfosController) ListSampleLog() {
-//	var data []logsinfo.SamplesLog
-//	page := this.GetPageInfoForm()
-//	CreateBy := this.GetString("CreateBy")
-//	search := this.GetString("search")
-//	CreateOnstart, _ := this.GetInt64("CreateOnstart")
-//	CreateOnend, _ := this.GetInt64("CreateOnend")
-//	sbarcode := this.GetString("sbarcode")
-//	id := this.GetString("id")
-//	where := " 1=1 "
-//	if id != "" {
-//		where = where + " and Id= " + id
-//	}
-//	if search != "" {
-//		where = where + " and SampleCode like '%" + search + "%' "
-//	}
-//	if sbarcode != "" {
-//		where = where + " and BarCode like '%" + sbarcode + "%' "
-//	}
-//	if CreateBy != "" {
-//		where = where + "and  CreateBy ='" + CreateBy + "'"
-//	}
-//	if CreateOnstart != 0 {
-//		where = where + " and  CreateOn >'" + time.Unix(CreateOnstart, 0).Format("2006-01-02") + "'"
-//	}
-//	if CreateOnend != 0 {
-//		where = where + " and CreateOn <'" + time.Unix(CreateOnend, 0).Format("2006-01-02") + " 23:59:59'"
-//	}
-//	svc := samplesinfo.GetSamplesInfoService(utils.DBE)
-//	total := svc.GetPagingEntitiesWithOrderBytbl(this.User.AccCode, page.CurrentPage, page.Size, "Id", false, &data, where)
-
-//	var datainfo DataInfo
-//	datainfo.Items = data
-//	datainfo.CurrentItemCount = total
-//	this.Data["json"] = &datainfo
-//	this.ServeJSON()
-//}
+func (this *LoginfosController) ListSampleLog() {
+	var data []logsinfo.SamplesLog
+	page := this.GetPageInfoForm()
+	CreateBy := this.GetString("CreateBy")
+	search := this.GetString("search")
+	CreateOnstart, _ := this.GetInt64("CreateOnstart")
+	CreateOnend, _ := this.GetInt64("CreateOnend")
+	sbarcode := this.GetString("sbarcode")
+	id := this.GetString("id")
+	where := " 1=1 "
+	if id != "" {
+		where = where + " and Id= " + id
+	}
+	if search != "" {
+		where = where + " and SampleCode like '%" + search + "%' "
+	}
+	if sbarcode != "" {
+		where = where + " and BarCode like '%" + sbarcode + "%' "
+	}
+	if CreateBy != "" {
+		where = where + "and  CreateBy ='" + CreateBy + "'"
+	}
+	if CreateOnstart != 0 {
+		where = where + " and  CreateOn >'" + time.Unix(CreateOnstart, 0).Format("2006-01-02") + "'"
+	}
+	if CreateOnend != 0 {
+		where = where + " and CreateOn <'" + time.Unix(CreateOnend, 0).Format("2006-01-02") + " 23:59:59'"
+	}
+	svc := samplesinfo.GetSamplesInfoService(utils.DBE)
+	total := svc.GetPagingEntitiesWithOrderBytbl(this.User.AccCode, page.CurrentPage, page.Size, "Id", false, &data, where)
+
+	var datainfo DataInfo
+	datainfo.Items = data
+	datainfo.CurrentItemCount = total
+	this.Data["json"] = &datainfo
+	this.ServeJSON()
+}
 
 // @Title 样本来源日志列表
 // @Description 样本来源日志列表
 // @Success 200 {object} business.device.DeviceChannels
 // @router /donorlist [get]
-//func (this *LoginfosController) ListDonorLog() {
-//	var data []logsinfo.DonorsLog
-//	page := this.GetPageInfoForm()
-//	CreateBy := this.GetString("CreateBy")
-//	sourcename := this.GetString("sourcename")
-//	CreateOnstart, _ := this.GetInt64("CreateOnstart")
-//	CreateOnend, _ := this.GetInt64("CreateOnend")
-//	optype := this.GetString("optype")
-//	id := this.GetString("id")
-//	where := " 1=1 "
-//	if id != "" {
-//		where = where + " and Id= " + id
-//	}
-//	if sourcename != "" {
-//		where = where + " and SourceName like '%" + sourcename + "%' "
-//	}
-//	if optype != "" {
-//		where = where + " and OpType like '%" + optype + "%' "
-//	}
-//	if CreateBy != "" {
-//		where = where + "and  CreateBy ='" + CreateBy + "'"
-//	}
-//	if CreateOnstart != 0 {
-//		where = where + " and  CreateOn >'" + time.Unix(CreateOnstart, 0).Format("2006-01-02") + "'"
-//	}
-//	if CreateOnend != 0 {
-//		where = where + " and CreateOn <'" + time.Unix(CreateOnend, 0).Format("2006-01-02") + " 23:59:59'"
-//	}
-//	svc := donorsinfo.GetDonorsInfoService(utils.DBE)
-//	total := svc.GetPagingEntitiesWithOrderBytbl(this.User.AccCode, page.CurrentPage, page.Size, "Id", false, &data, where)
-
-//	var datainfo DataInfo
-//	datainfo.Items = data
-//	datainfo.CurrentItemCount = total
-//	this.Data["json"] = &datainfo
-//	this.ServeJSON()
-//}
+func (this *LoginfosController) ListDonorLog() {
+	var data []logsinfo.DonorsLog
+	page := this.GetPageInfoForm()
+	CreateBy := this.GetString("CreateBy")
+	sourcename := this.GetString("sourcename")
+	CreateOnstart, _ := this.GetInt64("CreateOnstart")
+	CreateOnend, _ := this.GetInt64("CreateOnend")
+	optype := this.GetString("optype")
+	id := this.GetString("id")
+	where := " 1=1 "
+	if id != "" {
+		where = where + " and Id= " + id
+	}
+	if sourcename != "" {
+		where = where + " and SourceName like '%" + sourcename + "%' "
+	}
+	if optype != "" {
+		where = where + " and OpType like '%" + optype + "%' "
+	}
+	if CreateBy != "" {
+		where = where + "and  CreateBy ='" + CreateBy + "'"
+	}
+	if CreateOnstart != 0 {
+		where = where + " and  CreateOn >'" + time.Unix(CreateOnstart, 0).Format("2006-01-02") + "'"
+	}
+	if CreateOnend != 0 {
+		where = where + " and CreateOn <'" + time.Unix(CreateOnend, 0).Format("2006-01-02") + " 23:59:59'"
+	}
+	svc := donorsinfo.GetDonorsInfoService(utils.DBE)
+	total := svc.GetPagingEntitiesWithOrderBytbl(this.User.AccCode, page.CurrentPage, page.Size, "Id", false, &data, where)
+
+	var datainfo DataInfo
+	datainfo.Items = data
+	datainfo.CurrentItemCount = total
+	this.Data["json"] = &datainfo
+	this.ServeJSON()
+}
 
 // @Title 样本日志列表
 // @Description 样本日志列表
@@ -464,36 +470,60 @@ func (this *LoginfosController) ListLoginLog() {
 // @Description 样本日志列表详情
 // @Success 200 {object} business.device.DeviceChannels
 // @router /samplelistinfo [get]
-//func (this *LoginfosController) SamplesInfo() {
-//	id := this.GetString("id")
-//	svc := samplesinfo.GetSamplesInfoService(utils.DBE)
-//	logmodel := svc.GetContantById(this.User.AccCode+SamplesLogtbName, id)
-//	this.Data["logmodel"] = logmodel
-//	switch logmodel.TableName {
-//	case "SamplesMain":
-//		this.GetLog_Info(logmodel.TableName, logmodel, svc, &SamplesMain_Log{}, &SamplesMain_Log{}, logmodel.SampleType)
-//	case "SamplesInfoShow":
-//		this.GetLog_Info(logmodel.TableName, logmodel, svc, &SamplesInfoShow_Log{}, &SamplesInfoShow_Log{}, logmodel.SampleType)
-//	}
-//}
-
-//func (this *LoginfosController) GetLog_Info(tname string, logmodel *mydb.SamplesLog, svc *samplesinfo.SamplesInfoService, m1 interface{}, m2 interface{}, sampletype int) {
-//	json.Unmarshal([]byte(logmodel.RecordData), m1)
-//	var datatr2 string
-//	if logmodel.TableName == "SamplesMain" {
-//		datatr2 = svc.GetNextContantById(this.User.AccCode+SamplesLogtbName, utils.ToStr(logmodel.Id), this.User.AccCode+SamplesMaintbName, logmodel.MId, m2)
-//	} else if logmodel.TableName == "SamplesInfoShow" {
-//		datatr2 = svc.GetNextContantShowInfoById(this.User.AccCode+SamplesLogtbName, utils.ToStr(logmodel.Id), logmodel.RecordId, m2, this.User.AccCode)
-//	}
-
-//	json.Unmarshal([]byte(datatr2), m2)
-//	maplistpublic, maplistprivate := GetSamplePublicNoteNameMap(this.User.AccCode)
-//	data := LogcomparefuncByNoteSample(m1, m2, maplistpublic, maplistprivate, sampletype)
-//	var datainfo DataInfo
-//	datainfo.Items = data
-//	this.Data["json"] = &datainfo
-//	this.ServeJSON()
-//}
+func (this *LoginfosController) SamplesInfo() {
+	id := this.GetString("id")
+	svc := samplesinfo.GetSamplesInfoService(utils.DBE)
+	logmodel := svc.GetContantById(this.User.AccCode+SamplesLogtbName, id)
+	this.Data["logmodel"] = logmodel
+	switch logmodel.TableName {
+	case "SamplesMain":
+		this.GetLog_Info(logmodel.TableName, logmodel, svc, &SamplesMain_Log{}, &SamplesMain_Log{}, logmodel.SampleType)
+	case "SamplesInfoShow":
+		this.GetLog_Info(logmodel.TableName, logmodel, svc, &SamplesInfoShow_Log{}, &SamplesInfoShow_Log{}, logmodel.SampleType)
+	}
+}
+
+func (this *LoginfosController) GetLog_Info(tname string, logmodel *mydb.SamplesLog, svc *samplesinfo.SamplesInfoService, m1 interface{}, m2 interface{}, sampletype int) {
+	json.Unmarshal([]byte(logmodel.RecordData), m1)
+	var datatr2 string
+	if logmodel.TableName == "SamplesMain" {
+		datatr2 = svc.GetNextContantById(this.User.AccCode+SamplesLogtbName, utils.ToStr(logmodel.Id), this.User.AccCode+SamplesMaintbName, logmodel.MId, m2)
+	} else if logmodel.TableName == "SamplesInfoShow" {
+		datatr2 = svc.GetNextContantShowInfoById(this.User.AccCode+SamplesLogtbName, utils.ToStr(logmodel.Id), logmodel.RecordId, m2, this.User.AccCode)
+	}
+
+	json.Unmarshal([]byte(datatr2), m2)
+	maplistpublic, maplistprivate := GetSamplePublicNoteNameMap(this.User.AccCode)
+	data := LogcomparefuncByNoteSample(m1, m2, maplistpublic, maplistprivate, sampletype)
+	var datainfo DataInfo
+	datainfo.Items = data
+	this.Data["json"] = &datainfo
+	this.ServeJSON()
+}
+
+//获取扩展map
+func GetSamplePublicNoteNameMap(acccode string) (map[string]string, map[string]string) {
+	var PublicNoteitemList []samplenoteitem.SamplesNoteItem
+	svcdnote := samplenoteitem.GetSampleNoteItemService(utils.DBE)
+	wherenote := " AccCode='" + acccode + "'"
+	PublicNoteitemList = svcdnote.GetDNoteItemList(wherenote)
+
+	map_listpublic := make(map[string]string)
+	for i := 0; i < len(PublicNoteitemList); i++ {
+		map_listpublic[utils.ToStr(PublicNoteitemList[i].FieldName)] = PublicNoteitemList[i].Name
+	}
+
+	map_listprivate := make(map[string]string)
+	var sampletypedata []stypenoteitem.STypeNoteItem
+	svc1 := stypenoteitem.GetSTypenoteitemService(utils.DBE)
+	where := " AccCode='" + acccode + "' order by SampleType "
+	sampletypedata = svc1.GetSTypenoteitemSearch(where)
+	for i := 0; i < len(sampletypedata); i++ {
+		map_listprivate[utils.ToStr(sampletypedata[i].FieldName)+"-"+utils.ToStr(sampletypedata[i].SampleType)] = sampletypedata[i].Name
+	}
+
+	return map_listpublic, map_listprivate
+}
 
 func LogcomparefuncByNoteSample(m1, m2 interface{}, map_listpublic, map_listprivate map[string]string, sampletype int) []Logcompare {
 	objT1 := reflect.TypeOf(m1).Elem()
@@ -591,40 +621,40 @@ func LogcomparefuncByNoteSample(m1, m2 interface{}, map_listpublic, map_listpriv
 // @Description 样本日志列表详情
 // @Success 200 {object} business.device.DeviceChannels
 // @router /donorlistinfo [get]
-//func (this *LoginfosController) DonorsInfo() {
-//	id := this.GetString("id")
-//	svc := donorsinfo.GetDonorsInfoService(utils.DBE)
-//	logmodel := svc.GetContantById(this.User.AccCode+DonorslogtbName, id)
-//	this.Data["logmodel"] = logmodel
-//	switch logmodel.TableName {
-//	case "DonorsInfo":
-//		this.GetLog_DonorsInfo(logmodel.TableName, logmodel, svc, &DonorsInfo_log{}, &DonorsInfo_log{})
-//	}
-//}
-
-//func (this *LoginfosController) GetLog_DonorsInfo(tname string, logmodel *mydb.DonorsLog, svc *donorsinfo.DonorsInfoService, m1 interface{}, m2 interface{}) {
-//	json.Unmarshal([]byte(logmodel.RecordData), m1)
-//	datatr2 := svc.GetNextContantById(this.User.AccCode+DonorslogtbName, utils.ToStr(logmodel.Id), this.User.AccCode+DonorstbName, logmodel.RecordId, m2)
-//	json.Unmarshal([]byte(datatr2), m2)
-//	maplist := GetDonorNoteNameMap(this.User.AccCode)
-//	data := LogcomparefuncByNote(m1, m2, maplist)
-//	var datainfo DataInfo
-//	datainfo.Items = data
-//	this.Data["json"] = &datainfo
-//	this.ServeJSON()
-//}
-
-//func GetDonorNoteNameMap(acccode string) map[string]string {
-//	svcdnote := extend.GetExtendService(utils.DBE)
-//	where1 := " AccCode='" + acccode + "' "
-//	var DnoteitemList []extend.DonorsNoteItem
-//	DnoteitemList = svcdnote.GetDNoteItemList(where1)
-//	map_list := make(map[string]string)
-//	for i := 0; i < len(DnoteitemList); i++ {
-//		map_list[utils.ToStr(DnoteitemList[i].FieldName)] = DnoteitemList[i].Name
-//	}
-//	return map_list
-//}
+func (this *LoginfosController) DonorsInfo() {
+	id := this.GetString("id")
+	svc := donorsinfo.GetDonorsInfoService(utils.DBE)
+	logmodel := svc.GetContantById(this.User.AccCode+DonorslogtbName, id)
+	this.Data["logmodel"] = logmodel
+	switch logmodel.TableName {
+	case "DonorsInfo":
+		this.GetLog_DonorsInfo(logmodel.TableName, logmodel, svc, &DonorsInfo_log{}, &DonorsInfo_log{})
+	}
+}
+
+func (this *LoginfosController) GetLog_DonorsInfo(tname string, logmodel *mydb.DonorsLog, svc *donorsinfo.DonorsInfoService, m1 interface{}, m2 interface{}) {
+	json.Unmarshal([]byte(logmodel.RecordData), m1)
+	datatr2 := svc.GetNextContantById(this.User.AccCode+DonorslogtbName, utils.ToStr(logmodel.Id), this.User.AccCode+DonorstbName, logmodel.RecordId, m2)
+	json.Unmarshal([]byte(datatr2), m2)
+	maplist := GetDonorNoteNameMap(this.User.AccCode)
+	data := LogcomparefuncByNote(m1, m2, maplist)
+	var datainfo DataInfo
+	datainfo.Items = data
+	this.Data["json"] = &datainfo
+	this.ServeJSON()
+}
+
+func GetDonorNoteNameMap(acccode string) map[string]string {
+	svcdnote := extend.GetExtendService(utils.DBE)
+	where1 := " AccCode='" + acccode + "' "
+	var DnoteitemList []extend.DonorsNoteItem
+	DnoteitemList = svcdnote.GetDNoteItemList(where1)
+	map_list := make(map[string]string)
+	for i := 0; i < len(DnoteitemList); i++ {
+		map_list[utils.ToStr(DnoteitemList[i].FieldName)] = DnoteitemList[i].Name
+	}
+	return map_list
+}
 
 func LogcomparefuncByNote(m1, m2 interface{}, map_list map[string]string) []Logcompare {
 	objT1 := reflect.TypeOf(m1).Elem()

+ 27 - 11
src/dashoo.cn/frontend_web/src/pages/log/donorlog/_opera/detail.vue

@@ -1,20 +1,34 @@
+<style>
+  .input-with-select .el-select .el-input {
+    width: 110px;
+  }
+
+  .input-with-select .el-input-group__append {
+    background-color: #fff;
+  }
+
+</style>
+
 <template>
   <div>
-    <el-breadcrumb class="heading">
-      <el-breadcrumb-item :to="{ path: '/' }">平台首页</el-breadcrumb-item>
-      <el-breadcrumb-item :to="{ path: '/log/donorlog' }">样本来源日志</el-breadcrumb-item>
-      <el-breadcrumb-item>详情</el-breadcrumb-item>
-    </el-breadcrumb>
-    <el-card class="box-card">
-      <div slot="header">
-        <span>
-          <i class="icon icon-table2"> 样本日志详情</i>
+    <el-card style="min-height: calc(100vh - 92px);">
+      <div slot="header" style="height: 20px;">
+        <span style="float: left;">
+          <i class="icon icon-table2"></i>
         </span>
+        <el-breadcrumb class="heading" style="float: left; margin-left: 5px">
+          <el-breadcrumb-item :to="{ path: '/' }">平台首页</el-breadcrumb-item>
+          <el-breadcrumb-item :to="{ path: '/log/donorlog' }">样本来源日志</el-breadcrumb-item>
+          <el-breadcrumb-item>样本日志详情</el-breadcrumb-item>
+        </el-breadcrumb>
         <span style="float: right;">
-          <el-button type="primary" class="el-button--small" onclick="window.history.go(-1)">返回</el-button>
+          <el-button size="mini" type="primary" class="el-button--small" style="margin-left: 8px"
+            onclick="window.history.go(-1)">返回</el-button>
         </span>
       </div>
-      <el-table ref="multipleTable" border :data="list2" tooltip-effect="dark" style="width: 100%" v-if="list.OpType==1">
+
+      <el-table ref="multipleTable" border :data="list2" tooltip-effect="dark" style="width: 100%"
+        v-if="list.OpType==1">
         <el-table-column :label="'操作人: '+list.CreateBy">
           <el-table-column prop="name" label="名称" show-overflow-tooltip></el-table-column>
         </el-table-column>
@@ -119,12 +133,14 @@
     border-collapse: collapse;
     margin-left: 13%;
     font-size: 20px;
+
     .tablehead {
       th {
         width: 30%;
         border: 2px solid black;
       }
     }
+
     td {
       border: 2px solid black;
       padding-left: 20px;

+ 71 - 50
src/dashoo.cn/frontend_web/src/pages/log/donorlog/index.vue

@@ -1,55 +1,35 @@
 <template>
   <div>
-    <el-breadcrumb class="heading">
-      <el-breadcrumb-item :to="{ path: '/' }">平台首页</el-breadcrumb-item>
-      <el-breadcrumb-item>样本来源日志</el-breadcrumb-item>
-    </el-breadcrumb>
-    <el-card class="box-card">
-      <div slot="header">
-        <span>
-          <i class="icon icon-table2"> </i> 样本来源日志列表
+    <el-card class="box-card" style="height: calc(100vh - 92px);">
+      <div slot="header" style="height: 20px;">
+        <span style="float: left;">
+          <i class="icon icon-table2"></i>
         </span>
+        <el-breadcrumb class="heading" style="float: left; margin-left: 5px">
+          <el-breadcrumb-item :to="{ path: '/' }">平台首页</el-breadcrumb-item>
+          <el-breadcrumb-item>样本来源日志</el-breadcrumb-item>
+        </el-breadcrumb>
+        <el-form ref="form" :inline="true" style="float: right; margin-top: -10px">
+          <el-form-item label="操作日期">
+            <el-date-picker size="mini" style="width: 220px" v-model="searchform.CreateOn" type="daterange"
+              range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期"></el-date-picker>
+          </el-form-item>
+          <el-form-item label="姓名">
+            <el-input size="mini" style="width: 165px;" v-model="searchform.Name" placeholder="请输入姓名"></el-input>
+          </el-form-item>
+          <el-form-item>
+            <el-dropdown split-button type="primary" size="mini" @click="seachdata" @command="searchCommand">
+              查询
+              <el-dropdown-menu slot="dropdown">
+                <el-dropdown-item command="search">高级查询</el-dropdown-item>
+                <el-dropdown-item command="clear">查询重置</el-dropdown-item>
+              </el-dropdown-menu>
+            </el-dropdown>
+          </el-form-item>
+        </el-form>
       </div>
-      <el-collapse>
-        <el-collapse-item title="查询" name="1">
-          <el-form ref="form" label-width="110px">
-            <el-row :gutter="0">
-              <el-col :span="6">
-                <el-form-item label="姓名">
-                  <el-input v-model="searchform.Name" placeholder="请输入姓名"></el-input>
-                </el-form-item>
-              </el-col>
-              <el-col :span="6">
-                <el-form-item label="操作类型">
-                  <el-select v-model="searchform.OpType" placeholder="请选择" clearable>
-                    <el-option label="修改" value="1"></el-option>
-                    <el-option label="删除" value="2"></el-option>
-                  </el-select>
-                </el-form-item>
-              </el-col>
-              <el-col :span="6">
-                <el-form-item label="操作人">
-                  <el-input v-model="searchform.CreateBy" placeholder="请输入操作人"></el-input>
-                </el-form-item>
-              </el-col>
-              <el-col :span="6">
-                <el-form-item label="操作日期">
-                  <el-date-picker v-model="searchform.CreateOn" type="daterange" range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期"
-                    style="width:100%"></el-date-picker>
-                </el-form-item>
-              </el-col>
-            </el-row>
-            <el-row>
-              <el-col class="line" :span="24" style="background-color:lightgrey; line-height: 1px">&nbsp;</el-col>
-            </el-row>
-            <el-row :gutter="0" style="text-align:right;margin-top:10px;">
-              <el-button type="primary" size="small" style="margin-top:0px" @click="seachdata">查询</el-button>
-              <el-button type="primary" class="el-button--small" @click="clearSearch" style="margin-left:8px">重 置</el-button>
-            </el-row>
-          </el-form>
-        </el-collapse-item>
-      </el-collapse>
-      <el-table ref="multipleTable" :data="list" border tooltip-effect="dark" style="width: 100%">
+
+      <el-table ref="multipleTable" :data="list" bordertooltip-effect="dark" border height="calc(100vh - 230px)">
         <el-table-column label="操作" width="80" align="center">
           <template slot-scope="scope">
             <router-link :to="'/log/donorlog/'+scope.row.id+'/detail'">
@@ -73,10 +53,43 @@
           </template>
         </el-table-column>
       </el-table>
-      <el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange" :current-page="currentPage" :page-sizes="[10, 15, 20]"
-        :page-size="size" layout="total, sizes, prev, pager, next, jumper" :total="currentItemCount">
+      <el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange" :current-page="currentPage"
+        :page-sizes="[10, 15, 20]" :page-size="size" layout="total, sizes, prev, pager, next, jumper"
+        :total="currentItemCount">
       </el-pagination>
     </el-card>
+
+    <el-dialog title="高级查询" :visible.sync="dialogVisible" width="700px">
+      <el-form ref="advancedSearchForm" label-width="90px">
+        <el-row>
+          <el-col :span="12">
+            <el-form-item label="操作日期">
+              <el-date-picker size="mini" v-model="searchform.CreateOn" type="daterange" style="width:100%"
+                range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期"></el-date-picker>
+            </el-form-item>
+          </el-col>
+          <el-col :span="12">
+            <el-form-item label="操作人">
+              <el-input size="mini" v-model="searchform.CreateBy" style="width:100%" placeholder="请输入操作人"></el-input>
+            </el-form-item>
+          </el-col>
+          <el-col :span="12">
+            <el-form-item label="姓名">
+              <el-input size="mini" v-model="searchform.Name" style="width:100%" placeholder="请输入姓名"></el-input>
+            </el-form-item>
+          </el-col>
+          <el-col :span="12">
+            <el-form-item label="操作类型">
+              <el-input size="mini" v-model="searchform.OpType" style="width:100%" placeholder="请输入操作类型"></el-input>
+            </el-form-item>
+          </el-col>
+        </el-row>
+      </el-form>
+      <span slot="footer" class="dialog-footer">
+        <el-button size="mini" @click="dialogVisible = false">取 消</el-button>
+        <el-button size="mini" type="primary" @click="seachdata">查 询</el-button>
+      </span>
+    </el-dialog>
   </div>
 </template>
 <script>
@@ -84,6 +97,7 @@
     name: 'sampleslog',
     data() {
       return {
+        dialogVisible: false,
         currentItemCount: 0, // 当前页显示数量
         currentPage: 1, // 当前页
         size: 10, // 每页显示数量
@@ -150,6 +164,13 @@
         this.currentPage = value
         this.initData()
       },
+      searchCommand(command) {
+        if (command == 'search') {
+          this.dialogVisible = true
+        } else if (command == 'clear') {
+          this.clearSearch()
+        }
+      },
       clearSearch() {
         this.searchform.Name = ''
         this.searchform.OpType = ''

+ 66 - 42
src/dashoo.cn/frontend_web/src/pages/log/index.vue

@@ -1,47 +1,35 @@
 <template>
   <div>
-    <el-breadcrumb class="heading">
-      <el-breadcrumb-item :to="{ path: '/' }">平台首页</el-breadcrumb-item>
-      <el-breadcrumb-item>登录日志</el-breadcrumb-item>
-    </el-breadcrumb>
-    <el-card class="box-card">
-      <div slot="header">
-        <span>
-          <i class="icon icon-table2"> </i> 登录日志列表
+    <el-card class="box-card" style="height: calc(100vh - 92px);">
+      <div slot="header" style="height: 20px;">
+        <span style="float: left;">
+          <i class="icon icon-table2"></i>
         </span>
+        <el-breadcrumb class="heading" style="float: left; margin-left: 5px">
+          <el-breadcrumb-item :to="{ path: '/' }">平台首页</el-breadcrumb-item>
+          <el-breadcrumb-item>登录日志</el-breadcrumb-item>
+        </el-breadcrumb>
+        <el-form ref="form" :inline="true" style="float: right; margin-top: -10px">
+          <el-form-item label="登录日期">
+            <el-date-picker size="mini" style="width: 220px" v-model="searchform.logindate" type="daterange"
+              range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期"></el-date-picker>
+          </el-form-item>
+          <el-form-item label="登录人">
+            <el-input size="mini" style="width: 165px;" v-model="searchform.person" placeholder="请输入登录人"></el-input>
+          </el-form-item>
+          <el-form-item>
+            <el-dropdown split-button type="primary" size="mini" @click="seachdata" @command="searchCommand">
+              查询
+              <el-dropdown-menu slot="dropdown">
+                <el-dropdown-item command="search">高级查询</el-dropdown-item>
+                <el-dropdown-item command="clear">查询重置</el-dropdown-item>
+              </el-dropdown-menu>
+            </el-dropdown>
+          </el-form-item>
+        </el-form>
       </div>
-      <el-collapse>
-        <el-collapse-item title="查询" name="1">
-          <el-form ref="form" label-width="110px">
-            <el-row :gutter="0">
-              <el-col :span="8">
-                <el-form-item label="登录人">
-                  <el-input v-model="searchform.person" placeholder="请输入登录人"></el-input>
-                </el-form-item>
-              </el-col>
-              <el-col :span="8">
-                <el-form-item label="登录IP">
-                  <el-input v-model="searchform.ipaddr" placeholder="请输入登录IP"></el-input>
-                </el-form-item>
-              </el-col>
-              <el-col :span="8">
-                <el-form-item label="登录日期">
-                  <el-date-picker v-model="searchform.logindate" type="daterange" range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期"
-                    style="width:100%"></el-date-picker>
-                </el-form-item>
-              </el-col>
-            </el-row>
-            <el-row>
-              <el-col class="line" :span="24" style="background-color:lightgrey; line-height: 1px">&nbsp;</el-col>
-            </el-row>
-            <el-row :gutter="0" style="text-align:right;margin-top:10px;">
-              <el-button type="primary" size="small" style="margin-top:0px" @click="seachdata">查询</el-button>
-              <el-button type="primary" class="el-button--small" @click="clearSearch" style="margin-left:8px">重 置</el-button>
-            </el-row>
-          </el-form>
-        </el-collapse-item>
-      </el-collapse>
-      <el-table ref="multipleTable" :data="list" border tooltip-effect="dark" style="width: 100%">
+
+      <el-table ref="multipleTable" :data="list" bordertooltip-effect="dark" border height="calc(100vh - 230px)">
         <el-table-column prop="Loginby" align="center" label="登录人" show-overflow-tooltip></el-table-column>
         <el-table-column prop="LoginIp" align="center" label="登录IP" show-overflow-tooltip></el-table-column>
         <el-table-column label="登录日期" align="center" show-overflow-tooltip>
@@ -50,10 +38,38 @@
           </template>
         </el-table-column>
       </el-table>
-      <el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange" :current-page="currentPage" :page-sizes="[10, 15, 20]"
-        :page-size="size" layout="total, sizes, prev, pager, next, jumper" :total="currentItemCount">
+      <el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange" :current-page="currentPage"
+        :page-sizes="[10, 15, 20]" :page-size="size" layout="total, sizes, prev, pager, next, jumper"
+        :total="currentItemCount">
       </el-pagination>
     </el-card>
+
+    <el-dialog title="高级查询" :visible.sync="dialogVisible" width="700px">
+      <el-form ref="advancedSearchForm" label-width="90px">
+        <el-row>
+          <el-col :span="12">
+            <el-form-item label="登录日期">
+              <el-date-picker size="mini" v-model="searchform.logindate" type="daterange" style="width:100%"
+                range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期"></el-date-picker>
+            </el-form-item>
+          </el-col>
+          <el-col :span="12">
+            <el-form-item label="登录人">
+              <el-input size="mini" v-model="searchform.person" style="width:100%" placeholder="请输入登录人"></el-input>
+            </el-form-item>
+          </el-col>
+          <el-col :span="12">
+            <el-form-item label="登录IP">
+              <el-input size="mini" v-model="searchform.ipaddr" style="width:100%" placeholder="请输入登录IP"></el-input>
+            </el-form-item>
+          </el-col>
+        </el-row>
+      </el-form>
+      <span slot="footer" class="dialog-footer">
+        <el-button size="mini" @click="dialogVisible = false">取 消</el-button>
+        <el-button size="mini" type="primary" @click="seachdata">查 询</el-button>
+      </span>
+    </el-dialog>
   </div>
 </template>
 <script>
@@ -61,6 +77,7 @@
     name: 'loginlog',
     data() {
       return {
+        dialogVisible: false,
         currentItemCount: 0, // 当前页显示数量
         currentPage: 1, // 当前页
         size: 10, // 每页显示数量
@@ -125,6 +142,13 @@
         this.currentPage = value
         this.initData()
       },
+      searchCommand(command) {
+        if (command == 'search') {
+          this.dialogVisible = true
+        } else if (command == 'clear') {
+          this.clearSearch()
+        }
+      },
       clearSearch() {
         this.searchform.person = ''
         this.searchform.ipaddr = ''

+ 27 - 11
src/dashoo.cn/frontend_web/src/pages/log/operationlog/_opera/detail.vue

@@ -1,20 +1,34 @@
+<style>
+  .input-with-select .el-select .el-input {
+    width: 110px;
+  }
+
+  .input-with-select .el-input-group__append {
+    background-color: #fff;
+  }
+
+</style>
+
 <template>
   <div>
-    <el-breadcrumb class="heading">
-      <el-breadcrumb-item :to="{ path: '/' }">平台首页</el-breadcrumb-item>
-      <el-breadcrumb-item :to="{ path: '/log/operationlog' }">操作日志</el-breadcrumb-item>
-      <el-breadcrumb-item>详情</el-breadcrumb-item>
-    </el-breadcrumb>
-    <el-card class="box-card">
-      <div slot="header">
-        <span>
-          <i class="icon icon-table2"> </i> 操作日志详情
+    <el-card style="min-height: calc(100vh - 92px);">
+      <div slot="header" style="height: 20px;">
+        <span style="float: left;">
+          <i class="icon icon-table2"></i>
         </span>
+        <el-breadcrumb class="heading" style="float: left; margin-left: 5px">
+          <el-breadcrumb-item :to="{ path: '/' }">平台首页</el-breadcrumb-item>
+          <el-breadcrumb-item :to="{ path: '/log/operationlog' }">操作日志</el-breadcrumb-item>
+          <el-breadcrumb-item>操作日志详情</el-breadcrumb-item>
+        </el-breadcrumb>
         <span style="float: right;">
-          <el-button type="primary" class="el-button--small" onclick="window.history.go(-1)">返回</el-button>
+          <el-button size="mini" type="primary" class="el-button--small" style="margin-left: 8px"
+            onclick="window.history.go(-1)">返回</el-button>
         </span>
       </div>
-      <el-table ref="multipleTable" border :data="list2" tooltip-effect="dark" style="width: 100%" v-if="list.OpTage==1">
+
+      <el-table ref="multipleTable" border :data="list2" tooltip-effect="dark" style="width: 100%"
+        v-if="list.OpTage==1">
         <el-table-column :label="'操作人: '+list.Createby">
           <el-table-column prop="name" label="名称" show-overflow-tooltip></el-table-column>
         </el-table-column>
@@ -119,12 +133,14 @@
     border-collapse: collapse;
     margin-left: 13%;
     font-size: 20px;
+
     .tablehead {
       th {
         width: 30%;
         border: 2px solid black;
       }
     }
+
     td {
       border: 2px solid black;
       padding-left: 20px;

+ 72 - 47
src/dashoo.cn/frontend_web/src/pages/log/operationlog/index.vue

@@ -1,52 +1,35 @@
 <template>
   <div>
-    <el-breadcrumb class="heading">
-      <el-breadcrumb-item :to="{ path: '/' }">平台首页</el-breadcrumb-item>
-      <el-breadcrumb-item>操作日志</el-breadcrumb-item>
-    </el-breadcrumb>
-    <el-card class="box-card">
-      <div slot="header">
-        <span>
-          <i class="icon icon-table2"> </i> 操作日志列表
+    <el-card class="box-card" style="height: calc(100vh - 92px);">
+      <div slot="header" style="height: 20px;">
+        <span style="float: left;">
+          <i class="icon icon-table2"></i>
         </span>
+        <el-breadcrumb class="heading" style="float: left; margin-left: 5px">
+          <el-breadcrumb-item :to="{ path: '/' }">平台首页</el-breadcrumb-item>
+          <el-breadcrumb-item>操作日志</el-breadcrumb-item>
+        </el-breadcrumb>
+        <el-form ref="form" :inline="true" style="float: right; margin-top: -10px">
+          <el-form-item label="操作日期">
+            <el-date-picker size="mini" style="width: 220px" v-model="searchform.CreateOn" type="daterange"
+              range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期"></el-date-picker>
+          </el-form-item>
+          <el-form-item label="操作菜单">
+            <el-input size="mini" style="width: 165px;" v-model="searchform.Menu" placeholder="请输入操作菜单"></el-input>
+          </el-form-item>
+          <el-form-item>
+            <el-dropdown split-button type="primary" size="mini" @click="seachdata" @command="searchCommand">
+              查询
+              <el-dropdown-menu slot="dropdown">
+                <el-dropdown-item command="search">高级查询</el-dropdown-item>
+                <el-dropdown-item command="clear">查询重置</el-dropdown-item>
+              </el-dropdown-menu>
+            </el-dropdown>
+          </el-form-item>
+        </el-form>
       </div>
-      <el-collapse>
-        <el-collapse-item title="查询" name="1">
-          <el-form ref="form" label-width="110px">
-            <el-row :gutter="0">
-              <el-col :span="6">
-                <el-form-item label="操作菜单">
-                  <el-input v-model="searchform.Menu" placeholder="请输入操作菜单"></el-input>
-                </el-form-item>
-              </el-col>
-              <el-col :span="6">
-                <el-form-item label="操作描述">
-                  <el-input v-model="searchform.Description" placeholder="请输入操作描述"></el-input>
-                </el-form-item>
-              </el-col>
-              <el-col :span="6">
-                <el-form-item label="操作人">
-                  <el-input v-model="searchform.CreateBy" placeholder="请输入录入人"></el-input>
-                </el-form-item>
-              </el-col>
-              <el-col :span="6">
-                <el-form-item label="操作日期">
-                  <el-date-picker v-model="searchform.CreateOn" type="daterange" range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期"
-                    style="width:100%"></el-date-picker>
-                </el-form-item>
-              </el-col>
-            </el-row>
-            <el-row>
-              <el-col class="line" :span="24" style="background-color:lightgrey; line-height: 1px">&nbsp;</el-col>
-            </el-row>
-            <el-row :gutter="0" style="text-align:right;margin-top:10px;">
-              <el-button type="primary" size="small" style="margin-top:0px" @click="seachdata">查询</el-button>
-              <el-button type="primary" class="el-button--small" @click="clearSearch" style="margin-left:8px">重 置</el-button>
-            </el-row>
-          </el-form>
-        </el-collapse-item>
-      </el-collapse>
-      <el-table ref="multipleTable" :data="list" border tooltip-effect="dark" style="width: 100%">
+
+      <el-table ref="multipleTable" :data="list" bordertooltip-effect="dark" border height="calc(100vh - 230px)">
         <el-table-column label="操作" width="80" align="center">
           <template slot-scope="scope">
             <router-link :to="'/log/operationlog/'+scope.row.Id+'/detail'">
@@ -65,10 +48,44 @@
           </template>
         </el-table-column>
       </el-table>
-      <el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange" :current-page="currentPage" :page-sizes="[10, 15, 20]"
-        :page-size="size" layout="total, sizes, prev, pager, next, jumper" :total="currentItemCount">
+      <el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange" :current-page="currentPage"
+        :page-sizes="[10, 15, 20]" :page-size="size" layout="total, sizes, prev, pager, next, jumper"
+        :total="currentItemCount">
       </el-pagination>
     </el-card>
+
+    <el-dialog title="高级查询" :visible.sync="dialogVisible" width="700px">
+      <el-form ref="advancedSearchForm" label-width="90px">
+        <el-row>
+          <el-col :span="12">
+            <el-form-item label="操作日期">
+              <el-date-picker size="mini" v-model="searchform.CreateOn" type="daterange" style="width:100%"
+                range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期"></el-date-picker>
+            </el-form-item>
+          </el-col>
+          <el-col :span="12">
+            <el-form-item label="操作人">
+              <el-input size="mini" v-model="searchform.CreateBy" style="width:100%" placeholder="请输入操作人"></el-input>
+            </el-form-item>
+          </el-col>
+          <el-col :span="12">
+            <el-form-item label="操作菜单">
+              <el-input size="mini" v-model="searchform.Menu" style="width:100%" placeholder="请输入操作菜单"></el-input>
+            </el-form-item>
+          </el-col>
+          <el-col :span="12">
+            <el-form-item label="操作描述">
+              <el-input size="mini" v-model="searchform.Description" style="width:100%" placeholder="请输入操作描述">
+              </el-input>
+            </el-form-item>
+          </el-col>
+        </el-row>
+      </el-form>
+      <span slot="footer" class="dialog-footer">
+        <el-button size="mini" @click="dialogVisible = false">取 消</el-button>
+        <el-button size="mini" type="primary" @click="seachdata">查 询</el-button>
+      </span>
+    </el-dialog>
   </div>
 </template>
 <script>
@@ -76,6 +93,7 @@
     name: 'sampleslog',
     data() {
       return {
+        dialogVisible: false,
         currentItemCount: 0, // 当前页显示数量
         currentPage: 1, // 当前页
         size: 10, // 每页显示数量
@@ -142,6 +160,13 @@
         this.currentPage = value
         this.initData()
       },
+      searchCommand(command) {
+        if (command == 'search') {
+          this.dialogVisible = true
+        } else if (command == 'clear') {
+          this.clearSearch()
+        }
+      },
       clearSearch() {
         this.searchform.Menu = ''
         this.searchform.Description = ''

+ 25 - 10
src/dashoo.cn/frontend_web/src/pages/log/samplelog/_opera/detail.vue

@@ -1,19 +1,32 @@
+<style>
+  .input-with-select .el-select .el-input {
+    width: 110px;
+  }
+
+  .input-with-select .el-input-group__append {
+    background-color: #fff;
+  }
+
+</style>
+
 <template>
   <div>
-    <el-breadcrumb class="heading">
-      <el-breadcrumb-item :to="{ path: '/' }">平台首页</el-breadcrumb-item>
-      <el-breadcrumb-item :to="{ path: '/log/samplelog' }">样本日志</el-breadcrumb-item>
-      <el-breadcrumb-item>详情</el-breadcrumb-item>
-    </el-breadcrumb>
-    <el-card class="box-card">
-      <div slot="header">
-        <span>
-          <i class="icon icon-table2"> 样本日志详情</i>
+    <el-card style="min-height: calc(100vh - 92px);">
+      <div slot="header" style="height: 20px;">
+        <span style="float: left;">
+          <i class="icon icon-table2"></i>
         </span>
+        <el-breadcrumb class="heading" style="float: left; margin-left: 5px">
+          <el-breadcrumb-item :to="{ path: '/' }">平台首页</el-breadcrumb-item>
+          <el-breadcrumb-item :to="{ path: '/log/samplelog' }">样本日志</el-breadcrumb-item>
+          <el-breadcrumb-item>样本日志详情</el-breadcrumb-item>
+        </el-breadcrumb>
         <span style="float: right;">
-          <el-button type="primary" class="el-button--small" onclick="window.history.go(-1)">返回</el-button>
+          <el-button size="mini" type="primary" class="el-button--small" style="margin-left: 8px"
+            onclick="window.history.go(-1)">返回</el-button>
         </span>
       </div>
+
       <el-table ref="multipleTable" :data="list2" tooltip-effect="dark" style="width: 100%" v-if="list.OpType!==2">
         <el-table-column :label="'操作人: '+list.CreateBy">
           <el-table-column prop="name" label="名称" show-overflow-tooltip></el-table-column>
@@ -121,12 +134,14 @@
     border-collapse: collapse;
     margin-left: 13%;
     font-size: 20px;
+
     .tablehead {
       th {
         width: 30%;
         border: 2px solid black;
       }
     }
+
     td {
       border: 2px solid black;
     }

+ 72 - 47
src/dashoo.cn/frontend_web/src/pages/log/samplelog/index.vue

@@ -1,52 +1,36 @@
 <template>
   <div>
-    <el-breadcrumb class="heading">
-      <el-breadcrumb-item :to="{ path: '/' }">平台首页</el-breadcrumb-item>
-      <el-breadcrumb-item>样本日志</el-breadcrumb-item>
-    </el-breadcrumb>
-    <el-card class="box-card">
-      <div slot="header">
-        <span>
-          <i class="icon icon-table2"> </i> 样本日志列表
+    <el-card class="box-card" style="height: calc(100vh - 92px);">
+      <div slot="header" style="height: 20px;">
+        <span style="float: left;">
+          <i class="icon icon-table2"></i>
         </span>
+        <el-breadcrumb class="heading" style="float: left; margin-left: 5px">
+          <el-breadcrumb-item :to="{ path: '/' }">平台首页</el-breadcrumb-item>
+          <el-breadcrumb-item>样本日志</el-breadcrumb-item>
+        </el-breadcrumb>
+        <el-form ref="form" :inline="true" style="float: right; margin-top: -10px">
+          <el-form-item label="操作日期">
+            <el-date-picker size="mini" style="width: 220px" v-model="searchform.CreateOn" type="daterange"
+              range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期"></el-date-picker>
+          </el-form-item>
+          <el-form-item label="样本条码">
+            <el-input size="mini" style="width: 165px;" v-model="searchform.BarCode" placeholder="请输入样本条码"></el-input>
+          </el-form-item>
+          <el-form-item>
+            <el-dropdown split-button type="primary" size="mini" @click="seachdata" @command="searchCommand">
+              查询
+              <el-dropdown-menu slot="dropdown">
+                <el-dropdown-item command="search">高级查询</el-dropdown-item>
+                <el-dropdown-item command="clear">查询重置</el-dropdown-item>
+              </el-dropdown-menu>
+            </el-dropdown>
+          </el-form-item>
+        </el-form>
       </div>
-      <el-collapse>
-        <el-collapse-item title="查询" name="1">
-          <el-form ref="form" label-width="110px">
-            <el-row :gutter="0">
-              <el-col :span="6">
-                <el-form-item label="样本条码">
-                  <el-input v-model="searchform.BarCode" placeholder="请输入样本条码"></el-input>
-                </el-form-item>
-              </el-col>
-              <el-col :span="6">
-                <el-form-item label="样本编码">
-                  <el-input v-model="searchform.SampleCode" placeholder="请输入样本编码"></el-input>
-                </el-form-item>
-              </el-col>
-              <el-col :span="6">
-                <el-form-item label="操作人">
-                  <el-input v-model="searchform.CreateBy" placeholder="请输入操作人"></el-input>
-                </el-form-item>
-              </el-col>
-              <el-col :span="6">
-                <el-form-item label="操作日期">
-                  <el-date-picker v-model="searchform.CreateOn" type="daterange" range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期"
-                    style="width:100%"></el-date-picker>
-                </el-form-item>
-              </el-col>
-            </el-row>
-            <el-row>
-              <el-col class="line" :span="24" style="background-color:lightgrey; line-height: 1px">&nbsp;</el-col>
-            </el-row>
-            <el-row :gutter="0" style="text-align:right;margin-top:10px;">
-              <el-button type="primary" size="small" style="margin-top:0px" @click="seachdata">查询</el-button>
-              <el-button type="primary" class="el-button--small" @click="clearSearch" style="margin-left:8px">重 置</el-button>
-            </el-row>
-          </el-form>
-        </el-collapse-item>
-      </el-collapse>
-      <el-table ref="multipleTable" :data="list" border tooltip-effect="dark" style="width: 100%">
+
+      <el-table ref="multipleTable" :data="list" bordertooltip-effect="dark" border height="calc(100vh - 230px)"
+        style="width: 100%;">
         <el-table-column label="操作" width="80" align="center">
           <template slot-scope="scope">
             <router-link :to="'/log/samplelog/'+scope.row.id+'/detail'">
@@ -72,10 +56,43 @@
           </template>
         </el-table-column>
       </el-table>
-      <el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange" :current-page="currentPage" :page-sizes="[10, 15, 20]"
-        :page-size="size" layout="total, sizes, prev, pager, next, jumper" :total="currentItemCount">
+      <el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange" :current-page="currentPage"
+        :page-sizes="[10, 15, 20]" :page-size="size" layout="total, sizes, prev, pager, next, jumper"
+        :total="currentItemCount">
       </el-pagination>
     </el-card>
+
+    <el-dialog title="高级查询" :visible.sync="dialogVisible" width="700px">
+      <el-form ref="advancedSearchForm" label-width="90px">
+        <el-row>
+          <el-col :span="12">
+            <el-form-item label="操作日期">
+              <el-date-picker size="mini" v-model="searchform.CreateOn" type="daterange" style="width:100%"
+                range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期"></el-date-picker>
+            </el-form-item>
+          </el-col>
+          <el-col :span="12">
+            <el-form-item label="操作人">
+              <el-input size="mini" v-model="searchform.CreateBy" style="width:100%" placeholder="请输入操作人"></el-input>
+            </el-form-item>
+          </el-col>
+          <el-col :span="12">
+            <el-form-item label="样本条码">
+              <el-input size="mini" v-model="searchform.BarCode" style="width:100%" placeholder="请输入样本条码"></el-input>
+            </el-form-item>
+          </el-col>
+          <el-col :span="12">
+            <el-form-item label="样本编码">
+              <el-input size="mini" v-model="searchform.SampleCode" style="width:100%" placeholder="请输入样本编码"></el-input>
+            </el-form-item>
+          </el-col>
+        </el-row>
+      </el-form>
+      <span slot="footer" class="dialog-footer">
+        <el-button size="mini" @click="dialogVisible = false">取 消</el-button>
+        <el-button size="mini" type="primary" @click="seachdata">查 询</el-button>
+      </span>
+    </el-dialog>
   </div>
 </template>
 <script>
@@ -83,6 +100,7 @@
     name: 'sampleslog',
     data() {
       return {
+        dialogVisible: false,
         currentItemCount: 0, // 当前页显示数量
         currentPage: 1, // 当前页
         size: 10, // 每页显示数量
@@ -151,6 +169,13 @@
         this.currentPage = value
         this.initData()
       },
+      searchCommand(command) {
+        if (command == 'search') {
+          this.dialogVisible = true
+        } else if (command == 'clear') {
+          this.clearSearch()
+        }
+      },
       clearSearch() {
         this.searchform.BarCode = ''
         this.searchform.SampleCode = ''