Browse Source

优化

master
陈裕财 4 years ago
parent
commit
9d8e668dd2
  1. 70
      src/views/xm/core/xmProject/XmProjectMng.vue
  2. 12
      src/views/xm/core/xmProject/XmProjectTplMng.vue

70
src/views/xm/core/xmProject/XmProjectMng.vue

@ -3,7 +3,7 @@
<el-row> <el-row>
<el-col :span="6" class="padding-top"> <el-col :span="6" class="padding-top">
<el-row> <el-row>
<xm-project-tpl-mng></xm-project-tpl-mng>
<xm-project-tpl-mng @copy="searchXmProjects"></xm-project-tpl-mng>
</el-row> </el-row>
</el-col> </el-col>
<el-col :span="18" class="border"> <el-col :span="18" class="border">
@ -81,7 +81,7 @@
<el-col v-cloak v-for="(p,i) in ScreenData" :key="i" :xl="8" :lg="8" :md="8" :sm="12"> <el-col v-cloak v-for="(p,i) in ScreenData" :key="i" :xl="8" :lg="8" :md="8" :sm="12">
<el-card @click.native="intoInfo(p,i)" class="project-card" shadow="always"> <el-card @click.native="intoInfo(p,i)" class="project-card" shadow="always">
<div class="project-name" title="这是项目名称">{{p.name}}</div> <div class="project-name" title="这是项目名称">{{p.name}}</div>
<div class="project-id eui-text-truncate">{{p.code}}</div>
<div class="project-id eui-text-truncate">{{p.code}} <el-button style="float:right;" type="text" title="通过复制快速创建新项目" @click.stop="onCopyToBtnClick(p)" v-loading="load.add">复制</el-button></div>
<div class="project-info"> <div class="project-info">
<div class="info-item"> <div class="info-item">
<span class="item-total">{{p.totalBugCnt==null?0:p.totalBugCnt}}</span> <span class="item-total">{{p.totalBugCnt==null?0:p.totalBugCnt}}</span>
@ -148,11 +148,11 @@
<!-- <el-popover <!-- <el-popover
placement="left" placement="left"
trigger="hover"> --> trigger="hover"> -->
<el-button-group>
<el-button v-if="menukey=='myFocus'" type="primary" @click.stop="focusOrUnfocus(scope.row)" >取消关注</el-button> <el-button v-if="menukey=='myFocus'" type="primary" @click.stop="focusOrUnfocus(scope.row)" >取消关注</el-button>
<el-button v-else type="primary" @click.stop="focusOrUnfocus(scope.row)" >关注</el-button>
<el-button type="primary" @click.stop="xmRecordVisible=true" >日志</el-button>
<el-button v-else type="text" @click.stop="focusOrUnfocus(scope.row)" >关注</el-button>
<el-button type="text" @click.stop="xmRecordVisible=true" >日志</el-button>
<el-button type="text" title="通过复制快速创建新项目" @click.stop="onCopyToBtnClick(scope.row)" v-loading="load.add">复制</el-button>
<!-- <!--
<el-button type="primary" @click.stop="statusChange(scope,'1')" v-if="scope.row.status==0 || scope.row.status == 2">提交审核</el-button> <el-button type="primary" @click.stop="statusChange(scope,'1')" v-if="scope.row.status==0 || scope.row.status == 2">提交审核</el-button>
<el-button type="primary" @click.stop="statusChange(scope,'3')" v-if="scope.row.status==1">批准</el-button> <el-button type="primary" @click.stop="statusChange(scope,'3')" v-if="scope.row.status==1">批准</el-button>
@ -160,8 +160,7 @@
<el-button type="primary" @click.stop="statusChange(scope,'4')" v-if="scope.row.status==3">结束</el-button> <el-button type="primary" @click.stop="statusChange(scope,'4')" v-if="scope.row.status==3">结束</el-button>
<el-button type="primary" @click.stop="statusChange(scope,'3')" v-if="scope.row.status==4">重新启动</el-button> <el-button type="primary" @click.stop="statusChange(scope,'3')" v-if="scope.row.status==4">重新启动</el-button>
<el-button type="primary" @click.stop="handleDel(scope.row,scope.$index)" v-if="isLeader(scope.row.leader)">删除</el-button> <el-button type="primary" @click.stop="handleDel(scope.row,scope.$index)" v-if="isLeader(scope.row.leader)">删除</el-button>
-->
</el-button-group>
-->
<el-dropdown @command="handleCommand" :hide-on-click="false"> <el-dropdown @command="handleCommand" :hide-on-click="false">
<span class="el-dropdown-link"> <span class="el-dropdown-link">
@ -201,6 +200,32 @@
<xm-record :obj-type="'project'" :project-id="selectProject.id" :visible="xmRecordVisible" :simple="1"></xm-record> <xm-record :obj-type="'project'" :project-id="selectProject.id" :visible="xmRecordVisible" :simple="1"></xm-record>
</el-drawer> </el-drawer>
<el-dialog
title="通过复制创建新的模板或者新的项目"
:visible.sync="copyToVisible"
width="30%" >
<el-form>
<el-form-item label="项目名称">
<el-input v-model="xmProjectCopy.name" placeholder="新的项目名称"></el-input>
</el-form-item>
<el-form-item label="项目编码(留空则后台自动生成)">
<el-input v-model="xmProjectCopy.code" placeholder="新的项目编码"></el-input>
</el-form-item>
<el-form-item label="目标">
<el-radio v-model="xmProjectCopy.isTpl" label="0">复制为新的模板</el-radio>
<el-radio v-model="xmProjectCopy.isTpl" label="1">复制为新的项目</el-radio>
</el-form-item>
<el-form-item label="附加任务">
<el-checkbox v-model="xmProjectCopy.copyPhase" true-label="1" false-label="0">拷贝计划</el-checkbox>
<el-checkbox v-model="xmProjectCopy.copyTask" true-label="1" false-label="0">拷贝任务</el-checkbox>
<el-checkbox v-model="xmProjectCopy.copyGroup" true-label="1" false-label="0">拷贝项目组成员</el-checkbox>
</el-form-item>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button @click="copyToVisible = false"> </el-button>
<el-button type="primary" @click="onCopyToConfirm" :disabled="load.add" v-loading="load.add"> </el-button>
</span>
</el-dialog>
<el-drawer <el-drawer
append-to-body append-to-body
title="产品" title="产品"
@ -218,7 +243,7 @@
//import Sticky from '@/components/Sticky' // header //import Sticky from '@/components/Sticky' // header
import config from "@/common/config"; // import config from "@/common/config"; //
//import { listOption } from '@/api/mdp/meta/itemOption';// //import { listOption } from '@/api/mdp/meta/itemOption';//
import { listXmProject, editStatus, delXmProject, batchDelXmProject } from '@/api/xm/core/xmProject';
import { listXmProject, editStatus, delXmProject, batchDelXmProject,copyTo } from '@/api/xm/core/xmProject';
import { addXmMyFocus , delXmMyFocus } from '@/api/xm/core/xmMyFocus'; import { addXmMyFocus , delXmMyFocus } from '@/api/xm/core/xmMyFocus';
import XmProjectAdd from './XmProjectAdd';// import XmProjectAdd from './XmProjectAdd';//
import XmProjectEdit from './XmProjectEdit';// import XmProjectEdit from './XmProjectEdit';//
@ -305,6 +330,10 @@
tableHeight:300, tableHeight:300,
dateRanger: [ ], dateRanger: [ ],
pickerOptions: util.pickerOptions('datarange'), pickerOptions: util.pickerOptions('datarange'),
xmProjectCopy:{
id:'',name:'',code:'',isTpl:'',copyPhase:'1',copyTask:'1',copyGrup:'0'
},
copyToVisible:false,
/**end 自定义属性请在上面加 请加备注**/ /**end 自定义属性请在上面加 请加备注**/
} }
},//end data },//end data
@ -659,7 +688,28 @@
this.filters.productId='' this.filters.productId=''
this.filters.productName='' this.filters.productName=''
this.getXmProjects() this.getXmProjects()
}
},
onCopyToBtnClick(row){
this.xmProjectCopy.id=row.id;
this.xmProjectCopy.name=row.name+"(复制)";
this.xmProjectCopy.isTpl=row.isTpl;
this.copyToVisible=true;
},
onCopyToConfirm(){
this.load.add=true;
copyTo(this.xmProjectCopy).then(res=>{
this.load.add=false;
var tips = res.data.tips;
if(tips.isOk){
if(this.xmProjectCopy.isTpl=='0'){
this.searchXmProjects()
}
}
this.$message({showClose: true, message: tips.msg, type: tips.isOk?'success':'error' });
})
},
/**end 自定义函数请在上面加**/ /**end 自定义函数请在上面加**/
},//end methods },//end methods

