| | |
| | | standardTree, |
| | | standardMethod, |
| | | StandardTemplate, |
| | | insOrder |
| | | insOrder, |
| | | insOrderPlan |
| | | } |
| | | } |
| | | |
| | |
| | | selectInsOrderParameter: "/insOrder/selectInsOrderParameter", //æ¥è¯¢æ£éªä¸å |
| | | } |
| | | |
| | | const insOrderPlan = { |
| | | selectInsOrderPlanList: "/insOrderPlan/selectInsOrderPlanList", //æ¥è¯¢æ£éªä»»å¡ |
| | | } |
| | | |
| | | |
| | | |
| | | const systemLog = { |
| | | selectSystemLogList: "/systemLog/selectSystemLogList", //è·åæ¥å¿ |
| | | } |
| | |
| | | } |
| | | </style> |
| | | <style> |
| | | .value-table .highlight-warning-row-border td{ |
| | | border-top: 2px solid #ffcd29; |
| | | border-bottom: 2px solid #ffcd29; |
| | | } |
| | | .value-table .highlight-warning-row-border td:first-child{ |
| | | border-left: 2px solid #ffcd29; |
| | | } |
| | | .value-table .highlight-warning-row-border td:last-child{ |
| | | border-right: 2px solid #ffcd29; |
| | | } |
| | | .value-table .highlight-danger-row-border td{ |
| | | border-top: 2px solid red; |
| | | border-bottom: 2px solid red; |
| | | } |
| | | .value-table .highlight-danger-row-border td:first-child{ |
| | | border-left: 2px solid red; |
| | | } |
| | | .value-table .highlight-danger-row-border td:last-child{ |
| | | border-right: 2px solid red; |
| | | } |
| | | .value-table .el-upload { |
| | | width: 100%; |
| | | } |
| | |
| | | <el-table ref="eltable" :data="tableData" style="width: 100%;" height="100%" tooltip-effect="dark" border |
| | | @selection-change="selectChange" @select="select" v-loading="loading" @sort-change="sortChange" |
| | | @row-click="rowClick" :show-summary="data.countFleid!=undefined && data.countFleid.length > 0" |
| | | :summary-method="getSummaries" :key="Math.random()"> |
| | | :summary-method="getSummaries" :key="Math.random()" :row-class-name="tableRowClassName"> |
| | | <el-table-column type="selection" width="65" v-if="data.showSelect" :key="Math.random()"> |
| | | </el-table-column> |
| | | <el-table-column type="index" align="center" label="åºå·" width="70" v-if="data.isIndex" :key="Math.random()"> |
| | | </el-table-column> |
| | | <el-table-column :prop="a.label" :label="a.value" sortable="custom" v-for="(a, ai) in tableHead" :key="ai" |
| | | show-overflow-tooltip min-width="160"> |
| | | show-overflow-tooltip min-width="160"> |
| | | <template slot-scope="scope"> |
| | | <div v-if="showType(a.label, data.tagField) != null"> |
| | | <el-tag v-for="(b, bi) in data.tagField[a.label].select" :key="bi" v-if="b.value == scope.row[a.label]" |
| | |
| | | } from 'iview'; |
| | | export default { |
| | | props: { |
| | | tableRowClassName:{ |
| | | type: Function |
| | | }, |
| | | url: { |
| | | type: String, |
| | | default: () => null |
| | |
| | | return |
| | | } |
| | | for (var i = 0; i < this.data.requiredAdd.length; i++) { |
| | | if (this.upData[this.data.requiredAdd[i]] == null || this.upData[this.data.requiredAdd[i]] == '') { |
| | | if (this.upData[this.data.requiredAdd[i]] === null || this.upData[this.data.requiredAdd[i]] === '') { |
| | | var list = this.upHead.filter(a => { |
| | | if (a.label == this.data.requiredAdd[i]) return a |
| | | }) |
¶Ô±ÈÐÂÎļþ |
| | |
| | | <style scoped> |
| | | .ins-order-plan-main{ |
| | | padding-top: 60px; |
| | | } |
| | | .ins-order-plan-main .search{ |
| | | width: 100%; |
| | | margin-bottom: 10px; |
| | | height: 10vh; |
| | | background-color: #fff; |
| | | border-radius: 3px; |
| | | } |
| | | .search .form-inline{ |
| | | height: 5vh; |
| | | padding-top:2.5vh; |
| | | padding-left: 1%; |
| | | } |
| | | .ins-order-plan-main .center{ |
| | | width: 100%; |
| | | height: 70vh; |
| | | background-color: #fff; |
| | | border-radius: 3px; |
| | | } |
| | | .ins-order-plan-main .center .value-table{ |
| | | width:98%; |
| | | height: 80%; |
| | | margin-left:1%; |
| | | } |
| | | .tab { |
| | | list-style-type: none; |
| | | display: flex; |
| | | padding: 10px 0px; |
| | | } |
| | | .tab li { |
| | | line-height: 24px; |
| | | padding: 6px 14px; |
| | | font-size: 14px; |
| | | color: #333333; |
| | | border: 1px solid #EEEEEE; |
| | | cursor: pointer; |
| | | } |
| | | |
| | | .tab li:nth-child(1) { |
| | | border-radius: 8px 0 0 8px; |
| | | } |
| | | |
| | | .tab li:nth-child(3) { |
| | | border-radius: 0 8px 8px 0; |
| | | } |
| | | |
| | | .tab li.active { |
| | | border-color: #3A7BFA; |
| | | color: #3A7BFA; |
| | | } |
| | | .center .center-options:nth-child(1){ |
| | | padding-left: 1%; |
| | | } |
| | | .center .center-options .center-title { |
| | | width:85%; |
| | | padding-top: 20px; |
| | | text-align: right; |
| | | } |
| | | .center .center-options .center-title span:last-child{ |
| | | color: #3A7BFA; |
| | | font-size: 23px; |
| | | font-weight: 400; |
| | | } |
| | | |
| | | </style> |
| | | <template> |
| | | <div class="ins-order-plan-main"> |
| | | <div class="search"> |
| | | <el-form :inline="true" :model="searchForm" class="form-inline"> |
| | | <el-form-item label="æ ·ååç§°:"> |
| | | <el-input clearable v-model="searchForm.sampleName" size="small" placeholder="请è¾å
¥"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="ç¶æ:"> |
| | | <el-select clearable size="small" v-model="searchForm.state" placeholder="è¯·éæ©"> |
| | | <el-option v-for="(item,index) in insStateList" :key="index" |
| | | :label="item.label" :value="item.value"></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item> |
| | | <el-button size="small" @click="onReset">éç½®</el-button> |
| | | <el-button size="small" type="primary" @click="onSubmit">æ¥è¯¢</el-button> |
| | | </el-form-item> |
| | | </el-form> |
| | | </div> |
| | | <div class="center"> |
| | | <div class="center-options"> |
| | | <el-row> |
| | | <el-col :span="20"> |
| | | <ul class="tab"> |
| | | <li v-for="(m,i) in tabList" :key="i" :class="{active:i==tabIndex}" @click="handleTab(m,i)">{{m.label}}</li> |
| | | </ul> |
| | | </el-col> |
| | | <el-col :span="4"> |
| | | <div class="center-title"> |
| | | <span>æ»è®¡ä»»å¡æ°é:</span> |
| | | <span v-text="planTotal"></span> |
| | | </div> |
| | | </el-col> |
| | | </el-row> |
| | | </div> |
| | | <ValueTable :tableRowClassName="changeRowClass" class="value-table" ref="insOrderPlan" :url="$api.insOrderPlan.selectInsOrderPlanList" :upUrl="$api.user.updateUser" :componentData="componentData" :key="upIndex" @upUser="upUser"/> |
| | | </div> |
| | | </div> |
| | | </template> |
| | | |
| | | <script> |
| | | import ValueTable from '../tool/value-table.vue' |
| | | import { getYearAndMonthAndDays } from '../../util/date' |
| | | export default { |
| | | components:{ |
| | | ValueTable |
| | | }, |
| | | data(){ |
| | | return { |
| | | searchForm:{ |
| | | sampleName: null, |
| | | state: null |
| | | }, |
| | | tabList: [ |
| | | { |
| | | label: 'å®éªå®¤1', |
| | | value: 1 |
| | | }, |
| | | { |
| | | label: 'å®éªå®¤2', |
| | | value: 2 |
| | | }, |
| | | { |
| | | label: 'å®éªå®¤3', |
| | | value: 3 |
| | | } |
| | | ], |
| | | active: 1, |
| | | tabIndex: 0, |
| | | componentData: { |
| | | entity: { |
| | | state: 1, |
| | | insState: null, |
| | | sample: null, |
| | | orderBy: { |
| | | field: 'type', |
| | | order: 'desc' |
| | | } |
| | | }, |
| | | isIndex: true, |
| | | showSelect: false, |
| | | select: false, |
| | | do: [{ |
| | | id: '', |
| | | font: 'æ£éª', |
| | | type: 'text', |
| | | method: '', |
| | | field:[] |
| | | },{ |
| | | id: '', |
| | | font: '交æ¥', |
| | | type: 'text', |
| | | method: '' |
| | | }, |
| | | { |
| | | id: '', |
| | | font: '夿 ¸', |
| | | type: 'text', |
| | | method: '' |
| | | },{ |
| | | id: '', |
| | | font: '认é¢', |
| | | type: 'text', |
| | | method: '' |
| | | }], |
| | | tagField: { |
| | | type:{ |
| | | select:[] |
| | | }, |
| | | insState:{ |
| | | select:[] |
| | | } |
| | | }, |
| | | selectField: {}, |
| | | requiredAdd:[], |
| | | requiredUp:[] |
| | | }, |
| | | upIndex: 0, |
| | | planTotal: 0, |
| | | insStateList: [] |
| | | } |
| | | }, |
| | | created(){ |
| | | this.getTypeDicts() |
| | | this.getInsStateDicts() |
| | | }, |
| | | methods:{ |
| | | upUser(){ |
| | | |
| | | }, |
| | | refreshTable() { |
| | | this.$refs.insOrderPlan.selectList() |
| | | this.$nextTick(()=>{ |
| | | this.planTotal = this.$refs.insOrderPlan.total |
| | | }) |
| | | }, |
| | | changeRowClass(obj,rowIndex){ |
| | | let currentTime = getYearAndMonthAndDays() |
| | | if(obj.row.sendTime && currentTime===obj.row.sendTime){ |
| | | return 'highlight-warning-row-border' |
| | | }else if(obj.row.sendTime && currentTime>obj.row.sendTime){ |
| | | return 'highlight-danger-row-border' |
| | | } |
| | | return '' |
| | | }, |
| | | onReset(){ |
| | | this.searchForm = { |
| | | sampleName: null, |
| | | state: null, |
| | | } |
| | | this.componentData.entity.insState = null |
| | | this.componentData.entity.sample = null |
| | | this.refreshTable() |
| | | }, |
| | | onSubmit(){ |
| | | this.componentData.entity.insState = this.searchForm.state |
| | | this.componentData.entity.sample = this.searchForm.sampleName |
| | | this.$nextTick(()=>{ |
| | | this.refreshTable() |
| | | }) |
| | | }, |
| | | handleTab(m, i) { |
| | | this.tabIndex = i; |
| | | //this.componentData.entity.state = m.value |
| | | //this.refreshTable() |
| | | }, |
| | | getTypeDicts() { |
| | | this.$axios.post(this.$api.enums.selectEnumByCategory, { |
| | | category: "ç´§æ¥ç¨åº¦" |
| | | }).then(res => { |
| | | let data = res.data |
| | | data.forEach(ele=>{ |
| | | if(ele.value==='0'){ |
| | | ele.type='success' |
| | | }else if(ele.value==='1'){ |
| | | ele.type='warning' |
| | | }else if(ele.value==='2'){ |
| | | ele.type='danger' |
| | | } |
| | | }) |
| | | this.componentData.tagField.type.select = data |
| | | }) |
| | | }, |
| | | getInsStateDicts() { |
| | | this.$axios.post(this.$api.enums.selectEnumByCategory, { |
| | | category: "æ£éªä»»å¡ç¶æ" |
| | | }).then(res => { |
| | | let data = res.data |
| | | this.insStateList = data |
| | | data.forEach(ele=>{ |
| | | //0:å¾
æ£éª 1:æ£éªä¸ 2:å·²æ£éª 3:å¾
夿 ¸ 4:夿 ¸æªéè¿ 5:夿 ¸éè¿ |
| | | if(['2','5'].includes(ele.value)){ |
| | | ele.type='success' |
| | | }else if(['1','3'].includes(ele.value)){ |
| | | ele.type='warning' |
| | | }else if(['0','4'].includes(ele.value)){ |
| | | ele.type='danger' |
| | | } |
| | | }) |
| | | this.componentData.tagField.insState.select = data |
| | | }) |
| | | }, |
| | | } |
| | | } |
| | | </script> |
| | |
| | | } |
| | | } |
| | | } |
| | | </script> |
| | | </script> |
¶Ô±ÈÐÂÎļþ |
| | |
| | | /** |
| | | * è·åå¹´ææ¥ |
| | | */ |
| | | export function getYearAndMonthAndDays() { |
| | | const date = new Date() |
| | | let year = date.getFullYear() |
| | | let month = date.getMonth() + 1 |
| | | if (month < 10) { |
| | | month = '0' + month + '-' |
| | | } else { |
| | | month = month + '-' |
| | | } |
| | | year = year + '-' |
| | | let days = date.getDate() |
| | | return year + month + days |
| | | } |
| | |
| | | }, { |
| | | v: "æ£éªä»»å¡", |
| | | i: "font icon-erjidaohang", |
| | | u: "", |
| | | p: "" |
| | | u: "b1-inspect-order-plan", |
| | | p: "selectInsOrderPlanList" |
| | | }, { |
| | | v: "æ¥åç¼å¶", |
| | | i: "font icon-erjidaohang", |