@@ -0,0 +1,451 @@
< template >
< div class = "bzzqyjStep1" >
<!-- 标准征求意见流程 -- >
< ProcessHeader toggle >
< template slot = "proName" > 标准征求意见流程 < / template >
< template slot = "proNode" > 申请人发起流程 < / template >
< / ProcessHeader >
< div class = "headerTabs" >
< div class = "headerTabsItem" : class = "active === '1' ? 'active' : ''" @click ="handleTabs('1')" > 基础信息 < / div >
< div class = "headerTabsItem" : class = "active === '2' ? 'active' : ''" @click ="handleTabs('2')" > 流程信息 < / div >
< / div >
< div class = "content" v-if = "active === '1'" >
< div style = "flex: auto; overflow: auto;" >
< el-form
ref = "bzzqyjForm"
:model = "form"
class = "label-input-form"
label -width = " 210px "
>
< ProcessTitle >
< template slot = "title" > 基础信息 < / template >
< / ProcessTitle >
< div class = "prc-content-border" >
< el-row :gutter = "24" >
< el-col :span = "24" >
< el-form-item label = "选择征求意见" class = "add-form-item form-item-disabled" >
< div class = "addButton" >
< el-button size = "small" type = "primary" @click ="addZqyjList" > 选择征求意见 < / el -button >
< / div >
< / el-form-item >
< el-form-item label = "标准编号" prop = "cid" class = "add-form-item form-item-disabled" >
< el-select v-model = "form.cid" placeholder="请选择标准编号" >
< el -option label = "GB 472726" value = "1" > < / el-option >
< el-option label = "GB/T 8453291" value = "2" > < / el-option >
< / el-select >
< / el-form-item >
< el-form-item label = "标准名称" prop = "cname" class = "add-form-item form-item-disabled" >
< el-select v-model = "form.cname" placeholder="请选择标准名称" >
< el -option label = "标准1" value = "1" > < / el-option >
< el-option label = "标准2" value = "2" > < / el-option >
< / el-select >
< / el-form-item >
< el-form-item label = "征求意见结束日期" prop = "endTime" class = "add-form-item form-item-disabled" >
< el-date-picker
v-model = "form.endTime"
type = "date"
placeholder = "请选择结束日期" >
< / el-date-picker >
< / el-form-item >
< / el-col >
< / el-row >
< / div >
< / el-form >
< / div >
< / div >
< div class = "content" v-if = "active === '2'" >
< div class = "block" style = "padding-top: 20px;" >
< el-timeline >
< el-form
ref = "Form"
:model = "roleForm"
class = "label-input-form" >
< el-timeline-item timestamp = "发起流程" placement = "top" : color = "roleForm.startUser ? '#66b1ff' : ''" >
< el-card >
< el-form-item prop = "startUserName" style = "margin-bottom: 0" >
< h4 > 流程发起人 < / h4 >
< div style = "margin-top: 10px;width: 300px;" >
< el-input v-model = "roleForm.startUser" style="display: none;" />
< el -input v-model = "roleForm.startUserName" placeholder="流程发起人" />
< / div >
< / el -form -item >
< / el-card >
< / el-timeline-item >
< el-timeline-item timestamp = "选择责任人" placement = "top" : color = "roleForm.dockUser ? '#66b1ff' : ''" >
< el-card >
< el-form-item prop = "dockUserName" style = "margin-bottom: 0" >
< h4 > 责任对接人 < / h4 >
< div style = "margin-top: 10px;width: 300px;" >
< el-input v-model = "roleForm.dockUser" style="display: none;" />
< el -input
v-model = "roleForm.dockUserName"
placeholder = "选择责任人"
@click.native ="choiceZRR('dockUser', '选择责任人', roleForm.dockUser)" >
< / el -input >
< / div >
< / el-form-item >
< / el-card >
< / el-timeline-item >
< el-timeline-item timestamp = "填写意见" placement = "top" : color = "roleForm.ministerUser ? '#66b1ff' : ''" >
< el-card >
< el-form-item prop = "mainUserName" style = "margin-bottom: 0" >
< h4 > 责任人 < / h4 >
< div style = "margin-top: 10px;width: 300px;" >
< el-input v-model = "roleForm.mainUser" style="display: none;" />
< el -input
v-model = "roleForm.mainUserName"
placeholder = "选择责任人·"
@click.native ="choiceZRR('mainUser', '选择责任人', roleForm.mainUser)"
/ >
< / div >
< / el-form-item >
< / el-card >
< / el-timeline-item >
< el-timeline-item timestamp = "意见汇总并发起会签" placement = "top" : color = "roleForm.directorUser ? '#66b1ff' : ''" >
< el-card >
< el-form-item prop = "engineerUserName" style = "margin-bottom: 0" >
< h4 > 标准法规工程师 < / h4 >
< div style = "margin-top: 10px;width: 300px;" >
< el-input v-model = "roleForm.engineerUser" style="display: none;" />
< el -input
v-model = "roleForm.engineerUserName"
placeholder = "选择标准法规工程师"
@click.native ="choiceZRR('engineerUser', '选择标准法规工程师', roleForm.engineerUser)"
/ >
< / div >
< / el-form-item >
< / el-card >
< / el-timeline-item >
< el-timeline-item timestamp = "审核" placement = "top" : color = "roleForm.presidentUser ? '#66b1ff' : ''" >
< el-card >
< el-form-item prop = "checkUserName" style = "margin-bottom: 0" >
< h4 > 责任对接人 , 标准法规部门负责人 < / h4 >
< div style = "margin-top: 10px;width: 300px;" >
< el-input v-model = "roleForm.checkUser" style="display: none;" />
< el -input
v-model = "roleForm.checkUserName"
placeholder = "选择责任对接人,标准法规部门负责人"
@click.native ="choiceZRR('checkUser', '选择责任对接人,标准法规部门负责人', roleForm.checkUserName)"
/ >
< / div >
< / el-form-item >
< / el-card >
< / el-timeline-item >
< / el-form >
< / el-timeline >
< / div >
< / div >
< ProcessFooter
show -save
show -submit
:submitLoading = "isSubmit"
:saveLoading = "saveLoading"
@save ="handleSave"
@submit ="handleSubmit"
>
< / ProcessFooter >
< el-drawer
title = "标准征求意见数据库"
:visible.sync = "listModel"
size = "900px"
custom -class = " demo -drawer "
>
< div class = "standardForComments" >
<!-- 顶部工具栏 -- >
< table-tools-bar >
< div slot = "left" >
< div class = "search-area" >
< el-form :model = "standCommonlySearch" inline class = "label-input-form" >
< el-formItem label = "类别" class = "search-item" >
< el-input v-model = "standCommonlySearch.categorg" class="s-c-input" placeholder="标准/政策" clearable :maxlength="100" > < / el -input >
< / el-formItem >
< el-formItem label = "关键字" class = "search-item" >
< el-input v-model = "standCommonlySearch.cname" class="s-c-input" placeholder="请输入关键字" clearable :maxlength="100" > < / el -input >
< / el-formItem >
< el-formItem label = "开始日期" class = "search-item" >
< el-datePicker v-model = "standCommonlySearch.start" :editable="false"
placeholder = "请选择开始日期" > < / el-datePicker >
< / el-formItem >
< el-formItem label = "结束日期" class = "search-item" >
< el-datePicker v-model = "standCommonlySearch.end" :editable="false"
placeholder = "请选择结束日期" > < / el-datePicker >
< / el-formItem >
< el-formItem class = "search-item btn-box" >
< el-button
type = "primary"
size = "mini"
class = "common-button-primary"
@click ="sarStandCompareHisInfo" > 查询 < / el -button >
< el-button
class = "common-button-default"
size = "mini"
@click ="clearSearchStand" > 清空 < / el -button >
< / el-formItem >
< / el-form >
< / div >
< / div >
< / table-tools-bar >
< div class = "content" >
< div class = "table-wrap" >
< div style = "position: absolute;height: calc(100% - 10px);width: 100%;" >
< el-table
ref = "selection"
:data = "standInfoList"
tooltip -effect = " dark "
style = "width: 100%;padding:0 0 20px 0;"
height = "100%"
border
@ selection -change = " handleSelection "
: header -cell -style = " { background : ' # f8f8f9 ' , color : ' # 515a6e ' } " >
< el-table-column type = "selection" width = "55" align = "center" / >
< el-table-column prop = "category" label = "标准" align = "center" / >
< el-table-column prop = "cname" label = "标准名称/政策名称" align = "center" / >
< el-table-column prop = "endTime" label = "征求意见周期" align = "center" / >
< el-table-column prop = "startTime" label = "上传时间" align = "center" / >
< / el-table >
< / div >
< / div >
< / div >
< pagination :page = "standCommonlySearch.page" :total = "total" @pageChange ="pageChange" @pageSizeChange ="pageSizeChange" > < / pagination >
< loading :loading = "spinShow" > 数据加载中 … … < / loading >
< div class = "demo-drawer-footer" >
< el-button size = "mini" @click ="closeDrawer" > 取消 < / el -button >
< el-button type = "primary" size = "mini" @click ="enterDrawer" > 带入 < / el -button >
< / div >
< / div >
< / el-drawer >
< / div >
< / template >
< script >
import ProcessHeader from '../../components/ProcessHeader'
import ProcessFooter from '../../components/ProcessFooter'
import ProcessTitle from '../../components/ProcessTitle'
export default {
name : "bzzqyjStep1" ,
data ( ) {
return {
textarea : '' , // 意见
title : '' , // 新增抽屉标题
listModel : false , // 新增抽屉开关
active : '1' , // 默认显示
isSubmit : false ,
saveLoading : false ,
// 基础信息form表单
form : {
cid : '' , // 编号
endTime : '' , // 结束日期
cname : '' , // 名称
} ,
// 标准征求意见数据可库
standCommonlySearch : {
categorg : '' ,
cname : '' ,
start : '' ,
end : '' ,
page : 1 ,
size : this . $store . getters . userInfo . configContent
} ,
spinShow : false ,
standInfoList : [ ] ,
tableHeight : null ,
total : 0 ,
selectedList : [ ] ,
data : [ ] ,
roleForm : {
startUserName : this . $store . getters . userInfo . userName ,
startUser : this . $store . getters . userInfo . userId ,
dockUser : '' ,
dockUserName : '' ,
mainUser : '' ,
mainUserName : '' ,
engineerUser : '' ,
engineerUserName : '' ,
checkUser : '' ,
checkUserName : '' ,
}
}
} ,
components : {
ProcessHeader ,
ProcessFooter ,
ProcessTitle
} ,
mounted ( ) {
this . sarStandCompareHis ( )
this . tableHeight = $ ( '.content' ) . height ( ) - 44
window . onresize = ( ) => {
this . tableHeight = $ ( '.content' ) . height ( ) - 44
}
} ,
methods : {
addZqyjList ( ) {
this . title = '标准征求意见库'
this . listModel = true
} ,
/** 标准征求意见库方法*
* **********************************************/
// 清空
clearSearchStand ( ) {
this . standCommonlySearch . page = 1
this . standCommonlySearch . start = ''
this . standCommonlySearch . end = ''
this . standCommonlySearch . categorg = ''
this . standCommonlySearch . cname = ''
this . sarStandCompareHis ( )
} ,
// 搜索
sarStandCompareHisInfo ( ) {
this . splitInfoPage = 1
this . sarStandCompareHis ( )
} ,
// 查询表格
sarStandCompareHis ( ) {
this . spinShow = true
var form = this . standCommonlySearch
this . $http . get ( 'slrs/sar-public-idea/SelectAllPage' , form , {
_this : this
} , res => {
this . standInfoList = res . data . records
this . total = res . data . total
this . spinShow = false
} , e => {
} )
} ,
pageChange ( page ) {
this . standCommonlySearch . page = page
this . sarStandCompareHis ( )
} ,
// 分页每页显示数改变后方法
pageSizeChange ( pageSize ) {
this . $store . getters . userInfo . configContent = pageSize
this . standCommonlySearch . size = pageSize
this . sarStandCompareHis ( )
} ,
/** 选择带入数据的方法操作
* */
handleSelection ( data ) {
this . selectedList = [ ] ;
for ( let i = 0 ; i < data . length ; i ++ ) {
this . selectedList . push ( data [ i ] . id ) ;
}
} ,
closeDrawer ( ) {
this . listModel = false
} ,
enterDrawer ( ) {
if ( this . selectedList . length === 1 ) {
let deposit = new Map ( ) ;
this . standInfoList . forEach ( item => {
deposit . set ( item . id , item ) ;
} ) ;
let bringData = [ ] ;
for ( let i = 0 ; i < this . selectedList . length ; i ++ ) {
bringData . push ( deposit . get ( this . selectedList [ i ] ) ) ;
}
console . log ( bringData )
this . form . cid = bringData [ 0 ] . cid
this . form . cname = bringData [ 0 ] . cname ;
this . form . endTime = bringData [ 0 ] . endTime ;
this . listModel = false ;
} else if ( this . selectedList . length > 1 ) {
this . $message . warning ( "只能选择一条数据进行带入" ) ;
} else {
this . $message . warning ( "请选择一条数据进行带入" ) ;
}
} ,
/*** **********************************************/
/** 流程节点负责人的选择 *****************************/
choiceZRR ( ) {
// this.choice
} ,
handleTabs ( name ) {
this . active = name
} ,
// 流程也的提交按钮和保存按钮操作
handleSave ( ) { } ,
handleSubmit ( ) { }
}
}
< / script >
< style lang = "less" scoped >
@ import '~@/assets/styles/style' ;
@ import '~@/assets/styles/mixins' ;
. bzzqyjStep1 {
/deep/ . el - drawer _ _container {
. prc - content - border {
border : none ;
padding : 0 20 px 0 ;
}
}
position : relative ;
height : 100 % ;
. headerTabs {
height : 52 px ;
display : flex ;
align - items : center ;
position : absolute ;
top : 0 ;
right : 10 px ;
. headerTabsItem {
border : 1 px solid # c1c1c1 ;
padding : 0 5 px ;
height : 30 px ;
line - height : 30 px ;
cursor : pointer ;
}
. active {
border : 1 px solid # E6A23C ;
color : # fff ;
background : # E6A23C ;
}
}
. content {
display : flex ;
flex - direction : column ;
justify - content : space - between ;
height : calc ( ~ '100% - 103px' ) ;
overflow : auto ;
}
. standardForComments {
height : 100 % ;
background : # fff ;
. el - divider -- horizontal {
display : block ;
height : 1 px ;
width : 100 % ;
margin : 0 ;
}
flex - direction : column ;
. action - bar {
margin - bottom : 5 px ;
padding : 0 ;
}
. content {
flex : auto ;
overflow : hidden ;
display : flex ;
flex - direction : column ;
. table - wrap {
flex : auto ;
overflow : hidden ;
position : relative ;
}
}
& > . pagination {
position : static ;
/deep/ . pagination - slot {
padding : 0 ;
}
}
}
}
< / style >