12
src/views/xm/core/xmProject/XmProjectTplMng.vue

@ -12,14 +12,14 @@
</el-table-column> </el-table-column>
<el-table-column label="" width="100" fixed="right"> <el-table-column label="" width="100" fixed="right">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button type="text" title="通过复制创建新的项目" @click="onCopyToBtnClick(scope.row)" :disabled="load.add" v-load="load.add">复制</el-button>
<el-button type="text" title="删除该模板" @click="handleDel(scope.row)" :disabled="load.del" v-load="load.del">删除</el-button>
<el-button type="text" title="通过复制创建新的项目" @click="onCopyToBtnClick(scope.row)" :disabled="load.add" v-loading="load.add">复制</el-button>
<el-button type="text" title="删除该模板" @click="handleDel(scope.row)" :disabled="load.del" v-load="loading.del">删除</el-button>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
</el-row> </el-row>
<el-pagination layout="total, prev, next" @current-change="handleCurrentChange" @size-change="handleSizeChange" :page-sizes="[10,20, 50, 100, 500]" :current-page="pageInfo.pageNum" :page-size="pageInfo.pageSize" :total="pageInfo.total"></el-pagination>
<el-pagination layout="total, prev, next" @current-change="handleCurrentChange" @size-change="handleSizeChange" :page-sizes="[10,20, 50, 100, 500]" :current-page="pageInfo.pageNum" :page-size="pageInfo.pageSize" :total="pageInfo.total" style="float:right;"></el-pagination>
</el-row> </el-row>
<el-drawer title="项目编辑" :visible.sync="editFormVisible" :with-header="false" size="50%" :close-on-click-modal="false" append-to-body> <el-drawer title="项目编辑" :visible.sync="editFormVisible" :with-header="false" size="50%" :close-on-click-modal="false" append-to-body>
<xm-project-edit :sel-project="editForm" :visible="editFormVisible" @cancel="editFormVisible=false" @submit="afterEditSubmit"></xm-project-edit> <xm-project-edit :sel-project="editForm" :visible="editFormVisible" @cancel="editFormVisible=false" @submit="afterEditSubmit"></xm-project-edit>
@ -50,7 +50,7 @@
</el-form> </el-form>
<span slot="footer" class="dialog-footer"> <span slot="footer" class="dialog-footer">
<el-button @click="copyToVisible = false"> </el-button> <el-button @click="copyToVisible = false"> </el-button>
<el-button type="primary" @click="onCopyToConfirm"> </el-button>
<el-button type="primary" @click="onCopyToConfirm" :disabled="load.add" v-loading="load.add"> </el-button>
</span> </span>
</el-dialog> </el-dialog>
</section> </section>
@ -339,12 +339,12 @@
copyTo(this.xmProjectCopy).then(res=>{ copyTo(this.xmProjectCopy).then(res=>{
this.load.add=false; this.load.add=false;
var tips = res.tips;
var tips = res.data.tips;
if(tips.isOk){ if(tips.isOk){
if(this.xmProjectCopy.isTpl){ if(this.xmProjectCopy.isTpl){
this.searchXmProjects() this.searchXmProjects()
} }
this.$emit("copy",res.data.data)
} }
this.$message({showClose: true, message: tips.msg, type: tips.isOk?'success':'error' }); this.$message({showClose: true, message: tips.msg, type: tips.isOk?'success':'error' });

Loading…
Cancel
Save