From 86a84c327007a1fb398fa2aefff1bffc03a83cfb Mon Sep 17 00:00:00 2001
From: Crunchy <3114200645@qq.com>
Date: 星期二, 06 八月 2024 22:36:02 +0800
Subject: [PATCH] 委托下单,禁止下拉框输入
---
src/components/view/b3-classes.vue | 471 +++++++++++++++++++++++++++++++++++++++++++++++++++-------
1 files changed, 413 insertions(+), 58 deletions(-)
diff --git a/src/components/view/b3-classes.vue b/src/components/view/b3-classes.vue
index 0417519..eca7f12 100644
--- a/src/components/view/b3-classes.vue
+++ b/src/components/view/b3-classes.vue
@@ -44,12 +44,13 @@
<el-button size="small" type="primary" @click="refreshTable()">鏌� 璇�</el-button>
</div>
<div class="search_thing btns" style="padding-left: 30px;">
- <el-button size="small" type="primary" v-if="downPower">瀵� 鍑�</el-button>
+ <el-button size="small" type="primary" v-if="listPower" @click="configTime" :loading="downLoading">鏃堕棿閰嶇疆</el-button>
+ <el-button size="small" type="primary" v-if="downPower" @click="handleDown" :loading="downLoading">瀵� 鍑�</el-button>
<el-button size="small" type="primary" @click="schedulingVisible = true" v-if="addPower">鎺� 鐝�</el-button>
</div>
</div>
<div class="center" v-loading="pageLoading">
- <scroll-pagination @load="init" :finishLoding="finishLoding" v-show="query.month&&list.length>0" style="height: 100%;" :key="'123'">
+ <!-- <scroll-pagination @load="init" :finishLoding="finishLoding" v-show="query.month&&list.length>0" style="height: 100%;" :key="'123'" :list="list">
<div class="clearfix">
<div class="fixed-left">
<div class="content-title" style="padding-left: 16px;box-sizing: border-box;">
@@ -83,27 +84,114 @@
v-on:mouseenter="onMouseEnter(index)"
v-on:mouseleave="currentUserIndex=null">
<div class="content-body-item" v-for="(m,i) in item.list" :key="'d'+i" :class="{hoverType:currentUserIndex==index}">
- <div class="work-box" :class="{type0:m.shift==='0',type1:m.shift==='1',type2:m.shift==='2',type3:m.shift==='3',type4:m.shift==='4',type5:m.shift==='5',type6:m.shift==='6'}">
- <!-- <div class="work-box-left">
- <span>{{ getShiftByDic(m.shift) }}</span>
- </div> -->
- <el-dropdown trigger="click" placement="bottom" @command="e=>handleCommand(e,m)" :disabled="!downPower">
- <!-- <i class="el-icon-arrow-down el-icon--right" style="font-size: 20px;color: #fff;cursor: pointer;"></i> -->
+ <el-dropdown trigger="click" placement="bottom" @command="e=>handleCommand(e,m)" :disabled="!upPower" style="width: 100%;height: 100%;cursor: pointer;">
+ <div class="work-box" :class="{type0:m.shift==='0',type1:m.shift==='1',type2:m.shift==='2',type3:m.shift==='3',type4:m.shift==='4',type5:m.shift==='5',type6:m.shift==='6'}">
<span style="cursor: pointer;" :style="`opacity: ${getShiftByDic(m.shift)=='鏃�'?0:1};`">{{ getShiftByDic(m.shift) }}</span>
+ </div>
<el-dropdown-menu slot="dropdown">
<el-dropdown-item v-for="(n,j) in classType" :key="'h'+j" :command="n.value">{{ n.label }}</el-dropdown-item>
</el-dropdown-menu>
</el-dropdown>
- </div>
</div>
</div>
</div>
</div>
</div>
- </scroll-pagination>
- <scroll-pagination @load="initYear" :finishLoding="finishLoding" v-show="!query.month&&yearList.length>0" style="width: 100%;" :key="'111'">
- <div class="clearfix year-table">
+ </scroll-pagination> -->
+ <div class="clearfix" style="width: 100%;" v-show="query.month">
<div class="fixed-left">
+ <div class="content-title" style="padding-left: 16px;box-sizing: border-box;">
+ 浜哄憳鍚嶇О
+ </div>
+ <div class="content-user" :class="{hoverType:currentUserIndex==index}" v-for="(item,index) in list" :key="'e'+index" v-on:mouseenter="onMouseEnter(index)"
+ v-on:mouseleave="currentUserIndex=null">
+ <div class="user-pic">{{ item.name.charAt(0) }}</div>
+ <div class="user-info">
+ <p style="font-size: 14px;color: #3A7BFA;line-height: 24px;">{{ item.name }}</p>
+ <p style="color: #999999;font-size: 12px;transform: scale(0.8) translateX(-20px);white-space: nowrap;width: 150px;overflow-x: show;">鏃�:{{ item.day0 }},涓�:{{ item.day1 }},澶�:{{ item.day2 }},浼�:{{ item.day3 }},鍋�:{{ item.day4 }},宸�:{{ item.day6 }}</p>
+ <p style="margin-top: 4px;"><span style="color: #999999;font-size: 12px;display: inline-block;transform: scale(0.8) translateX(-10px);">鍚堣鍑哄嫟: </span><span style="font-size: 16px;
+ color: #FF4902;">{{ query.month?item.monthlyAttendance
+.totalAttendance:item.sidebarAnnualAttendance
+.totalAttendance }}澶�</span></p>
+ </div>
+ </div>
+ </div>
+ <div class="scroll-right">
+ <div class="content">
+ <div class="content-title content-title-right" style="border-bottom: 0;">
+ <div class="content-title-item" v-for="(item,index) in weeks" :key="'b'+index">
+ <span class="month" style="position: absolute;top: 4px;" v-if="item.week=='鍛ㄦ棩'">{{ item.weekNum }}鍛�</span>
+ <p style="height: 26px;position: absolute;bottom: 12px;">
+ <span class="day">{{ item.day }}</span>
+ <span class="week">{{ item.week.charAt(1) }}</span>
+ </p>
+ </div>
+ </div>
+ <div class="content-body" v-for="(item,index) in list" :key="'c'+index"
+ v-on:mouseenter="onMouseEnter(index)"
+ v-on:mouseleave="currentUserIndex=null">
+ <div class="content-body-item" v-for="(m,i) in item.list" :key="'d'+i" :class="{hoverType:currentUserIndex==index}">
+ <el-dropdown trigger="click" placement="bottom" @command="e=>handleCommand(e,m)" :disabled="!upPower" style="width: 100%;height: 100%;cursor: pointer;">
+ <div class="work-box" :class="{type0:m.shift==='0',type1:m.shift==='1',type2:m.shift==='2',type3:m.shift==='3',type4:m.shift==='4',type5:m.shift==='5',type6:m.shift==='6'}">
+ <span style="cursor: pointer;" :style="`opacity: ${getShiftByDic(m.shift)=='鏃�'?0:1};`">{{ getShiftByDic(m.shift) }}</span>
+ </div>
+ <el-dropdown-menu slot="dropdown">
+ <el-dropdown-item v-for="(n,j) in classType" :key="'h'+j" :command="n.value">{{ n.label }}</el-dropdown-item>
+ </el-dropdown-menu>
+ </el-dropdown>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+ <div class="clearfix year-table" style="width: 100%;" v-show="!query.month">
+ <div class="fixed-left">
+ <div class="content-title" style="padding-left: 16px;box-sizing: border-box;">
+ 浜哄憳鍚嶇О
+ </div>
+ <div class="content-user" :class="{hoverType:currentUserIndex==index}" v-for="(item,index) in yearList" :key="'e'+index" v-on:mouseenter="onMouseEnter(index)"
+ v-on:mouseleave="currentUserIndex=null">
+ <div class="user-pic">{{ item.name.charAt(0) }}</div>
+ <div class="user-info">
+ <p style="font-size: 14px;color: #3A7BFA;line-height: 24px;">{{ item.name }}</p>
+ <p style="color: #999999;font-size: 12px;transform: scale(0.8) translateX(-20px);white-space: nowrap;width: 150px;overflow-x: show;">鏃�:{{ item.day0 }},涓�:{{ item.day1 }},澶�:{{ item.day2 }},浼�:{{ item.day3 }},鍋�:{{ item.day4 }},宸�:{{ item.day6 }}</p>
+ <p style="margin-top: 4px;"><span style="color: #999999;font-size: 12px;display: inline-block;transform: scale(0.8) translateX(-10px);">鍚堣鍑哄嫟: </span><span style="font-size: 16px;
+ color: #FF4902;">{{ item.work_time }}澶�</span></p>
+ </div>
+ </div>
+ </div>
+ <div class="scroll-right">
+ <div class="content">
+ <div>
+ <div class="content-title content-title-right" style="border-bottom: 0;height: 52px;" :style="`display: grid;
+ grid-template-columns: repeat(${monthList.length}, 1fr);`">
+ <div class="content-title-item" v-for="(item,index) in monthList" :key="'b'+index" style="height: 52px;">
+ <span class="month">{{ item }}鏈�</span>
+ </div>
+ </div>
+ <div
+ class="content-body"
+ v-for="(item,index) in yearList"
+ :key="'c'+index"
+ v-on:mouseenter="onMouseEnter(index)"
+ v-on:mouseleave="currentUserIndex=null"
+ :style="`display: grid;
+ grid-template-columns: repeat(${monthList.length}, 1fr);`"
+ >
+ <div class="content-body-item" v-for="(m,i) in item.monthList" :key="'d'+i" :class="{hoverType:currentUserIndex==index}">
+ <p style="color:rgb(153, 153, 153);font-size: 12px;">鍚堣鍑哄嫟锛�<span style="font-size: 14px;color:#000">{{ m.totalMonthAttendance }}</span></p>
+ <p style="color:rgb(153, 153, 153);font-size: 12px;">
+ 鏃�:{{ m.day0 }},涓�:{{ m.day1 }},澶�:{{ m.day2 }},浼�:{{ m.day3 }},鍋�:{{ m.day4 }},宸�:{{ m.day6 }}
+ </p>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+ <!-- <scroll-pagination @load="initYear" :finishLoding="finishLoding" v-show="!query.month&&yearList.length>0" style="width: 100%;" :key="'111'" :list="yearList">
+ <div class="clearfix year-table">
+ <div class="fixed-left">
<div class="content-title" style="padding-left: 16px;box-sizing: border-box;">
浜哄憳鍚嶇О
</div>
@@ -147,9 +235,85 @@
</div>
</div>
</div>
- </scroll-pagination>
- <span style="color:#909399;font-size:14px;position: absolute;left:50%;top: 50%;transform: translate(-59%,-50%);" v-if="(query.month&&list.length==0)||(!query.month&&yearList.length==0)">鏆傛棤鏁版嵁</span>
+ </scroll-pagination> -->
+ <!-- <span style="color:#909399;font-size:14px;position: absolute;left:50%;top: 50%;transform: translate(-59%,-50%);" v-if="(query.month&&list.length==0)||(!query.month&&yearList.length==0)">鏆傛棤鏁版嵁</span> -->
</div>
+<el-pagination
+ background
+ @current-change="currentChange"
+ :page-size="pageSize" :current-page="currentPage"
+ layout="total, prev, pager, next, jumper"
+ :total="total" style="margin-top: 10px;text-align: right;margin-right: 30px;">
+</el-pagination>
+
+ <el-dialog title="鏃堕棿閰嶇疆" :visible.sync="configTimeVisible" width="620px">
+ <div v-loading="configTimeVisibleLoading" style="min-height: 200px;">
+ <div v-for="(item, index) in timeQuery">
+ <div class="form" style="display: flex;justify-content: space-between">
+ <div style="margin-bottom: 12px;width: 200px;">
+ <span class="form_label">鐝锛�</span>
+ <span v-if="!item.isEdit"> {{item.type}} </span>
+ <span class="form_input" v-if="item.isEdit">
+ <el-select v-model="item.shift" placeholder="璇烽�夋嫨" style="width: 70%;margin-right: 8px;" clearable size="small">
+ <el-option v-for="obj in timeTypeList"
+ :key="obj.value"
+ :label="obj.label"
+ :value="obj.value">
+ </el-option>
+ </el-select>
+ </span>
+ </div>
+ <div style="width: calc(100% - 260px);">
+ <span class="form_label">鏃堕棿锛�</span>
+ <span v-if="!item.isEdit"> {{item.startTime&&item.endTime ? item.startTime + '~' + item.endTime:''}} </span>
+ <span class="form_input" v-if="item.isEdit">
+ <!-- <el-time-picker
+ style="width: 200px;"
+ is-range
+ size="small"
+ v-model="item.time"
+ range-separator="~"
+ format="HH:mm"
+ value-format="HH:mm"
+ start-placeholder="寮�濮嬫椂闂�"
+ end-placeholder="缁撴潫鏃堕棿"
+ placeholder="閫夋嫨鏃堕棿鑼冨洿">
+ </el-time-picker> -->
+ <el-time-select
+ placeholder="璧峰鏃堕棿"
+ v-model="item.startTime"
+ size="small"
+ :picker-options="{
+ start: '00:00',
+ step: '00:15',
+ end: '24:00'
+ }" style="width: 120px;">
+ </el-time-select>
+ <el-time-select
+ style="width: 120px;"
+ placeholder="缁撴潫鏃堕棿"
+ v-model="item.endTime"
+ size="small"
+ :picker-options="{
+ start: '00:00',
+ step: '00:15',
+ end: '24:00'
+ }">
+ </el-time-select>
+ </span>
+ </div>
+ <span>
+ <i class="el-icon-circle-check" v-if="item.isEdit" style="margin-left: 10px; color: #4b79f2;cursor: pointer;" @click="saveEdit(item, index)"></i>
+ <i class="el-icon-edit" v-if="!item.isEdit" style="margin-left: 10px; color: #4b79f2;cursor: pointer;" @click="item.isEdit = true"></i>
+ <i class="el-icon-delete" v-if=" timeQuery.length > 1" style="margin-left: 10px; color: #FF4902;cursor: pointer;" @click="deleteTime(item, index)"></i>
+ </span>
+ </div>
+ <el-divider></el-divider>
+ <div @click="addTimeForm" style="color: #4b79f2;cursor: pointer;" v-if="index === timeQuery.length - 1">娣诲姞鏃堕棿閰嶇疆</div>
+ </div>
+ <div @click="addTimeForm" style="color: #4b79f2" v-if="timeQuery.length === 0">娣诲姞鏃堕棿閰嶇疆</div>
+ </div>
+ </el-dialog>
<el-dialog title="鎺掔彮" :visible.sync="schedulingVisible" width="400px">
<div class="search_thing">
<div class="search_label" style="width:90px"><span style="color: red;margin-right: 4px;">*</span>鍛ㄦ锛�</div>
@@ -281,12 +445,18 @@
},
list:[],
currentPage: 1, // 褰撳墠椤�
- pageSize: 10, // 涓�椤�10鏉�
- total: '',
+ pageSize: 6, // 涓�椤�10鏉�
+ total: 0,
pageLoading: false, // 缁勪欢loading鐨勫睍绀�,榛樿涓簍rue
finishLoding: false, // 鍔犺浇瀹屾垚锛屾樉绀哄凡缁忔病鏈夋洿澶氫簡
monthList:[],
- yearList:[]
+ yearList:[],
+ downLoading:false,
+ configTimeVisible: false, // 鏃堕棿閰嶇疆寮规
+ configTimeVisibleLoading: false, // 鏃堕棿閰嶇疆寮规loading
+ timeTypeList: [],
+ timeQuery: [],
+ listPower:false,
}
},
watch: {
@@ -325,7 +495,7 @@
this.monthList.push(i)
}
this.monthList.reverse()
- // this.getPower()
+ this.getPower()
},
methods: {
refresh(){
@@ -354,10 +524,33 @@
this.initYear()
}
},
- init(){
- if(this.currentPage==1){
- this.pageLoading = true
+ currentChange(num){
+ this.currentPage = num
+ if(this.query.month){
+ this.init()
+ }else{
+ this.initYear()
}
+ },
+ transFromNumber(num){
+ let changeNum = ['闆�', '涓�', '浜�', '涓�', '鍥�', '浜�', '鍏�', '涓�', '鍏�', '涔�']; //changeNum[0] = "闆�"
+ let unit = ["", "鍗�", "鐧�", "鍗�", "涓�"];
+ num = parseInt(num);
+ let getWan = (temp) => {
+ let strArr = temp.toString().split("").reverse();
+ let newNum = "";
+ for (var i = 0; i < strArr.length; i++) {
+ newNum = (i == 0 && strArr[i] == 0 ? "" : (i > 0 && strArr[i] == 0 && strArr[i - 1] == 0 ? "" : changeNum[strArr[i]] + (strArr[i] == 0 ? unit[0] : unit[i]))) + newNum;
+ }
+ return newNum;
+ }
+ let overWan = Math.floor(num / 10000);
+ let noWan = num % 10000;
+ if (noWan.toString().length < 4) noWan = "0" + noWan;
+ return overWan ? getWan(overWan) + "涓�" + getWan(noWan) : getWan(num)
+ },
+ init(){
+ this.pageLoading = true
let year = this.query.year.getFullYear()
let month0 = this.query.month?this.query.month:new Date().getMonth()+1
let month = month0>9?month0:'0'+month0
@@ -370,8 +563,8 @@
}).then(res => {
this.pageLoading = false
if (res.code == 201) return
- this.total = res.data.total
- let list = res.data.page.records.map(item=>{
+ this.total = res.data.page.total
+ this.list = res.data.page.records.map(item=>{
for (let key in item.monthlyAttendance) {
let type = this.getDayByDic(key)
if(type!=undefined||type!=null){
@@ -390,25 +583,10 @@
}
this.weeks.push(obj)
})
- if(list.length==0){
- this.finishLoding = true;
- }else{
- if(list.length<this.pageSize){
- this.finishLoding = true;
- }
- this.list = this.list.concat(list)
- if(this.total==this.list.length){
- this.finishLoding = true;
- }
- this.currentPage++;
- }
})
},
initYear(){
- // pageYear
- if(this.currentPage==1){
- this.pageLoading = true
- }
+ this.pageLoading = true
let year = this.query.year.getFullYear()
this.$axios.post(this.$api.performanceShift.pageYear, {
size:this.pageSize,
@@ -420,7 +598,7 @@
this.pageLoading = false
if (res.code == 201) return
this.total = res.data.total
- let list = res.data.records.map(item=>{
+ this.yearList = res.data.records.map(item=>{
for (let key in item.year) {
let type = this.getDayByDic(key)
if(type!=undefined||type!=null){
@@ -441,18 +619,18 @@
}
return item
});
- if(list.length==0){
- this.finishLoding = true;
- }else{
- if(list.length<this.pageSize){
- this.finishLoding = true;
- }
- this.yearList = this.yearList.concat(list)
- if(this.total==this.yearList.length){
- this.finishLoding = true;
- }
- this.currentPage++;
- }
+ // if(list.length==0){
+ // this.finishLoding = true;
+ // }else{
+ // if(list.length<this.pageSize){
+ // this.finishLoding = true;
+ // }
+ // this.yearList = this.yearList.concat(list)
+ // if(this.total==this.yearList.length){
+ // this.finishLoding = true;
+ // }
+ // this.currentPage++;
+ // }
})
},
getPower() {
@@ -460,20 +638,25 @@
let add = false
let up = false
let down = false
+ let listPower = false
for (var i = 0; i < power.length; i++) {
- if (power[i].menuMethod == 'update') {
+ if (power[i].menuMethod == 'performanceShiftUpdate') {
up = true
}
if (power[i].menuMethod == 'delDeviceParameter') {
down = true
}
- if (power[i].menuMethod == 'add') {
+ if (power[i].menuMethod == 'performanceShiftAdd') {
add = true
+ }
+ if (power[i].menuMethod == 'shiftTimeList') {
+ listPower = true
}
}
this.addPower = add
this.upPower = up
this.downPower = down
+ this.listPower = listPower
},
onMouseEnter(index){
this.currentUserIndex = index
@@ -516,6 +699,132 @@
this.refresh()
})
},
+ configTime () {
+ this.$axios.post(this.$api.enums.selectEnumByCategory, {
+ category: "鐝绫诲瀷"
+ }).then(res => {
+ console.log('res---', res)
+ this.timeTypeList = res.data
+ })
+ this.getTimeList()
+ this.configTimeVisible = true
+ },
+ getTimeList () {
+ this.configTimeVisibleLoading = true
+ this.$axios.post(this.$api.performanceShift.getList).then(res => {
+ if (res.code == 201) return
+ if (res.data.length > 0) {
+ res.data.forEach(item => {
+ item.isEdit = false
+ // item.time = []
+ // item.time.push(item.startTime)
+ // item.time.push(item.endTime)
+ const index = this.timeTypeList.findIndex(val => val.value === item.shift)
+ if (index > -1) {
+ item.type = this.timeTypeList[index].label
+ }
+ })
+ this.timeQuery = res.data
+ }
+ this.configTimeVisibleLoading = false
+ }).catch(e => {
+ this.configTimeVisibleLoading = false
+ console.log('e--',e)
+ })
+ },
+ addTimeForm () {
+ this.timeQuery.push({
+ type: '',
+ shift: '',
+ time: null,
+ isEdit: true
+ })
+ },
+ saveEdit (item, index) {
+ if (item.shift) {
+ const index = this.timeTypeList.findIndex(val => val.value === item.shift)
+ if (index > -1) {
+ item.type = this.timeTypeList[index].label
+ }
+ }
+ delete item.orderBy
+ delete item.time
+ const isEmpty = this.isObjectEmpty(item)
+ if (isEmpty) {
+ this.$message.error('璇峰~鍐欏畬鏁�')
+ return
+ }
+ let newObj = {}
+ let url = ''
+ newObj.shift = item.shift
+ newObj.startTime = item.startTime
+ newObj.endTime = item.endTime
+ url = this.$api.performanceShift.shiftAdd
+ if (item.id) {
+ // 鏈塱d涓轰慨鏀�
+ newObj.id = item.id
+ url = this.$api.performanceShift.shiftUpdate
+ }
+ this.$axios.post(url, newObj, {
+ headers: {
+ 'Content-Type': 'application/json'
+ }
+ }).then(res => {
+ if (res.code == 201) return
+ this.$message.success('鎿嶄綔鎴愬姛')
+ this.getTimeList()
+ })
+ },
+ deleteTime (item, index) {
+ if(item.id){
+ this.$axios.post(this.$api.performanceShift.shiftRemove, {
+ id: item.id
+ }).then(res => {
+ if (res.code == 201) return
+ this.$message.success('鎿嶄綔鎴愬姛')
+ this.getTimeList()
+ })
+ }else{
+ this.timeQuery.splice(index, 1)
+ }
+ },
+ isObjectEmpty(obj) {
+ return Object.keys(obj).some(key => !obj[key]);
+ },
+ handleDown(){
+ let year = this.query.year.getFullYear()
+ let time = '';
+ if(this.query.month){
+ let month = this.query.month>9?this.query.month:'0'+this.query.month
+ time = year+'-'+month+'-01 00:00:00'
+ }else{
+ time = year+'-01-01 00:00:00'
+ }
+ this.downLoading = true
+ this.$axios.get(this.$api.performanceShift.export+`?time=${time}&userName=${this.query.userName}&laboratory=${this.query.laboratory}&isMonth=${this.query.month?true:false}`,{responseType: 'blob'}).then(res => {
+ this.$message.success('涓嬭浇鎴愬姛')
+ this.downLoading = false
+ const blob = new Blob([res], {
+ type: 'application/force-download'
+ })
+ let fileName="";
+ if(this.query.month){
+ fileName = year +'-'+this.query.month+' 鐝淇℃伅'
+ }else{
+ fileName = year+' 鐝姹囨��'
+ }
+ const filename = decodeURI(fileName+'.xlsx')
+ // 鍒涘缓涓�涓秴閾炬帴锛屽皢鏂囦欢娴佽祴杩涘幓锛岀劧鍚庡疄鐜拌繖涓秴閾炬帴鐨勫崟鍑讳簨浠�
+ const elink = document.createElement('a')
+ elink.download = filename
+ elink.style.display = 'none'
+ elink.href = URL.createObjectURL(blob)
+ document.body.appendChild(elink)
+ elink.click()
+ URL.revokeObjectURL(elink.href) // 閲婃斁URL 瀵硅薄
+ document.body.removeChild(elink)
+ })
+ },
selectEnumByCategory() {
this.$axios.post(this.$api.enums.selectEnumByCategory, {
category: "鐝绫诲瀷"
@@ -524,7 +833,16 @@
})
},
obtainItemParameterList() {
- this.$axios.get(this.$api.laboratoryScope.obtainItemParameterList).then(res => {
+ if(this.PROJECT == '妫�娴嬩腑蹇�') {
+ this.laboratory = [{
+ label: '閫氫俊浜у搧瀹為獙瀹�',
+ value: '閫氫俊浜у搧瀹為獙瀹�'
+ }, {
+ label: '鐢靛姏浜у搧瀹為獙瀹�',
+ value: '鐢靛姏浜у搧瀹為獙瀹�'
+ }]
+ } else {
+ this.$axios.get(this.$api.laboratoryScope.obtainItemParameterList).then(res => {
let data = []
res.data.forEach(a => {
data.push({
@@ -534,6 +852,8 @@
})
this.laboratory = data
})
+ }
+
},
handleCommand(e,m){
if(e!=m.shift){
@@ -584,12 +904,46 @@
return obj.label
}
return '鏃�'
+ },
+ scrollInit() {
+ // 鑾峰彇瑕佺粦瀹氫簨浠剁殑鍏冪礌
+ const nav = document.getElementById("nav")
+ var flag; // 榧犳爣鎸変笅
+ var downX; // 榧犳爣鐐瑰嚮鐨剎涓嬫爣
+ var scrollLeft; // 褰撳墠鍏冪礌婊氬姩鏉$殑鍋忕Щ閲�
+ nav.addEventListener("mousedown", function(event) {
+ flag = true;
+ downX = event.clientX; // 鑾峰彇鍒扮偣鍑荤殑x涓嬫爣
+ scrollLeft = this.scrollLeft; // 鑾峰彇褰撳墠鍏冪礌婊氬姩鏉$殑鍋忕Щ閲�
+ });
+ nav.addEventListener("mousemove", function(event) {
+ if (flag) { // 鍒ゆ柇鏄惁鏄紶鏍囨寜涓嬫粴鍔ㄥ厓绱犲尯鍩�
+ var moveX = event.clientX; // 鑾峰彇绉诲姩鐨剎杞�
+ var scrollX = moveX - downX; // 褰撳墠绉诲姩鐨剎杞翠笅鏍囧噺鍘诲垰鐐瑰嚮涓嬪幓鐨剎杞翠笅鏍囧緱鍒伴紶鏍囨粦鍔ㄨ窛绂�
+ this.scrollLeft = scrollLeft - scrollX // 榧犳爣鎸変笅鐨勬粴鍔ㄦ潯鍋忕Щ閲忓噺鍘诲綋鍓嶉紶鏍囩殑婊戝姩璺濈
+ }
+ });
+ // 榧犳爣鎶捣鍋滄鎷栧姩
+ nav.addEventListener("mouseup", function() {
+ flag = false;
+ });
+ // 榧犳爣绂诲紑鍏冪礌鍋滄鎷栧姩
+ nav.addEventListener("mouseleave", function(event) {
+ flag = false;
+ });
}
}
}
</script>
<style scoped>
+.form_title {
+ height: 36px;
+ display: flex;
+ flex-direction: row;
+ justify-content: space-between;
+ font-weight: 800;
+}
.search {
height: 50px;
display: flex;
@@ -620,7 +974,7 @@
}
.center {
width: 100%;
- height: calc(100% - 50px );
+ height: calc(100% - 100px );
background-color: #fff;
overflow-y: auto;
display: flex;
@@ -648,6 +1002,7 @@
min-height: calc(100% - 10px); /* 瑙嗗彛楂樺害 */
margin-left: 220px;
overflow-x: scroll;
+ /* overflow-x: hidden; */
}
.content {
@@ -713,7 +1068,7 @@
display: flex;
align-items: center;
justify-content: space-around;
- background: #F5F7FB;
+ background: #edeff2;
border-radius: 8px 8px 8px 8px;
color: #999;
font-size: 14px;
@@ -815,7 +1170,7 @@
margin-left: 10px;
}
.hoverType{
- background: rgba(58,123,250,0.05);
+ background: rgba(58,123,250,0.03);
}
.year-table{
width: 100%;
--
Gitblit v1.9.3