Browse Source

优化

master
陈裕财 3 years ago
parent
commit
d4a6874382
  1. 49
      src/views/xm/rpt/CompsCard.vue
  2. 5
      src/views/xm/rpt/CompsSet.vue
  3. 13
      src/views/xm/rpt/rptDataList.vue

49
src/views/xm/rpt/CompsCard.vue

@ -2,13 +2,14 @@
<section>
<el-row class="padding-left padding-right">
<el-col :span="6">
<comps-set :comp-ids="compIds" :category="category" @row-click="onCompSelect" ref="compsSet"></comps-set>
<comps-set :comp-ids="compIds" :category="category" @row-click="onCompSelect" ref="compsSet" :show-checked-only="isRptShow"></comps-set>
</el-col>
<el-col :span="18">
<el-row class="padding">
<span class="rpt-name">{{ xmRptData && xmRptData.id?xmRptData.rptName:(xmRptConfig&&xmRptConfig.id?xmRptConfig.name: rptConfigParamsCpd.name+'-报告')}}</span>
<span style="float:right;">
<el-button type="text" v-if="isRptShow==true && isRptCfg==false" @click="toQueryRptData" icon="el-icon-time">查看历史报告</el-button>
<el-button type="primary" v-if="isRptShow==true && isRptCfg==false" @click="createRptData" icon="el-icon-time">保存报告(可供历史查询)</el-button>
<el-button type="primary" v-if="isRptShow==true && isRptCfg==false && (!xmRptData||!xmRptData.id)" @click="showCreateRptData()" icon="el-icon-time">保存报告(可供历史查询)</el-button>
<el-button type="text" v-if="isRptShow==false && isRptCfg==false" @click="isRptShow=true" icon="el-icon-time">查看报告</el-button>
<el-button type="warning" v-if="isRptShow==true" @click="undoRptShow" icon="el-icon-error">退出报告</el-button>
<el-button type="text" v-if="isRptCfg==false&&isRptShow==false" @click="toRptCfg" icon="el-icon-setting">制作报告</el-button>
@ -34,6 +35,18 @@
<el-dialog append-to-body modal-append-to-body :visible.sync="rptDataListVisible" top="20px" width="60%">
<rpt-data-list :xm-rpt-config="xmRptConfig" v-if="rptDataListVisible" @select="onRptDataSelect"/>
</el-dialog>
<el-dialog title="请确认" append-to-body modal-append-to-body :visible.sync="createRptDataVisible">
<el-form :model="xmRptData">
<el-form-item label="报告名称">
<el-input v-model="xmRptData.rptName"></el-input>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button @click="createRptDataVisible = false"> </el-button>
<el-button type="primary" @click="createRptData"> </el-button>
</div>
</el-dialog>
</section>
</template>
@ -125,7 +138,7 @@ export default {
},
rptConfigParamsCpd(){
//1-2-3-4-5-
var params={bizType:'5',bizId:this.userInfo.branchId,name:''}
var params={bizType:'5',bizId:this.userInfo.branchId,name:this.userInfo.branchName}
if(this.category=='企业级'){
params.bizType='5';
params.bizId=this.userInfo.branchId
@ -192,13 +205,15 @@ export default {
isRptCfg:false,
isRptShow:false,
xmRptConfig:null,
xmRptData:null,
xmRptData:{id:'',rptName:'',bizId:'',bizType:'',bizDate:''},
xmRptDataInit:{id:'',rptName:'',bizId:'',bizType:'',bizDate:''},
compCfgList:[],
maxTableHeight:300,
//
layoutColNum: 12,
paramsVisible:true,
rptDataListVisible:false,
createRptDataVisible:false,
}
},
@ -213,6 +228,15 @@ export default {
this.getXmRptConfig();
}
},
showCreateRptData(){
if(this.xmRptConfig==null){
this.$message.error("还没制作报告,请先制作报告")
return;
}
this.xmRptData.rptName=this.xmRptConfig.name
this.createRptDataVisible=true
},
toQueryRptData(){
this.rptDataListVisible=true;
@ -221,8 +245,12 @@ export default {
if(this.xmRptConfig==null){
this.$message.error("还没制作报告,请先制作报告")
return;
}
var xmRptData={cfgId:this.xmRptConfig.id,rptName:this.xmRptConfig.name,rptData:[]}
}
if(!this.xmRptData.rptName){
this.$message.error("请输入报告名称")
return;
}
var xmRptData={...this.xmRptData,cfgId:this.xmRptConfig.id,rptData:[]}
this.compCfgList.forEach(k=>{
if(this.$refs[k.id] && this.$refs[k.id][0].$refs && this.$refs[k.id][0].$refs[k.id]){
var com=this.$refs[k.id][0].$refs[k.id]
@ -238,7 +266,8 @@ export default {
addXmRptData(xmRptData).then(res=>{
var tips = res.data.tips
if(tips.isOk){
this.$message.success("报告保存成功")
this.$message.success("报告保存成功")
this.createRptDataVisible=false
}else{
this.$message.error(tips.msg)
}
@ -251,6 +280,7 @@ export default {
undoRptShow(){
this.isRptShow=false;
this.xmRptConfig=null;
this.xmRptData={...this.xmRptDataInit};
},
toRptCfg(){
this.isRptCfg=true;
@ -420,4 +450,9 @@ export default {
top:0px;
right:20px;
}
.rpt-name{
text-align: center;
font-size: 18px;
font-weight: 600;
}
</style>

5
src/views/xm/rpt/CompsSet.vue

@ -52,7 +52,7 @@ import { mapGetters } from 'vuex'
import store from '@/store'
export default {
props: ['compIds','category' ],
props: ['compIds','category','showCheckedOnly'],
computed: {
...mapGetters(['userInfo']),
compsCpd(){
@ -62,6 +62,9 @@ export default {
i.isChecked=this.compIds.some(k=>k==i.compId)
})
}
if(this.showCheckedOnly){
comps=comps.filter(k=>k.isChecked)
}
return comps;
},
rptListCpd(){

13
src/views/xm/rpt/rptDataList.vue

@ -1,7 +1,7 @@
<template>
<section class="page-container border padding">
<el-row>
<el-input v-model="filters.key" style="width: 20%;" placeholder="模糊查询"></el-input>
<el-input v-model="filters.key" style="width: 40%;" placeholder="模糊查询"></el-input>
<el-button v-loading="load.list" :disabled="load.list==true" @click="searchXmRptDatas" icon="el-icon-search">查询</el-button>
<span style="float:right;">
<el-button type="danger" v-loading="load.del" @click="batchDel" :disabled="this.sels.length===0 || load.del==true" icon="el-icon-delete" plain></el-button>
@ -15,20 +15,15 @@
<template slot-scope="scope">
<span> {{scope.row.rptName}} </span>
</template>
</el-table-column>
<el-table-column prop="cuserid" label="创建人编号" min-width="120" show-overflow-tooltip>
</el-table-column>
<el-table-column prop="bizDate" label="业务日期" min-width="120" show-overflow-tooltip>
<template slot-scope="scope">
<span> {{scope.row.cuserid}} </span>
<span> {{scope.row.bizDate}} </span>
</template>
</el-table-column>
<el-table-column prop="cusername" label="创建人名称" min-width="120" show-overflow-tooltip>
<template slot-scope="scope">
<span> {{scope.row.cusername}} </span>
</template>
</el-table-column>
<el-table-column prop="bizDate" label="业务日期" min-width="120" show-overflow-tooltip>
<template slot-scope="scope">
<span> {{scope.row.bizDate}} </span>
</template>
</el-table-column>
<el-table-column label="操作" width="100" fixed="right">

Loading…
Cancel
Save