Files
foton-laws-system-front/src/pages/processCenter/pages/creatProcess/qbzxdjhgk/component/delay.vue
T

530 lines
20 KiB
Vue

<template>
<div>
<process-title>
<template slot="title">延期企标信息</template>
</process-title>
<el-form
ref="qbfsForm"
:model="qbfsForm"
:rules="formRules"
class="label-input-form prc-content-border"
label-width="150px"
>
<div >
<el-row :gutter="24">
<el-col :span="12">
<el-form-item label="选择标准" prop="orgName" class="add-form-item form-item-disabled">
<el-button size="mini" type="primary" style="margin-left: 10px;" @click="choiceShow">选择延期标准</el-button>
</el-form-item>
<el-form-item v-if="false" label="" prop="type" class="add-form-item form-item-disabled">
<el-input :disabled="disabledXX"
v-model="qbfsForm.type"
clearable
></el-input>
</el-form-item>
<el-form-item prop="bussSort" label="企标类别" style="width: 100%; margin-right:10px" class="add-form-item form-item-disabled">
<el-select disabled v-model="qbfsForm.bussSort" filterable placeholder="请选择企标类别" style="width: 100%;">
<el-option
v-for="(item, index) in standSortOptions"
:key="index"
:value="item.value"
:label="item.label">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="企标名称" prop="esName" class="add-form-item form-item-disabled">
<el-input :disabled="disabledXX"
readonly
v-model="qbfsForm.esName"
placeholder="请输入企标名称"
clearable
></el-input>
</el-form-item>
<el-form-item prop="reviseStatus" label="制修订类型" style="width: 100%; margin-right:10px" class="add-form-item form-item-disabled">
<el-select disabled v-model="qbfsForm.reviseStatus" placeholder="请选择制修订类型">
<el-option label="制定" value="1"></el-option>
<el-option label="修订" value="2"></el-option>
</el-select>
</el-form-item>
<el-form-item v-if="qbfsForm.reviseStatus === '修订'" prop="rqbName" label="代替企标编号" style="width: 100%; margin-right:10px" class="add-form-item form-item-disabled">
<el-input :disabled="disabledXX"
style="display: none;"
v-model="qbfsForm.rqbJson">
</el-input>
<el-input :disabled="disabledXX"
clearable
v-model="qbfsForm.rqbName"
placeholder="请选择代替企标编号"
readonly
@click.native="choiceQYBZ">
</el-input>
</el-form-item>
<el-form-item prop="area" label="适用车型" style="width: 100%; margin-right:10px"
class="add-form-item form-item-disabled">
<el-select disabled v-model="qbfsForm.area" multiple filterable placeholder="请选择适用车型" style="width: 100%;">
<el-option
v-for="item in BZList"
:key="item.value"
:label="item.label"
:value="item.value">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="评审责任人" prop="resPersonName" class="add-form-item form-item-disabled">
<el-input :disabled="disabledXX"
readonly
v-model="qbfsForm.resPersonName"
placeholder="请输入评审责任人"
clearable
></el-input>
</el-form-item>
<el-form-item label="初稿完成时间" prop="draftTime" class="add-form-item form-item-disabled">
<el-date-picker
disabled
v-model="qbfsForm.draftTime"
type="date"
value-format="yyyy-MM-dd"
placeholder="请选择初稿完成时间">
</el-date-picker>
</el-form-item>
<el-form-item label="引用标准" style="width: 100%; margin-right:10px" prop="esMatingRelations" class="add-form-item form-item-disabled">
<el-input :disabled="disabledXX"
disabled
v-model="qbfsForm.esMatingRelations"
placeholder="请输入引用标准"
:maxlength="500"/>
</el-form-item>
<el-form-item label="延期后初稿完成时间" prop="yqDraftTime" class="add-form-item form-item-disabled">
<el-date-picker
v-model="qbfsForm.yqDraftTime"
type="date"
value-format="yyyy-MM-dd"
placeholder="请选择延期后初稿完成时间">
</el-date-picker>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="起草责任单位" prop="unitName" class="add-form-item form-item-disabled">
<div v-if="qbfsForm.unitName">
<el-tooltip class="item" effect="dark" :content="qbfsForm.unitName" placement="top-start">
<el-input :disabled="disabledXX"
readonly
v-model="qbfsForm.unitName"
placeholder="请输入起草责任单位"
clearable
></el-input>
</el-tooltip>
</div>
<div v-else>
<el-input :disabled="disabledXX"
readonly
v-model="qbfsForm.unitName"
placeholder="请输入起草责任单位"
clearable
></el-input>
</div>
</el-form-item>
<el-form-item label="起草人" prop="drafterName" class="add-form-item form-item-disabled">
<el-input :disabled="disabledXX"
readonly
v-model="qbfsForm.drafterName"
placeholder="请输入起草人"
clearable
></el-input>
</el-form-item>
<el-form-item label="工作组组长" prop="wgLeaderName" class="add-form-item form-item-disabled">
<el-input :disabled="disabledXX"
readonly
v-model="qbfsForm.wgLeaderName"
placeholder="请输入工作组组长"
clearable
></el-input>
</el-form-item>
<el-form-item label="标准发布时间" prop="releaseTime" class="add-form-item form-item-disabled">
<el-date-picker
disabled
v-model="qbfsForm.releaseTime"
type="date"
value-format="yyyy-MM-dd"
placeholder="请选择标准发布时间">
</el-date-picker>
</el-form-item>
<el-form-item label="采用国内外标准情况" style="width: 100%; margin-right:10px" prop="isRelate" class="add-form-item form-item-disabled">
<el-input :disabled="disabledXX"
disabled
v-model="qbfsForm.isRelate"
placeholder="请输入采用国内外标准情况"
:maxlength="500"/>
</el-form-item>
<el-form-item v-if="qbfsForm.isRelate === '否'" label="简述指标依据" style="width: 100%; margin-right:10px" prop="technologic" class="add-form-item form-item-disabled">
<el-input :disabled="disabledXX"
disabled
v-model="qbfsForm.technologic"
placeholder="请输入是否引用标准"
:maxlength="500"/>
</el-form-item>
<el-form-item v-if="qbfsForm.isRelate === '是'" label="采用标准" style="width: 100%; margin-right:10px" prop="esStandRelations" class="add-form-item form-item-disabled">
<el-input :disabled="disabledXX"
disabled
v-model="qbfsForm.esStandRelations"
placeholder="请输入采用标准"
:maxlength="500"/>
</el-form-item>
<el-form-item v-if="qbfsForm.isRelate === '是'" prop="useLevel" label="采标程度" style="width: 100%; margin-right:10px"
class="add-form-item form-item-disabled">
<el-select disabled v-model="qbfsForm.useLevel" filterable placeholder="请选择采标程度" style="width: 100%;">
<el-option
v-for="(item, index) in cbcdOptions"
:key="index"
:value="item.value"
:label="item.label">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="延期后标准发布时间" prop="yqReleaseTime" class="add-form-item form-item-disabled">
<el-date-picker
v-model="qbfsForm.yqReleaseTime"
type="date"
value-format="yyyy-MM-dd"
placeholder="请选择延期后标准发布时间">
</el-date-picker>
</el-form-item>
<el-form-item label="体系结构" style="width: 100%; margin-right:10px" prop="tsJsonName" class="add-form-item form-item-disabled">
<el-input :disabled="disabledXX"
disabled
v-model="qbfsForm.tsJsonName"
placeholder="请输入体系结构"
:maxlength="500"/>
</el-form-item>
<el-form-item label="延期原因" prop="delayReason" class="add-form-item form-item-disabled">
<el-input :disabled="disabledXX"
type="textarea"
v-model="qbfsForm.delayReason"
placeholder="请输入延期原因"
clearable
></el-input>
</el-form-item>
</el-col>
</el-row>
</div>
</el-form>
<!-- 选择企标计划抽屉-->
<el-drawer
title="选择企业标准"
:visible.sync="ListModel"
size="900px"
custom-class="demo-drawer"
>
<div class="demo-drawer-content">
<div style="position: absolute;bottom: 48px;top:60px;left: 0;right: 0">
<div style="position: absolute;bottom: 55px;top: 0;right: 0;left: 0">
<div class="left">
<el-form :modal="standardSearch" :inline="true" class="label-input-form" style="margin-left:10px">
<el-form-item label="企标名称" class="search-item search-item-last">
<el-input :disabled="disabledXX"
v-model="standardSearch.standName"
placeholder="根据企标名称查找"
></el-input>
</el-form-item>
<el-form-item label="制修订类型" class="search-item search-item-last">
<el-select v-model="standardSearch.reviseStatus" placeholder="请选择制修订类型">
<el-option label="制定" value="制定"></el-option>
<el-option label="修订" value="修订"></el-option>
</el-select>
</el-form-item>
<el-form-item class="search-item btn-box">
<el-button
type="primary"
class="common-button-primary"
size="small"
@click="getStandDataBtn">
查询
</el-button>
</el-form-item>
<el-form-item class="search-item btn-box">
<el-button
class="common-button-default"
size="small"
@click="clearSearch">清空
</el-button>
</el-form-item>
</el-form>
</div>
<el-table
:data="standinfoList"
tooltip-effect="dark"
style="width: 100%"
border
height="100%"
:header-cell-style="{background: '#f5f1f1', color: '#333333', fontSize: '16px',
fontWeight: 'bold', height: '48px'}"
@selection-change="selectListChange"
ref="selection"
>
<el-table-column
type="selection"
width="55"
align="center">
</el-table-column>
<el-table-column
prop="esName"
label="企标名称"
align="center">
</el-table-column>
<el-table-column
prop="planStatus"
label="计划状态"
align="center">
<template slot-scope="scope">
<div>{{ scope.row.planStatus === '0'? '未开始' : (scope.row.planStatus === '1'? '制定中' : (scope.row.planStatus === '2'? '修订中' :
(scope.row.planStatus === '3'? '已取消' : '已完成'))) }}</div>
</template>
</el-table-column>
<el-table-column
prop="reviseStatus"
align="center"
label="制修订类型">
<template slot-scope="scope">
<div>{{ scope.row.reviseStatus === '1'? '制定' : '修订'}}</div>
</template>
</el-table-column>
<el-table-column
prop="drafterName"
align="center"
label="起草人">
</el-table-column>
<el-table-column
prop="resPersonName"
align="center"
label="评审责任人">
</el-table-column>
<el-table-column
prop="wgLeaderName"
align="center"
label="工作组组长">
</el-table-column>
<el-table-column
prop="draftTime"
align="center"
label="计划标准初稿完成时间">
<template slot-scope="scope">
<span>{{ scope.row.draftTime ? $moment(scope.row.draftTime).format("YYYY-MM-DD") : "" }}</span>
</template>
</el-table-column>
<el-table-column
prop="releaseTime"
align="center"
label="计划标准发布时间">
<template slot-scope="scope">
<span>{{ scope.row.releaseTime ? $moment(scope.row.releaseTime).format("YYYY-MM-DD") : "" }}</span>
</template>
</el-table-column>
<el-table-column
align="center"
prop="unitName"
label="起草责任单位">
</el-table-column>
</el-table>
</div>
<pagination
:page="page"
:pageSize="pageSize"
:total="total"
@pageChange="pageChange"
@pageSizeChange="pageSizeChange"
/>
</div>
</div>
<div class="demo-drawer-footer">
<el-button size="mini" @click="closeDrawer">取消</el-button>
<el-button type="primary" size="mini" @click="OkDrawer">带入</el-button>
</div>
</el-drawer>
</div>
</template>
<script>
import ProcessTitle from "process/components/ProcessTitle";
export default {
name: "delay",
components: {
ProcessTitle
},
props: ['message'],
data(){
return{
disabledXX:!!this.$route.query.disabledXX,
BZList: [],
cbcdOptions: [],
standSortOptions: [],
formRules: {
bussSort: [
{ required: true, message: "请选择企标类别", trigger: "blur" }
],
yqDraftTime: [
{ required: true, message: '请选择延期后初稿完成时间', trigger: 'blur' },
],
yqReleaseTime: [
{ required: true, message: '请选择延期后标准发布时间', trigger: 'blur' },
],
delayReason: [
{required: true, message: '请输入延期原因', trigger:'blur'},
]
},
ListModel: false,
standinfoList: [],
page: 1,
total: 0,
pageSize: this.$store.getters.userInfo.configContent,
standardSearch: {
reviseStatus: "",
standName: "",
},
qbfsForm: {
type: '2',
standCode: "",
standName: "",
enName: '',
entCategory: '',
replaceNumber: '',
replacedNumber: '',
releaseDate: '',
implementDate: '',
reviewDate: '',
abolishCause:'',
},
}
},
watch:{
message: {
immediate: true,
deep: true,
handler(val) {
this.qbfsForm = val
}
}
},
mounted(){
// if(this.qbfsForm.passFlag){
// this.qbfsForm = {}
// }
//查询下拉框数据
this.$http.get('sys/dictype/getDicTypeListCode', '',{
_this: this
}, res => {
this.BZList = res.data.ENERGYTYPES //标准范围
this.standSortOptions = res.data.BUSSSTANDCLASS // 标准类别
this.cbcdOptions = res.data.DEGREESTANDARD //采标程度
})
},
methods: {
validateForm () {
let flag = null
this.$refs['qbfsForm'].validate((valid) => {
if (valid) {
flag = true
} else {
flag = false
}
})
return flag
},
choiceShow(){
this.getStandDataBtn()
this.ListModel = true
},
//企业标准查询
getStandDataBtn(){
this.$http.post('esRevisePlan/es-revise-plan/queryAllPlans',{
reviseStatus: this.standardSearch.reviseStatus || '',
esName: this.standardSearch.standName,
planStatus: '0',
page: this.page,
pageSize: this.pageSize,
}, {
_this: this,
}, res => {
this.standinfoList = []
//展示的数据只能是未开始的
res.data.list.forEach(item => {
if(item.planStatus === '0'){
this.standinfoList.push(item)
}
})
this.total = this.standinfoList.length
})
},
//企业标准清空
clearSearch(){
this.standardSearch = {
standCode: '',
standName: ''
}
this.getStandDataBtn()
},
// 取消带入
closeDrawer(){
this.ListModel = false
},
//带入标准
OkDrawer(){
console.log(this.selectList);
if(this.selectList.length > 1){
this.$message.warning('您只能带入一条标准')
}else if(this.selectList.length < 1){
this.$message.warning('请至少选择一条数据进行带入')
}else{
this.qbfsForm.esId = this.selectList[0].id
this.qbfsForm.esName = this.selectList[0].esName
this.qbfsForm.draftTime = this.selectList[0].draftTime
this.qbfsForm.drafterName = this.selectList[0].drafterName
this.qbfsForm.planStatus = this.selectList[0].planStatus === '0'? '未开始' : (this.selectList[0].planStatus === '1'? '制定中' : (this.selectList[0] === '2'? '修订中' :
(this.selectList[0] === '3'? '已取消' : '已完成')))
this.qbfsForm.releaseTime = this.selectList[0].releaseTime
this.qbfsForm.resPersonName = this.selectList[0].resPersonName
this.qbfsForm.reviseStatus = this.selectList[0].reviseStatus === '1'? '制定' : '修订'
this.qbfsForm.unitName = this.selectList[0].unitName
this.qbfsForm.wgLeaderName = this.selectList[0].wgLeaderName
if(this.selectList[0].area){
this.qbfsForm.area = this.selectList[0].area.split(',')
}
if(this.selectList[0].bussSort){
this.qbfsForm.bussSort = this.selectList[0].bussSort.split(',')
}
this.qbfsForm.rqbName = this.selectList[0].rqbName
this.qbfsForm.tsJsonName = this.selectList[0].tsJsonName
this.qbfsForm.isRelate = this.selectList[0].isRelate.indexOf("null") !== -1 ? "":this.selectList[0].isRelate
this.qbfsForm.useLevel = this.selectList[0].useLevel
this.qbfsForm.esStandRelations = this.selectList[0].esStandRelations
this.qbfsForm.technologic = this.selectList[0].technologic
if(this.selectList[0].esMatingRelations && this.selectList[0].esMatingRelations !== 'null'){
this.qbfsForm.esMatingRelations = this.selectList[0].esMatingRelations
}
this.ListModel = false
}
},
pageChange(page) {
this.page = page;
this.getStandDataBtn();
},
pageSizeChange(pageSize) {
this.pageSize = pageSize;
this.getStandDataBtn();
},
//企业标准选中项改变
selectListChange(data){
console.log(data);
this.selectList = data
},
},
};
</script>
<style scoped>
</style>