<template> <div class="eibs-tab"> <c-col :span="8" class="col-left"> <c-col :span="24"> <el-form-item label="汇率币种"> <c-select v-model="model.cur" style="height:30px;" placeholder="请选择汇率币种" dbCode="CURTXT"/> </el-form-item> </c-col> </c-col> <c-col :span="16" class="col-center"> <el-form-item label="更新时间" style="width: 100%"> <c-col :span="11"> <c-date-time-picker v-model="model.begdat" :picker-options="startDatePicker2" style="width: 100%" placeholder="请选择开始日期"/> </c-col> <c-col :span="2" style="text-align: center"> <label style="display: inline-block; width: 100%">--</label> </c-col> <c-col :span="11"> <c-date-time-picker v-model="model.enddat" picker-options="endDatePicker2" style="width: 100%" placeholder="请选择截止日期"/> </c-col> </el-form-item> </c-col> <c-col :span="24"> <span style="float: right"> <el-button size="small" @click="handleReset">重置</el-button> <el-button type="primary" icon="el-icon-search" size="small" @click="onSearch()">查询</el-button> </span> </c-col> <c-col :span="24"> <c-paging-table :data="xrtData" :columns="xrtColumns" :pageNumber="model.pageNum" :pageSize="model.pageSize" :total="model.total" v-on:queryFunc="queryFunc" :border="true"> </c-paging-table> </c-col> </div> </template> <script> import Utils from "~/utils"; import { queryByPage } from "~/service/manage/xrt.js"; export default { name: "", props: ["model"], inject: ["root"], data() { return { xrtData: [], xrtColumns: [ { label: '汇率币种', prop: 'cur', width: '160' }, { label: '更新时间', prop: 'xrttim', width: '240' }, { label: '生效日期', prop: 'begdat', width: '140' }, { label: '失效日期', prop: 'enddat', width: '140' }, { label: '现汇买入价', prop: 'buyrat', width: '160' }, { label: '中间价', prop: 'midrat', width: '120' }, { label: '现汇卖出价', prop: 'selrat', width: '160' }, { label: '指定买价', prop: 'ttrrat', width: '160' }, { label: '票据买断汇款', prop: 'odrrat', width: '180' }, { label: '卖出参考汇率', prop: 'resrat', width: '180' }, { label: '现钞卖出价', prop: 'sel1rat', width: '160' }, { label: '现钞买入价', prop: 'buy1rat', width: '160' }, { label: '报表折算价', prop: 'ibrrat', width: '160' }, ], startDatePicker: this.beginDate(), endDatePicker: this.processDate(), startDatePicker2: this.beginDate2(), endDatePicker2: this.processDate2(), }; }, computed: { }, activated() { const { update } = this.$route.params if (update) { this.onInfXrtSearch() } }, created() { this.model.enddat = '2299-12-31 23:59:59'; this.onSearch(); }, methods: { getNowDate() { const timeOne = new Date() const year = timeOne.getFullYear() let month = timeOne.getMonth() + 1 let day = timeOne.getDate() month = month < 10 ? '0' + month : month day = day < 10 ? '0' + day : day const NOW_MONTHS_AGO = `${year}-${month}-${day}` return NOW_MONTHS_AGO }, beginDate(){ const self = this return { disabledDate(time){ if (self.form.enddat) { //如果结束时间不为空,则小于结束时间 return new Date(self.form.enddat).getTime() < time.getTime() } else { // return time.getTime() > Date.now()//开始时间不选时,结束时间最大值小于等于当天 } } } }, beginDate2(){ const self = this return { disabledDate(time){ if (self.model.enddat) { //如果结束时间不为空,则小于结束时间 return new Date(self.model.enddat).getTime() < time.getTime() } else { // return time.getTime() > Date.now()//开始时间不选时,结束时间最大值小于等于当天 } } } }, processDate() { const self = this return { disabledDate(time) { if (self.form.begdat) { //如果开始时间不为空,则结束时间大于开始时间 return new Date(self.form.begdat).getTime() > time.getTime() } else { // return time.getTime() > Date.now()//开始时间不选时,结束时间最大值小于等于当天 } } } }, processDate2() { const self = this return { disabledDate(time) { if (self.model.begdat) { //如果开始时间不为空,则结束时间大于开始时间 return new Date(self.model.begdat).getTime() > time.getTime() } else { // return time.getTime() > Date.now()//开始时间不选时,结束时间最大值小于等于当天 } } } }, handleReset() { this.model.cur = ""; this.model.begdat = null; this.model.enddat = "2299-12-31"; }, onSearch(){ this.model.pageNum = 1; this.model.pageSize = 5; this.onInfXrtSearch(); }, onInfXrtSearch() { delete this.model.isModify; delete this.model.modifySet; queryByPage(this.model).then(res => { if(res.respCode == SUCCESS) { const list = res.data.list this.xrtData = list this.model.pageNum = res.data.pageNumber this.model.pageSize = res.data.pageSize this.model.total = res.data.total } }) }, queryFunc(pageNumber, pageSize) { this.model.pageNum = pageNumber this.model.pageSize = pageSize this.onInfXrtSearch() }, }, }; </script> <style scoped> .table-button-item-list { padding: 0; margin: 0; } .table-button-item-list li { list-style: none; padding: 5px 0; text-align: center; color: #606266; cursor: pointer; } </style>