Merge remote-tracking branch 'origin/develop' into develop
This commit is contained in:
@@ -32,12 +32,12 @@
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="researchImplementationTime"
|
||||
prop="researchCompletionTime"
|
||||
label="完成时间"
|
||||
align="center"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.researchImplementationTime ? $moment(scope.row.researchImplementationTime).format('YYYY-MM-DD') : '' }}</span>
|
||||
<span>{{ scope.row.researchCompletionTime ? $moment(scope.row.researchCompletionTime).format("YYYY-MM-DD") : "" }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
|
||||
@@ -23,65 +23,66 @@
|
||||
<div class="modular-header" style="height: 50px;">
|
||||
<div class="modular-header-btn">
|
||||
<el-button type="warning" icon="el-icon-edit" @click="businessCommentDialog = true">企标评价</el-button>
|
||||
<el-dialog title="企业标准动态评价表" :visible.sync="businessCommentDialog" width="54%" :close-on-click-modal="false">
|
||||
<el-table ref="businessCommentTable" :data="businessCommentTable.filter((v) => v.code !== '3U9lb')" border style="width: 100%; flex: auto;margin-bottom: 2%"
|
||||
class="comment-table"
|
||||
:header-cell-style="{background: '#E8E8E8', color: '#333333', fontSize: '16px',
|
||||
<el-dialog title="企业标准评价" :visible.sync="businessCommentDialog" :width="(commentAverageScoreTag === '1' && commentActiveName !== 'dynamicComment')?'90%':'65%'" :close-on-click-modal="false">
|
||||
<el-tabs v-model="commentActiveName" @tab-click="tabsClick">
|
||||
<el-tab-pane label="动态评价" name="dynamicComment">
|
||||
<el-table ref="businessCommentTable" :data="businessCommentTable.filter((v) => v.code !== '3U9lb')" border style="width: 100%; flex: auto;margin-bottom: 2%"
|
||||
class="comment-table"
|
||||
:header-cell-style="{background: '#E8E8E8', color: '#333333', fontSize: '16px',
|
||||
fontWeight: 'bold', height: '48px'}">
|
||||
<el-table-column
|
||||
type="index"
|
||||
label="序号"
|
||||
width="55"
|
||||
align="center"
|
||||
/>
|
||||
<el-table-column prop="threeIndexTitle" label="评价指标" width="300">
|
||||
<!--commentTarget-->
|
||||
<template slot-scope="scope">
|
||||
<span>{{scope.row.threeIndexTitle}}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="targetScore" label="指标分值" width="165">
|
||||
<template slot-scope="scope">
|
||||
<el-col :span="20">
|
||||
<el-rate
|
||||
v-model="scope.row.targetScore"
|
||||
@change="targetScoreChange(scope.row)"
|
||||
allow-half>
|
||||
</el-rate>
|
||||
</el-col>
|
||||
<b style="margin-left: 5px;font-size: 12px;">{{ scope.row.targetScore * 2 }}</b>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column property="reason" label="简述理由">
|
||||
<template slot-scope="scope">
|
||||
<el-input clearable size="mini" placeholder="请简述评分理由" @change="commentReasonChange(scope.row)" v-model="scope.row.commentReason" />
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<el-form :model="businessCommentForm">
|
||||
<el-form-item label="动态评价分值">
|
||||
<el-col :span="4">
|
||||
<el-rate
|
||||
v-model="businessCommentForm.averageScore"
|
||||
disabled
|
||||
style="margin-top: 12px"
|
||||
text-color="#ff9900">
|
||||
</el-rate>
|
||||
</el-col>
|
||||
<b style="margin-top: 5px">{{ businessCommentForm.averageScore * 2 }}</b>
|
||||
</el-form-item>
|
||||
<el-form-item label="对标准的意见和建议,是否需要修订">
|
||||
<template>
|
||||
<el-radio v-model="businessCommentForm.revise" label="1">是</el-radio>
|
||||
<el-radio v-model="businessCommentForm.revise" label="0">否</el-radio>
|
||||
<el-input v-show="businessCommentForm.revise === '1'"
|
||||
v-model="businessCommentForm.reviseReason"
|
||||
placeholder="请填写修订理由"
|
||||
type="textarea"
|
||||
:rows="2"></el-input>
|
||||
</template>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<el-table-column
|
||||
type="index"
|
||||
label="序号"
|
||||
width="55"
|
||||
align="center"
|
||||
/>
|
||||
<el-table-column prop="threeIndexTitle" label="评价指标" width="300">
|
||||
<!--commentTarget-->
|
||||
<template slot-scope="scope">
|
||||
<span>{{scope.row.threeIndexTitle}}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="targetScore" label="指标分值" width="165">
|
||||
<template slot-scope="scope">
|
||||
<el-col :span="20">
|
||||
<el-rate
|
||||
v-model="scope.row.targetScore"
|
||||
@change="targetScoreChange(scope.row)"
|
||||
allow-half>
|
||||
</el-rate>
|
||||
</el-col>
|
||||
<b style="margin-left: 5px;font-size: 12px;color: #ff9900">{{ scope.row.targetScore * 2 }}</b>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column property="reason" label="简述理由">
|
||||
<template slot-scope="scope">
|
||||
<el-input clearable size="mini" placeholder="请简述评分理由" @change="commentReasonChange(scope.row)" v-model="scope.row.commentReason" />
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<el-form :model="businessCommentForm">
|
||||
<el-form-item label="动态评价分值">
|
||||
<el-col :span="4">
|
||||
<el-rate
|
||||
v-model="businessCommentForm.averageScore"
|
||||
disabled
|
||||
style="margin-top: 12px">
|
||||
</el-rate>
|
||||
</el-col>
|
||||
<b style="margin-top: 5px;margin-left: -2%;color: #ff9900">{{ businessCommentForm.averageScore * 2 }}</b>
|
||||
</el-form-item>
|
||||
<el-form-item label="对标准的意见和建议,是否需要修订">
|
||||
<template>
|
||||
<el-radio v-model="businessCommentForm.revise" label="1">是</el-radio>
|
||||
<el-radio v-model="businessCommentForm.revise" label="0">否</el-radio>
|
||||
<el-input v-show="businessCommentForm.revise === '1'"
|
||||
v-model="businessCommentForm.reviseReason"
|
||||
placeholder="请填写修订理由"
|
||||
type="textarea"
|
||||
:rows="2"></el-input>
|
||||
</template>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<div style="padding-left: 80%">
|
||||
<el-button
|
||||
type="primary"
|
||||
@@ -100,6 +101,230 @@
|
||||
>取消
|
||||
</el-button>
|
||||
</div>
|
||||
</el-tab-pane>
|
||||
<el-tab-pane label="历史评价" name="historyComment">
|
||||
<el-form>
|
||||
<el-row>
|
||||
<el-col :span="10" :offset="4">
|
||||
<el-form-item>
|
||||
<el-radio v-model="commentAverageScoreTag" label="1" border @change="tabsClick">质量评价总平均分</el-radio>
|
||||
<b style="margin-top: 30px;margin-left: 5px;font-size: 20px;color: #ff9900">{{
|
||||
qualityCommentScore * 2
|
||||
}}</b>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8" :offset="2">
|
||||
<el-form-item>
|
||||
<el-radio v-model="commentAverageScoreTag" label="2" border @change="tabsClick">动态评价总平均分</el-radio>
|
||||
<b style="margin-top: 30px;margin-left: 5px;font-size: 20px;color: #ff9900">{{
|
||||
dynamicCommentScore * 2
|
||||
}}</b>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="4">
|
||||
<el-table
|
||||
v-if="commentAverageScoreTag === '1'"
|
||||
:data="qualityHistoryPeopleTable"
|
||||
style="width: 100%"
|
||||
height="345px"
|
||||
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px',
|
||||
fontWeight: 'bold', height: '48px'}">
|
||||
<el-table-column
|
||||
prop="historyPeopleName"
|
||||
align="center"
|
||||
label="质量评价人"
|
||||
width="130px"
|
||||
show-overflow-tooltip>
|
||||
<template slot-scope="scope">
|
||||
<el-button type="default"
|
||||
style="width: 100px;" size="mini" @click="historyPeopleChange(scope.row)">
|
||||
{{ scope.row.userName }}
|
||||
</el-button>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<el-table
|
||||
v-else-if="commentAverageScoreTag === '2'"
|
||||
:data="dynamicHistoryPeopleTable"
|
||||
style="width: 100%"
|
||||
height="345px"
|
||||
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px',
|
||||
fontWeight: 'bold', height: '48px'}">
|
||||
<el-table-column
|
||||
prop="historyPeopleName"
|
||||
align="center"
|
||||
label="动态评价人"
|
||||
width="130px"
|
||||
show-overflow-tooltip>
|
||||
<template slot-scope="scope">
|
||||
<el-button type="default"
|
||||
style="width: 100px;" size="mini" @click="historyPeopleChange(scope.row)">
|
||||
{{ scope.row.userName }}
|
||||
</el-button>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
</el-col>
|
||||
<el-col :span="20" >
|
||||
<div style="width: 100%;padding: 0 1% 2% 0" v-loading="historyInfoLoading" v-show="commentAverageScoreTag === '1'">
|
||||
<el-table
|
||||
:data="qualityHistoryCommentTable"
|
||||
:summary-method="getSummaries"
|
||||
show-summary
|
||||
:span-method="(({row, column, rowIndex, columnIndex})=>objectSpanMethod({row, column, rowIndex, columnIndex},qualityHistoryCommentTable))"
|
||||
style="width: 100%">
|
||||
<el-table-column label="企业标准编写质量评价表" align="center" label-class-name="column1">
|
||||
<el-table-column
|
||||
label="标准代号"
|
||||
>
|
||||
<el-table-column
|
||||
prop="oneIndexTitle"
|
||||
align="center"
|
||||
label="一级指标"
|
||||
width = '120'
|
||||
>
|
||||
</el-table-column>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
:label="sarStandardsInfoEO.standCode"
|
||||
>
|
||||
<el-table-column
|
||||
prop="twoIndexTitle"
|
||||
align="center"
|
||||
label="二级指标"
|
||||
width = '120'
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="threeIndexTitle"
|
||||
label="三级指标"
|
||||
width="300"
|
||||
>
|
||||
</el-table-column>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
label="标准名称"
|
||||
>
|
||||
<el-table-column
|
||||
prop="weight"
|
||||
align="center"
|
||||
label="指标权重 %"
|
||||
width = '100'
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
{{scope.row.valueType === 'number' ? scope.row.weight * 100 : '加分项('+scope.row.weight+'分)'}}
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
:label="sarStandardsInfoEO.standName"
|
||||
>
|
||||
<el-table-column
|
||||
prop="targetScore"
|
||||
align="center"
|
||||
label="指标分值(10分制)优≥8分;合格6~8分;不合格<6分"
|
||||
width = '200'
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<el-form-item
|
||||
:prop="'qualityHistoryCommentTable.'+scope.$index + '.targetScore'">
|
||||
<el-input v-model.number="scope.row.targetScore" placeholder="请填写分值" />
|
||||
</el-form-item>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="scoreMin"
|
||||
align="center"
|
||||
label="分值小计"
|
||||
width = '80'
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
{{setScoreMin(scope.row)}}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="commentReason"
|
||||
align="center"
|
||||
label="简述扣分理由(不合格<6分,必填)"
|
||||
>
|
||||
<template slot-scope="scope" v-if="scope.row.valueType !== 'add'">
|
||||
<el-form-item
|
||||
:prop="'qualityHistoryCommentTable.'+scope.$index + '.commentReason'">
|
||||
<el-input v-model="scope.row.commentReason" placeholder="请填写扣分理由" />
|
||||
</el-form-item>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table-column>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
</div>
|
||||
<div style="width: 100%" v-loading="historyInfoLoading" v-show="commentAverageScoreTag === '2'">
|
||||
<el-table ref="businessCommentTable" :data="dynamicHistoryCommentTable.filter((v) => v.code !== '3U9lb')" border style="width: 100%; flex: auto;margin-bottom: 2%"
|
||||
class="comment-table"
|
||||
:header-cell-style="{background: '#E8E8E8', color: '#333333', fontSize: '16px',
|
||||
fontWeight: 'bold', height: '48px'}">
|
||||
<el-table-column
|
||||
type="index"
|
||||
label="序号"
|
||||
width="55"
|
||||
align="center"
|
||||
/>
|
||||
<el-table-column prop="threeIndexTitle" label="评价指标" width="300">
|
||||
<!--commentTarget-->
|
||||
<template slot-scope="scope">
|
||||
<span>{{scope.row.indexTitle}}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="targetScore" label="指标分值" width="165">
|
||||
<template slot-scope="scope">
|
||||
<el-col :span="20">
|
||||
<el-rate
|
||||
v-model="scope.row.targetScore / 2"
|
||||
disabled
|
||||
allow-half>
|
||||
</el-rate>
|
||||
</el-col>
|
||||
<b style="margin-left: 5px;font-size: 12px;color: #ff9900">{{ parseInt(scope.row.targetScore) }}</b>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column property="reason" label="简述理由">
|
||||
<template slot-scope="scope">
|
||||
<el-input clearable size="mini" placeholder="该用户没有填写评分理由" disabled v-model="scope.row.commentReason" />
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<el-form :model="historyCommentForm">
|
||||
<el-form-item label="动态评价分值">
|
||||
<el-col :span="5">
|
||||
<el-rate
|
||||
v-model="historyCommentForm.averageScore / 2"
|
||||
disabled
|
||||
style="margin-top: 12px;">
|
||||
</el-rate>
|
||||
</el-col>
|
||||
<b style="margin-top: 5px;margin-left: -2%;color: #ff9900">{{ historyCommentForm.averageScore }}</b>
|
||||
</el-form-item>
|
||||
<el-form-item label="对标准的意见和建议,是否需要修订">
|
||||
<template>
|
||||
<el-radio v-model="historyCommentForm.revise" label="1" disabled>是</el-radio>
|
||||
<el-radio v-model="historyCommentForm.revise" label="0" disabled>否</el-radio>
|
||||
<el-input v-show="historyCommentForm.revise === '1'"
|
||||
v-model="historyCommentForm.reviseReason"
|
||||
disabled
|
||||
placeholder="请填写修订理由"
|
||||
type="textarea"
|
||||
:rows="2"></el-input>
|
||||
</template>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
</div>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</el-form>
|
||||
</el-tab-pane>
|
||||
</el-tabs>
|
||||
</el-dialog>
|
||||
<el-button v-if="sarStandardsInfoEO.collectId" @click="collectClick(sarStandardsInfoEO.collectId)" title="取消收藏" class="collection-btn" icon="el-icon-star-on" :loading="isSubmit"></el-button>
|
||||
<el-button v-else @click="collectClick()" title="收藏" class="collection-btn" icon="el-icon-star-off" :loading="isSubmit"></el-button>
|
||||
@@ -1066,6 +1291,21 @@ export default {
|
||||
},
|
||||
data () {
|
||||
return {
|
||||
commentAverageScoreTag: '1',
|
||||
firstHistoryPeopleId: '',//最新评价的人的id
|
||||
historyInfoLoading: false,//历史评价信息的loading
|
||||
historyCommentForm: {
|
||||
averageScore: 0, // 平均分值
|
||||
revise: '',
|
||||
reviseReason: '', // 修订理由
|
||||
}, // 历史评价表单
|
||||
dynamicHistoryCommentTable: [], // 动态评价历史评价表格
|
||||
qualityHistoryCommentTable: [], // 质量评价历史评价表格
|
||||
dynamicHistoryPeopleTable: [], // 动态评价历史评价人表格
|
||||
qualityHistoryPeopleTable: [], // 质量评价历史评价人表格
|
||||
dynamicCommentScore: 0,// 动态评价总平均分
|
||||
qualityCommentScore: 0,// 质量评价总平均分
|
||||
commentActiveName: 'dynamicComment',
|
||||
indexType: 'dynamic',
|
||||
commentReason: '', // 评价理由
|
||||
commentReason1: '', // 评价理由
|
||||
@@ -1293,6 +1533,108 @@ export default {
|
||||
watch: {
|
||||
},
|
||||
methods: {
|
||||
historyPeopleChange(row){
|
||||
this.historyInfoLoading = true
|
||||
const allData = {
|
||||
lawId: this.sarStandardsInfoEO.id,
|
||||
userId: row.userId,
|
||||
evaluationType: this.indexType
|
||||
}
|
||||
if (this.indexType === 'quality'){
|
||||
this.$http.get('sarEnterpriseStandardEvaluation/quality-evaluation/getEvaluationForm', allData , {
|
||||
_this: this
|
||||
}, res => {
|
||||
this.qualityHistoryCommentTable = res.data
|
||||
|
||||
this.historyInfoLoading = false
|
||||
}, e => {
|
||||
this.historyInfoLoading = false
|
||||
})
|
||||
}else if (this.indexType === 'dynamic'){
|
||||
this.$http.get('sarEnterpriseStandardEvaluation/quality-evaluation/getEvaluationForm', allData , {
|
||||
_this: this
|
||||
}, res => {
|
||||
this.dynamicHistoryCommentTable = res.data
|
||||
|
||||
this.historyCommentForm.revise = res.data[0].targetScore
|
||||
this.historyCommentForm.reviseReason = res.data[0].commentReason
|
||||
|
||||
let averageScore = 0
|
||||
res.data.forEach(item => {
|
||||
if (item.valueType === 'number'){
|
||||
averageScore += parseInt(item.targetScore)
|
||||
}
|
||||
})
|
||||
averageScore = averageScore / 4
|
||||
this.historyCommentForm.averageScore = averageScore
|
||||
this.historyInfoLoading = false
|
||||
}, e => {
|
||||
this.historyInfoLoading = false
|
||||
})
|
||||
}
|
||||
|
||||
},
|
||||
tabsClick(tab, event){
|
||||
this.historyInfoLoading = true
|
||||
if (this.commentAverageScoreTag === '1'){
|
||||
this.indexType = 'quality'
|
||||
//查询评分表
|
||||
const allData = {
|
||||
lawId: this.sarStandardsInfoEO.id,
|
||||
userId: this.firstHistoryPeopleId,
|
||||
evaluationType: this.indexType
|
||||
}
|
||||
this.$http.get('sarEnterpriseStandardEvaluation/quality-evaluation/getEvaluationForm', allData , {
|
||||
_this: this
|
||||
}, res => {
|
||||
this.qualityHistoryCommentTable = res.data
|
||||
this.historyInfoLoading = false
|
||||
|
||||
}, e => {
|
||||
this.historyInfoLoading = false
|
||||
})
|
||||
}
|
||||
else if (this.commentAverageScoreTag === '2'){
|
||||
this.indexType = 'dynamic'
|
||||
//查询评分表
|
||||
const allData = {
|
||||
lawId: this.sarStandardsInfoEO.id,
|
||||
userId: this.firstHistoryPeopleId,
|
||||
evaluationType: this.indexType
|
||||
}
|
||||
this.$http.get('sarEnterpriseStandardEvaluation/quality-evaluation/getEvaluationForm', allData , {
|
||||
_this: this
|
||||
}, res => {
|
||||
this.dynamicHistoryCommentTable = res.data
|
||||
this.historyCommentForm.revise = res.data[0].targetScore
|
||||
this.historyCommentForm.reviseReason = res.data[0].commentReason
|
||||
|
||||
let averageScore = 0
|
||||
res.data.forEach(item => {
|
||||
if (item.valueType === 'number'){
|
||||
averageScore += parseInt(item.targetScore)
|
||||
}
|
||||
})
|
||||
averageScore = averageScore / 4
|
||||
this.historyCommentForm.averageScore = averageScore
|
||||
this.historyInfoLoading = false
|
||||
}, e => {
|
||||
this.historyInfoLoading = false
|
||||
})
|
||||
}
|
||||
|
||||
//查询动态评价总平均分和质量评价总平均分
|
||||
let standId = this.sarStandardsInfoEO.id
|
||||
this.$http.get('sarEnterpriseStandardEvaluation/quality-evaluation/getScore', {lawId:standId}, {
|
||||
_this: this
|
||||
}, res => {
|
||||
this.qualityCommentScore = res.data.quality.toFixed(3)/2
|
||||
this.dynamicCommentScore = res.data.dynamic.toFixed(3)/2
|
||||
|
||||
}, e => {
|
||||
})
|
||||
|
||||
},
|
||||
targetScoreChange(row){
|
||||
if (this.targetScore1 === '') {
|
||||
this.targetScore1 = 0
|
||||
@@ -1368,26 +1710,120 @@ export default {
|
||||
this.$message.warning('请填写修订理由')
|
||||
}
|
||||
if (submitFlag === true) {
|
||||
this.$message.success('通过')
|
||||
|
||||
this.commentSubmitLoading = true
|
||||
const allData = {
|
||||
tableData: this.businessCommentTable,
|
||||
formData: JSON.stringify(this.businessCommentForm),
|
||||
standId: this.sarStandardsInfoEO.id,
|
||||
userId: this.$store.getters.userInfo.userId
|
||||
userId: this.$store.getters.userInfo.userId,
|
||||
evaluationType: this.indexType
|
||||
}
|
||||
|
||||
console.log(allData)
|
||||
this.$http.postData('sarEnterpriseStandardEvaluation/quality-evaluation/submitEvaluationForm', allData, {
|
||||
_this: this
|
||||
}, res => {
|
||||
console.log(res)
|
||||
if (res.ok){
|
||||
this.$message.success('提交成功')
|
||||
this.commentSubmitLoading = false
|
||||
//重新评分之后刷新历史评分人
|
||||
let standId = this.sarStandardsInfoEO.id
|
||||
this.$http.get('sarEnterpriseStandardEvaluation/quality-evaluation/getHistory', {lawId:standId}, {
|
||||
_this: this
|
||||
}, res => {
|
||||
this.dynamicHistoryPeopleTable = []
|
||||
this.dynamicHistoryPeopleTable = res.data.records
|
||||
this.firstHistoryPeopleId = res.data.records[0].userId
|
||||
// for (let i = 0; i < res.data.records.length; i++) {
|
||||
// this.dynamicHistoryPeopleTable.push(res.data.records[i].userName)
|
||||
// }
|
||||
|
||||
}, e => {
|
||||
})
|
||||
}
|
||||
}, e => {
|
||||
})
|
||||
|
||||
|
||||
}
|
||||
},
|
||||
getSummaries(param) {
|
||||
const { columns, data } = param;
|
||||
const sums = [];
|
||||
columns.forEach((column, index) => {
|
||||
if (index === 3) {
|
||||
sums[index] = '合计:';
|
||||
return;
|
||||
}else if(index === 6){
|
||||
sums[index] = '';
|
||||
return;
|
||||
}
|
||||
const values = data.map(item => Number(item[column.property]));
|
||||
if (!values.every(value => isNaN(value))) {
|
||||
sums[index] = values.reduce((prev, curr) => {
|
||||
const value = Number(curr);
|
||||
if (!isNaN(value)) {
|
||||
return prev + curr;
|
||||
} else {
|
||||
return prev;
|
||||
}
|
||||
}, 0);
|
||||
sums[index] += ' ';
|
||||
} else {
|
||||
sums[index] = '';
|
||||
}
|
||||
if(sums[index] !== '' && sums[index].indexOf(".") !== -1){
|
||||
sums[index] = parseFloat(sums[index]).toFixed(1);
|
||||
}
|
||||
});
|
||||
return sums;
|
||||
},
|
||||
objectSpanMethod({ row, column, rowIndex, columnIndex },value) {
|
||||
if (columnIndex === 0) {
|
||||
if (rowIndex === 0) {
|
||||
return {
|
||||
rowspan: value.length,
|
||||
colspan: 1
|
||||
};
|
||||
} else {
|
||||
return {
|
||||
rowspan: 0,
|
||||
colspan: 0
|
||||
};
|
||||
}
|
||||
}else if(columnIndex === 1 ) {
|
||||
const _row = (this.filterData2(this.qualityHistoryCommentTable).one)[rowIndex]
|
||||
const _col = _row > 0 ? 1 : 0
|
||||
return {
|
||||
rowspan: _row,
|
||||
colspan: _col
|
||||
}
|
||||
}
|
||||
},
|
||||
setScoreMin(row){
|
||||
return row.scoreMin = ((row.targetScore === undefined || row.targetScore === '') ? '' : row.valueType === 'add' ? row.targetScore : (row.targetScore / 10).toFixed(1))
|
||||
|
||||
},
|
||||
filterData2(){
|
||||
let spanOneArr = []
|
||||
let concatOne = 0
|
||||
this.qualityHistoryCommentTable.forEach((item,index)=>{//循环后端查询出来的数据(orderdata)
|
||||
if(index === 0){
|
||||
spanOneArr.push(1)
|
||||
}else{
|
||||
//name 修改
|
||||
if(item.twoIndexTitle === this.qualityHistoryCommentTable[index - 1].twoIndexTitle){ //第一列需合并相同内容的字段
|
||||
spanOneArr[concatOne] += 1
|
||||
spanOneArr.push(0)
|
||||
}else{
|
||||
spanOneArr.push(1)
|
||||
concatOne = index
|
||||
}
|
||||
}
|
||||
})
|
||||
return {
|
||||
one: spanOneArr,
|
||||
}
|
||||
},
|
||||
child1Func(child1){
|
||||
const list = []
|
||||
if(child1 && child1.length > 1){
|
||||
@@ -2383,12 +2819,34 @@ export default {
|
||||
// }
|
||||
},
|
||||
async mounted () {
|
||||
const qualityRequest = {
|
||||
lawId: this.sarStandardsInfoEO.id,
|
||||
evaluationType: 'quality'
|
||||
}
|
||||
this.$http.get('sarEnterpriseStandardEvaluation/quality-evaluation/getHistory', qualityRequest, {
|
||||
_this: this
|
||||
}, res => {
|
||||
this.qualityHistoryPeopleTable = res.data.records
|
||||
this.firstHistoryPeopleId = res.data.records[0].userId
|
||||
|
||||
}, e => {
|
||||
})
|
||||
const dynamicRequest = {
|
||||
lawId: this.sarStandardsInfoEO.id,
|
||||
evaluationType: 'dynamic'
|
||||
}
|
||||
this.$http.get('sarEnterpriseStandardEvaluation/quality-evaluation/getHistory', dynamicRequest, {
|
||||
_this: this
|
||||
}, res => {
|
||||
this.dynamicHistoryPeopleTable = res.data.records
|
||||
this.firstHistoryPeopleId = res.data.records[0].userId
|
||||
|
||||
}, e => {
|
||||
})
|
||||
this.$http.get('sarEnterpriseStandardEvaluation/evaluation-index/getEvaluationIndex', {indexType:this.indexType}, {
|
||||
_this: this
|
||||
}, res => {
|
||||
console.log('2371',res)
|
||||
this.businessCommentTable = res.data
|
||||
console.log(this.businessCommentTable)
|
||||
}, e => {
|
||||
})
|
||||
this.sarStandardsInfoEO.id = this.$route.params.id
|
||||
|
||||
@@ -722,17 +722,11 @@
|
||||
prop="xccssrq"
|
||||
label="新车型实施日期(文本)"
|
||||
width="180">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.xccssrq ? $moment(scope.row.xccssrq).format('YYYY-MM-DD') : '' }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="zccssrq"
|
||||
label="在产车实施日期(文本)"
|
||||
width="170">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.zccssrq ? $moment(scope.row.zccssrq).format('YYYY-MM-DD') : '' }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
show-overflow-tooltip
|
||||
|
||||
@@ -113,6 +113,9 @@
|
||||
</el-row>
|
||||
</el-form>
|
||||
</div>
|
||||
<div style="float: right;margin: 0 3% 10px 0">
|
||||
<el-button type="primary" size="mini" @click="exportExcelBtn">导出Excel</el-button>
|
||||
</div>
|
||||
<div class="content">
|
||||
<!-- <el-divider content-position="left" class="dynamic-child-title">实施日期预警</el-divider>-->
|
||||
<el-table
|
||||
@@ -123,7 +126,13 @@
|
||||
:resizable="false"
|
||||
:header-cell-style="{background: '#f8f8f9', color: '#515a6e'}"
|
||||
v-loading="warningTableLoading"
|
||||
@selection-change="selectChange"
|
||||
>
|
||||
<el-table-column
|
||||
type="selection"
|
||||
width="55"
|
||||
align="center">
|
||||
</el-table-column>
|
||||
<el-table-column prop="standType" label="类型" width="100" align="center">
|
||||
<template slot-scope="scope">
|
||||
<div v-if="scope.row.sortName === 'BUSINESS_STAND'">企业标准</div>
|
||||
@@ -199,17 +208,33 @@
|
||||
</div>
|
||||
</div>
|
||||
<adc-back-top scroll-bind="dynamicInformation"></adc-back-top>
|
||||
<!--导出模态框区域-->
|
||||
<el-dialog :visible.sync="exportModelFlag" title="导出文件" width="300px">
|
||||
<el-form :inline="true" class="label-input-form search-area">
|
||||
<el-form-item label="导出名称" class="search-item">
|
||||
<el-input v-model="exportName" placeholder="请输入导出文件名称" :maxlength="30" clearable label="导出名称"/>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<span slot="footer" class="demo-drawer-footer">
|
||||
<el-button size="mini" class="common-button-default" icon="el-icon-close" @click="cancal">取消</el-button>
|
||||
<el-button type="primary" size="mini" class="common-button-primary" icon="el-icon-check"
|
||||
@click="exportExcel">提交</el-button>
|
||||
</span>
|
||||
</el-dialog>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import {mapMutations} from "vuex";
|
||||
import {interfaceUrl} from "@/sysConfig";
|
||||
|
||||
export default {
|
||||
name: "standardWarning",
|
||||
data() {
|
||||
return {
|
||||
//
|
||||
selectedList: [],
|
||||
exportName: '',
|
||||
exportModelFlag: false,
|
||||
warningTableDatas:[],
|
||||
warningTableHeight: '',
|
||||
applyArcticOptions: [], // 适用车型下拉框
|
||||
@@ -259,6 +284,31 @@ export default {
|
||||
};
|
||||
},
|
||||
methods: {
|
||||
//取消导出
|
||||
cancal() {
|
||||
this.exportModelFlag = false
|
||||
},
|
||||
//确认导出
|
||||
exportExcel() {
|
||||
console.log('293',this.selectedList)
|
||||
const exportURL = interfaceUrl + 'sys/EarlyWarning/exportWarning?' +
|
||||
'&ids=' + this.selectedList.join(',') + '&exportName=' + this.exportName
|
||||
window.open(exportURL)
|
||||
this.$message.success('导出信息成功')
|
||||
this.exportModelFlag = false
|
||||
},
|
||||
exportExcelBtn(){
|
||||
console.log('302',this.selectedList)
|
||||
this.exportName = ''
|
||||
this.exportModelFlag = true
|
||||
},
|
||||
selectChange(alldata){
|
||||
console.log('307',alldata)
|
||||
this.selectedList = []
|
||||
for (let i = 0; i < alldata.length; i++) {
|
||||
this.selectedList.push(alldata[i]['id'])
|
||||
}
|
||||
},
|
||||
// 获取标准预警数据 (type用于区别分页器切换)
|
||||
getEarlyDate() {
|
||||
this.warningTableLoading = true
|
||||
|
||||
@@ -303,7 +303,7 @@
|
||||
<h4>标准法规部人员</h4>
|
||||
<div style="margin-top: 10px;width: 300px;">
|
||||
<el-input v-model="roleForm.startUser" style="display: none;"></el-input>
|
||||
<el-input v-model="roleForm.startUserName" :disabled="true" placeholder="选择标准法规部人员" @click.native="choiceZRR('dockUser', '选择标准法规部人员', roleForm.dockUser)">
|
||||
<el-input v-model="roleForm.startUserName" :disabled="true" placeholder="选择标准法规部人员">
|
||||
</el-input>
|
||||
</div>
|
||||
</el-form-item>
|
||||
@@ -351,7 +351,7 @@
|
||||
<h4>总院技术委员会主任</h4>
|
||||
<div style="margin-top: 10px;width: 300px;">
|
||||
<el-input v-model="roleForm.startUser" style="display: none;"></el-input>
|
||||
<el-input v-model="roleForm.startUserName" :disabled="true" placeholder="选择总院技术委员会主任" @click.native="choiceZRROne('startUser', '选择总院技术委员会主任', roleForm.startUser)">
|
||||
<el-input v-model="roleForm.startUserName" :disabled="true" placeholder="选择总院技术委员会主任">
|
||||
</el-input>
|
||||
</div>
|
||||
</el-form-item>
|
||||
|
||||
@@ -68,7 +68,10 @@
|
||||
<el-form-item class="add-form-item" label="信息来源:" prop="infoSources">
|
||||
<span v-if="infoSourcesLength === 0">{{ '-' }}</span>
|
||||
<span v-for="item in rh_pageData.infoSources" :key="item.id" style="color: #409EFF;" @click="previews(item.id)">
|
||||
{{ item.name }} {{ ';' }}
|
||||
<a v-if="item.name.length > 30">
|
||||
{{ item.name.slice(0,30) + '...' }} {{ ';' }}
|
||||
</a>
|
||||
<a v-else>{{ item.name }} {{ ';' }}</a>
|
||||
</span>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
@@ -256,7 +259,8 @@ export default {
|
||||
taskIds: this.$route.query.taskIds,
|
||||
pId: this.$route.query.prcId,
|
||||
|
||||
infoSourcesLength: ''
|
||||
infoSourcesLength: '',
|
||||
showHover: false
|
||||
}
|
||||
},
|
||||
computed: {
|
||||
|
||||
@@ -68,7 +68,10 @@
|
||||
<el-form-item class="add-form-item" label="信息来源:" prop="infoSources">
|
||||
<span v-if="infoSourcesLength < 1">{{ '-' }}</span>
|
||||
<span v-for="item in rh_pageData.infoSources" :key="item.id" style="color: #409EFF;" @click="previews(item.id)">
|
||||
{{ item.name }} {{ ';' }}
|
||||
<a v-if="item.name.length > 30">
|
||||
{{ item.name.slice(0,30) + '...' }} {{ ';' }}
|
||||
</a>
|
||||
<a v-else>{{ item.name }} {{ ';' }}</a>
|
||||
</span>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
|
||||
@@ -68,7 +68,10 @@
|
||||
<el-form-item class="add-form-item" label="信息来源:" prop="infoSources">
|
||||
<span v-if="infoSourcesLength === 0">{{ '-' }}</span>
|
||||
<span v-for="item in rh_pageData.infoSources" :key="item.id" style="color: #409EFF;" @click="previews(item.id)">
|
||||
{{ item.name }} {{ ';' }}
|
||||
<a v-if="item.name.length > 30">
|
||||
{{ item.name.slice(0,30) + '...' }} {{ ';' }}
|
||||
</a>
|
||||
<a v-else>{{ item.name }} {{ ';' }}</a>
|
||||
</span>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
|
||||
@@ -68,7 +68,10 @@
|
||||
<el-form-item class="add-form-item" label="信息来源:" prop="infoSources">
|
||||
<span v-if="infoSourcesLength === 0">{{ '-' }}</span>
|
||||
<span v-for="item in rh_pageData.infoSources" :key="item.id" style="color: #409EFF;" @click="previews(item.id)">
|
||||
{{ item.name }} {{ ';' }}
|
||||
<a v-if="item.name.length > 30">
|
||||
{{ item.name.slice(0,30) + '...' }} {{ ';' }}
|
||||
</a>
|
||||
<a v-else>{{ item.name }} {{ ';' }}</a>
|
||||
</span>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
|
||||
@@ -68,7 +68,10 @@
|
||||
<el-form-item class="add-form-item" label="信息来源:" prop="infoSources">
|
||||
<span v-if="infoSourcesLength < 1">{{ '-' }}</span>
|
||||
<span v-for="item in rh_pageData.infoSources" :key="item.id" style="color: #409EFF;" @click="previews(item.id)">
|
||||
{{ item.name }} {{ ';'}}
|
||||
<a v-if="item.name.length > 30">
|
||||
{{ item.name.slice(0,30) + '...' }} {{ ';' }}
|
||||
</a>
|
||||
<a v-else>{{ item.name }} {{ ';' }}</a>
|
||||
</span>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
|
||||
@@ -71,7 +71,10 @@
|
||||
<el-form-item class="add-form-item" label="信息来源:" prop="infoSources">
|
||||
<span v-if="infoSourcesLength < 1">{{ '-' }}</span>
|
||||
<span v-for="item in rh_pageData.infoSources" :key="item.id" style="color: #409EFF;" @click="previews(item.id)">
|
||||
{{ item.name }} {{ ';' }}
|
||||
<a v-if="item.name.length > 30">
|
||||
{{ item.name.slice(0,30) + '...' }} {{ ';' }}
|
||||
</a>
|
||||
<a v-else>{{ item.name }} {{ ';' }}</a>
|
||||
</span>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
|
||||
@@ -625,6 +625,8 @@ export default {
|
||||
})
|
||||
}
|
||||
})
|
||||
} else {
|
||||
this.$message.warning('请完成流程信息的人员选择')
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
@@ -645,6 +645,8 @@ export default {
|
||||
this.isSubmit = false
|
||||
})
|
||||
})
|
||||
} else {
|
||||
this.$message.warning('请完成流程信息的人员选择')
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
@@ -61,7 +61,12 @@
|
||||
<el-form-item class="add-form-item" label="上传附件:" prop="uploadFile">
|
||||
<span v-if="uploadFileLength < 1">{{ '-' }}</span>
|
||||
<span v-for="item in ch_pageData.fileTextList" :key="item.id" style="color: #409EFF;" @click="previews(item.id)">
|
||||
{{ item.name }} {{ ';' }}
|
||||
<a v-if="item.name.length > 30">
|
||||
{{ item.name.slice(0,30) + '...' }} {{ ';' }}
|
||||
</a>
|
||||
<a v-else>
|
||||
{{ item.name }} {{ ';' }}
|
||||
</a>
|
||||
</span>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
</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 class="headerTabsItem" :class="active === '3' ? 'active' : ''" @click="handleTabs('3')">流程信息</div>
|
||||
</div>
|
||||
<div class="content" v-show="active === '1'">
|
||||
<div style="flex: auto; overflow: auto;">
|
||||
@@ -61,7 +61,12 @@
|
||||
<el-form-item class="add-form-item" label="上传附件:" prop="uploadFile">
|
||||
<span v-if="uploadFileLength < 1">{{ '-' }}</span>
|
||||
<span v-for="item in ch_pageData.fileTextList" :key="item.id" style="color: #409EFF;" @click="previews(item.id)">
|
||||
{{ item.name }} {{ ';' }}
|
||||
<a v-if="item.name.length > 30">
|
||||
{{ item.name.slice(0,30) + '...' }} {{ ';' }}
|
||||
</a>
|
||||
<a v-else>
|
||||
{{ item.name }} {{ ';' }}
|
||||
</a>
|
||||
</span>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
@@ -352,9 +357,9 @@ export default {
|
||||
this.$nextTick(() => {
|
||||
this.ch_pageData = JSON.parse(JSON.stringify(item)).ch_pageData
|
||||
this.uploadFileLength = this.ch_pageData.fileTextList.length
|
||||
this.rh_pageData.fillDept = this.$store.getters.userInfo.institutionName
|
||||
this.rh_pageData.fillUnit = this.$store.getters.userInfo.upDeptName
|
||||
this.rh_pageData.fillTel = this.$store.getters.userInfo.phone
|
||||
this.ch_pageData.fillDept = this.$store.getters.userInfo.institutionName
|
||||
this.ch_pageData.fillUnit = this.$store.getters.userInfo.upDeptName
|
||||
this.ch_pageData.fillTel = this.$store.getters.userInfo.phone
|
||||
this.ch_pageData.fillPeopleId = this.$store.getters.userInfo.userId
|
||||
this.ch_pageData.fillPeople = this.$store.getters.userInfo.userName
|
||||
this.roleForm = JSON.parse(JSON.stringify(item)).roleList
|
||||
|
||||
@@ -61,7 +61,12 @@
|
||||
<el-form-item class="add-form-item" label="上传附件:" prop="uploadFile">
|
||||
<span v-if="uploadFileLength < 1">{{ '-' }}</span>
|
||||
<span v-for="item in ch_pageData.fileTextList" :key="item.id" style="color: #409EFF;" @click="previews(item.id)">
|
||||
{{ item.name }} {{ ';' }}
|
||||
<a v-if="item.name.length > 30">
|
||||
{{ item.name.slice(0,30) + '...' }} {{ ';' }}
|
||||
</a>
|
||||
<a v-else>
|
||||
{{ item.name }} {{ ';' }}
|
||||
</a>
|
||||
</span>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
|
||||
@@ -61,7 +61,12 @@
|
||||
<el-form-item class="add-form-item" label="上传附件:" prop="uploadFile">
|
||||
<span v-if="uploadFileLength < 1">{{ '-' }}</span>
|
||||
<span v-for="item in ch_pageData.fileTextList" :key="item.id" style="color: #409EFF;" @click="previews(item.id)">
|
||||
{{ item.name }} {{ ';' }}
|
||||
<a v-if="item.name.length > 30">
|
||||
{{ item.name.slice(0,30) + '...' }} {{ ';' }}
|
||||
</a>
|
||||
<a v-else>
|
||||
{{ item.name }} {{ ';' }}
|
||||
</a>
|
||||
</span>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
|
||||
@@ -61,7 +61,12 @@
|
||||
<el-form-item class="add-form-item" label="上传附件:" prop="uploadFile">
|
||||
<span v-if="uploadFileLength < 1">{{ '-' }}</span>
|
||||
<span v-for="item in ch_pageData.fileTextList" :key="item.id" style="color: #409EFF;" @click="previews(item.id)">
|
||||
{{ item.name }} {{ ';'}}
|
||||
<a v-if="item.name.length > 30">
|
||||
{{ item.name.slice(0,30) + '...' }} {{ ';' }}
|
||||
</a>
|
||||
<a v-else>
|
||||
{{ item.name }} {{ ';' }}
|
||||
</a>
|
||||
</span>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
|
||||
@@ -64,7 +64,12 @@
|
||||
<el-form-item class="add-form-item" label="上传附件:" prop="uploadFile">
|
||||
<span v-if="uploadFileLength < 1">{{ '-' }}</span>
|
||||
<span v-for="item in ch_pageData.fileTextList" :key="item.id" style="color: #409EFF;" @click="previews(item.id)">
|
||||
{{ item.name }} {{ ';' }}
|
||||
<a v-if="item.name.length > 30">
|
||||
{{ item.name.slice(0,30) + '...' }} {{ ';' }}
|
||||
</a>
|
||||
<a v-else>
|
||||
{{ item.name }} {{ ';' }}
|
||||
</a>
|
||||
</span>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
|
||||
@@ -171,7 +171,7 @@
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
show-overflow-tooltip
|
||||
v-if="sarType === 'INLAND'"
|
||||
v-if="sarType === 'INLAND' && form.itemsNum1"
|
||||
prop="changePoint"
|
||||
width="150"
|
||||
label="基于上一版本差异"
|
||||
@@ -205,30 +205,31 @@
|
||||
<el-table-column
|
||||
prop="newData"
|
||||
width="150"
|
||||
show-overflow-tooltip
|
||||
label="新车型实施日期"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<div>{{ scope.row.newData ? $moment(scope.row.newData).format('YYYY-MM-DD') : scope.row.newData }}</div>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="onlineData"
|
||||
width="150"
|
||||
show-overflow-tooltip
|
||||
label="在产车型实施日期"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<div>{{ scope.row.onlineData ? $moment(scope.row.onlineData).format('YYYY-MM-DD') : scope.row.onlineData }}</div>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="applyArctic"
|
||||
width="150"
|
||||
show-overflow-tooltip
|
||||
label="适用车型"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
{{ scope.row.applyArctic.toString() }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="unitDeptName"
|
||||
label="责任部门"
|
||||
show-overflow-tooltip
|
||||
width="170"
|
||||
align="center">
|
||||
</el-table-column>
|
||||
|
||||
@@ -171,12 +171,8 @@
|
||||
prop="technicalRequir"
|
||||
width="200"
|
||||
label="核心技术要求"
|
||||
show-overflow-tooltip
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<div class="el-input">
|
||||
<input class="el-input__inner" type="text" v-model.lazy="scope.row.technicalRequir" placeholder="请输入核心技术要求" maxlength="500">
|
||||
</div>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
:disabled="acceptShow"
|
||||
@@ -184,94 +180,80 @@
|
||||
width="150"
|
||||
v-if="form.itemsNum1"
|
||||
label="基于上一版本差异"
|
||||
show-overflow-tooltip
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<div class="el-input">
|
||||
<input :disabled="acceptShow" class="el-input__inner" type="text" v-model.lazy="scope.row.changePoint" placeholder="请输入基于上一版本差异" maxlength="500">
|
||||
</div>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
v-if="sarType === 'FOREIGN' && form.itemsNum1"
|
||||
prop="changePoint"
|
||||
width="150"
|
||||
label="相对于国行标差异点"
|
||||
show-overflow-tooltip
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<div class="el-input">
|
||||
<input :disabled="acceptShow" class="el-input__inner" type="text" v-model.lazy="scope.row.changePoint" placeholder="请输入相对于国行标差异点" maxlength="500" >
|
||||
</div>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="complianceRequir"
|
||||
width="150"
|
||||
label="符合项状态"
|
||||
show-overflow-tooltip
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<My-select :disabled="acceptShow" v-model="scope.row.complianceRequir" :options="fhList"></My-select>
|
||||
{{ scope.row.complianceRequir === '1' ? '符合' : '不符合' }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="complianceState"
|
||||
width="200"
|
||||
label="合规性分析"
|
||||
show-overflow-tooltip
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<div class="el-input">
|
||||
<input :disabled="acceptShow" class="el-input__inner" type="text" v-model.lazy="scope.row.complianceState" placeholder="请输入合规性分析" maxlength="500">
|
||||
</div>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="newData"
|
||||
width="150"
|
||||
width="180"
|
||||
show-overflow-tooltip
|
||||
label="新车型实施日期"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<el-date-picker
|
||||
:disabled="acceptShow"
|
||||
v-model.lazy="scope.row.newData"
|
||||
type="date"
|
||||
placeholder="选择新车型实施日期">
|
||||
</el-date-picker>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="onlineData"
|
||||
width="150"
|
||||
width="180"
|
||||
show-overflow-tooltip
|
||||
label="在产车型实施日期"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<el-date-picker
|
||||
:disabled="acceptShow"
|
||||
v-model.lazy="scope.row.onlineData"
|
||||
type="date"
|
||||
placeholder="选择新车型实施日期">
|
||||
</el-date-picker>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="applyArctic"
|
||||
width="150"
|
||||
width="200"
|
||||
label="适用车型"
|
||||
show-overflow-tooltip
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<My-select :disabled="acceptShow" v-model="scope.row.applyArctic" :options="cxList"></My-select>
|
||||
{{ scope.row.applyArctic.toString() }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="unitDeptName"
|
||||
label="责任部门"
|
||||
width="170"
|
||||
width="200"
|
||||
show-overflow-tooltip
|
||||
align="center">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
label="责任人"
|
||||
width="170"
|
||||
prop="zrUserIdName"
|
||||
show-overflow-tooltip
|
||||
align="center">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
label="操作"
|
||||
width="100"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<el-button class="common-button-primary" size="mini" type="primary" @click="itemEdit(scope.row)">编辑</el-button>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<el-collapse accordion>
|
||||
<el-collapse-item title="回执说明">
|
||||
@@ -410,21 +392,21 @@
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="新车型实施日期" prop="newData" class="add-form-item" >
|
||||
<el-date-picker
|
||||
<custom-date-pick-group
|
||||
class="myDataPick"
|
||||
:config="plForm"
|
||||
v-model="plForm.newData"
|
||||
type="date"
|
||||
placeholder="选择新车型实施日期">
|
||||
</el-date-picker>
|
||||
></custom-date-pick-group>
|
||||
</el-form-item>
|
||||
<el-form-item label="在产车实施日期" prop="onlineData" class="add-form-item" >
|
||||
<el-date-picker
|
||||
<custom-date-pick-group
|
||||
class="myDataPick"
|
||||
:config="plForm"
|
||||
v-model="plForm.onlineData"
|
||||
type="date"
|
||||
placeholder="选择在产车实施日期">
|
||||
</el-date-picker>
|
||||
></custom-date-pick-group>
|
||||
</el-form-item>
|
||||
<el-form-item label="适用车型" prop="applyArctic" class="add-form-item" >
|
||||
<el-select v-model="plForm.applyArctic">
|
||||
<el-select multiple v-model="plForm.applyArctic">
|
||||
<el-option v-for="(item,index) in cxList" :value="item.label" :label="item.label" :key="index"></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
@@ -435,6 +417,75 @@
|
||||
<el-button class="common-button-default" size="mini" icon="el-icon-close" @click="cancleUserInfo">取消</el-button>
|
||||
</div>
|
||||
</el-drawer>
|
||||
<el-drawer
|
||||
title="编辑"
|
||||
:visible.sync="modalshowflag2"
|
||||
:wrapperClosable="false"
|
||||
size="800px">
|
||||
<div class="demo-drawer-content">
|
||||
<el-form :model="editForm" class="label-input-form" ref="plForm" label-width=150>
|
||||
<el-form-item label="核心技术要求" prop="technicalRequir" class="add-form-item" v-if="!form.itemsNum1">
|
||||
<el-input
|
||||
v-model="editForm.technicalRequir"
|
||||
placeholder="请输入核心技术要求"
|
||||
maxlength="500"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="国内标准的差异点" prop="changePoint" class="add-form-item" v-if="sarType !== 'INLAND' && form.itemsNum1">
|
||||
<el-input
|
||||
v-model="editForm.changePoint"
|
||||
placeholder="请输入国内标准的差异点"
|
||||
maxlength="500"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="上一版本差异点" prop="changePoint" class="add-form-item" v-if="sarType === 'INLAND' && form.itemsNum1">
|
||||
<el-input
|
||||
v-model="editForm.changePoint"
|
||||
placeholder="请输入上一版本差异点"
|
||||
maxlength="500"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="符合性要求" prop="complianceRequir" class="add-form-item" >
|
||||
<el-select
|
||||
v-model="editForm.complianceRequir"
|
||||
placeholder="请选择符合性要求">
|
||||
<el-option value="1" label="符合"></el-option>
|
||||
<el-option value="2" label="不符合"></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="合规性分析" prop="complianceState" class="add-form-item" >
|
||||
<el-input
|
||||
v-model="editForm.complianceState"
|
||||
placeholder="请输入合规性分析"
|
||||
maxlength="500"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="新车型实施日期" prop="newData" class="add-form-item" >
|
||||
<custom-date-pick-group
|
||||
class="myDataPick"
|
||||
:config="editForm"
|
||||
v-model="editForm.newData"
|
||||
></custom-date-pick-group>
|
||||
</el-form-item>
|
||||
<el-form-item label="在产车实施日期" prop="onlineData" class="add-form-item" >
|
||||
<custom-date-pick-group
|
||||
class="myDataPick"
|
||||
:config="editForm"
|
||||
v-model="editForm.onlineData"
|
||||
></custom-date-pick-group>
|
||||
</el-form-item>
|
||||
<el-form-item label="适用车型" prop="applyArctic" class="add-form-item" >
|
||||
<el-select multiple v-model="editForm.applyArctic">
|
||||
<el-option v-for="(item,index) in cxList" :value="item.label" :label="item.label" :key="index"></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
</div>
|
||||
<div id="roleFormButton3" class="demo-drawer-footer">
|
||||
<el-button class="common-button-primary" size="mini" icon="el-icon-check" type="primary" @click="saveUserInfo2">确定</el-button>
|
||||
<el-button class="common-button-default" size="mini" icon="el-icon-close" @click="cancleUserInfo2">取消</el-button>
|
||||
</div>
|
||||
</el-drawer>
|
||||
<el-dialog
|
||||
title="查看条款内容"
|
||||
:visible.sync="itermsConditionsFlag"
|
||||
@@ -449,6 +500,7 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import CustomDatePickGroup from '@/components/CustomFormComponents/DatePickerGroup'
|
||||
import ProcessHeader from '../../components/ProcessHeader'
|
||||
import ProcessFooter from '../../components/ProcessFooter'
|
||||
import ProcessTitle from '../../components/ProcessTitle'
|
||||
@@ -459,6 +511,8 @@
|
||||
name: "bzjdStep3",
|
||||
data() {
|
||||
return {
|
||||
modalshowflag2: false,
|
||||
itemId: '',
|
||||
drawerModal: false,
|
||||
//折叠的标志,true为折叠,false为不折叠
|
||||
foldFormFlag: false,
|
||||
@@ -485,6 +539,15 @@
|
||||
onlineData: '', // 在产车实施日期
|
||||
applyArctic: '', // 适用车型
|
||||
},
|
||||
editForm: {
|
||||
technicalRequir: '', // 核心技术要求
|
||||
changePoint: '', // 国内标准的差异点
|
||||
complianceRequir: '1', // 符合性要求
|
||||
complianceState: '', // 合规性分析
|
||||
newData: '', // 新车型实施日期
|
||||
onlineData: '', // 在产车实施日期
|
||||
applyArctic: '', // 适用车型
|
||||
},
|
||||
modalshowflag: false,
|
||||
sarType: '',
|
||||
itemList: [],
|
||||
@@ -510,11 +573,42 @@
|
||||
}
|
||||
},
|
||||
components: {
|
||||
CustomDatePickGroup,
|
||||
ProcessHeader,
|
||||
ProcessFooter,
|
||||
ProcessTitle
|
||||
},
|
||||
methods: {
|
||||
itemEdit (row) {
|
||||
this.itemId = row.id
|
||||
this.modalshowflag2 = true
|
||||
this.editForm = {
|
||||
technicalRequir: row.technicalRequir, // 核心技术要求
|
||||
changePoint: row.changePoint, // 国内标准的差异点
|
||||
complianceRequir: row.complianceRequir || '1', // 符合性要求
|
||||
complianceState: row.complianceState, // 合规性分析
|
||||
newData: row.newData, // 新车型实施日期
|
||||
onlineData: row.onlineData, // 在产车实施日期
|
||||
applyArctic: row.applyArctic, // 适用车型
|
||||
}
|
||||
},
|
||||
saveUserInfo2 () {
|
||||
for( let a = 0; a < this.itemList.length; a++) {
|
||||
if (this.itemList[a].id === this.itemId) {
|
||||
this.itemList[a].technicalRequir = this.editForm.technicalRequir
|
||||
this.itemList[a].changePoint = this.editForm.changePoint
|
||||
this.itemList[a].complianceRequir = this.editForm.complianceRequir
|
||||
this.itemList[a].complianceState = this.editForm.complianceState
|
||||
this.itemList[a].newData = this.editForm.newData
|
||||
this.itemList[a].onlineData = this.editForm.onlineData
|
||||
this.itemList[a].applyArctic = this.editForm.applyArctic
|
||||
}
|
||||
}
|
||||
this.modalshowflag2 = false
|
||||
},
|
||||
cancleUserInfo2 () {
|
||||
this.modalshowflag2 = false
|
||||
},
|
||||
handleTransfer() {
|
||||
this.drawerModal = true
|
||||
},
|
||||
@@ -742,7 +836,7 @@
|
||||
itemList = data.itemList
|
||||
}
|
||||
itemList.forEach(item => {
|
||||
item.unitDeptName = this.$store.getters.userInfo.orgName
|
||||
item.unitDeptName = this.$store.getters.userInfo.institutionName
|
||||
item.onlineData = item.onlineData || ''
|
||||
item.newData = item.newData || ''
|
||||
item.complianceState = item.complianceState || ''
|
||||
@@ -751,8 +845,10 @@
|
||||
item.changePoint = item.changePoint || ''
|
||||
item.technicalRequir = item.technicalRequir || ''
|
||||
item.itemsTitle = item.itermsConditions
|
||||
item.applyArctic = item.applyArctic || ''
|
||||
item.applyArctic = item.applyArctic || []
|
||||
})
|
||||
|
||||
|
||||
this.itemList = itemList
|
||||
this.loading = false
|
||||
}).catch(e => {
|
||||
@@ -784,6 +880,11 @@
|
||||
padding: 0 20px 0;
|
||||
}
|
||||
}
|
||||
.myDataPick {
|
||||
/deep/.el-form-item__content {
|
||||
margin-left: 0px !important;
|
||||
}
|
||||
}
|
||||
.fileClass {
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
@@ -170,7 +170,7 @@
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
show-overflow-tooltip
|
||||
v-if="sarType === 'INLAND'"
|
||||
v-if="sarType === 'INLAND' && form.itemsNum1"
|
||||
prop="changePoint"
|
||||
width="150"
|
||||
label="基于上一版本差异"
|
||||
@@ -203,27 +203,27 @@
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="newData"
|
||||
show-overflow-tooltip
|
||||
width="150"
|
||||
label="新车型实施日期"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<div>{{ scope.row.newData ? $moment(scope.row.newData).format('YYYY-MM-DD') : scope.row.newData }}</div>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="onlineData"
|
||||
show-overflow-tooltip
|
||||
width="150"
|
||||
label="在产车型实施日期"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<div>{{ scope.row.onlineData ? $moment(scope.row.onlineData).format('YYYY-MM-DD') : scope.row.onlineData }}</div>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="applyArctic"
|
||||
width="150"
|
||||
label="适用车型"
|
||||
show-overflow-tooltip
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
{{ scope.row.applyArctic.toString() }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="unitDeptName"
|
||||
|
||||
@@ -170,7 +170,7 @@
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
show-overflow-tooltip
|
||||
v-if="sarType === 'INLAND'"
|
||||
v-if="sarType === 'INLAND' && form.itemsNum1"
|
||||
prop="changePoint"
|
||||
width="150"
|
||||
label="基于上一版本差异"
|
||||
@@ -202,28 +202,28 @@
|
||||
align="center">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
show-overflow-tooltip
|
||||
prop="newData"
|
||||
width="150"
|
||||
label="新车型实施日期"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<div>{{ scope.row.newData ? $moment(scope.row.newData).format('YYYY-MM-DD') : scope.row.newData }}</div>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
show-overflow-tooltip
|
||||
prop="onlineData"
|
||||
width="150"
|
||||
label="在产车型实施日期"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<div>{{ scope.row.onlineData ? $moment(scope.row.onlineData).format('YYYY-MM-DD') : scope.row.onlineData }}</div>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="applyArctic"
|
||||
width="150"
|
||||
label="适用车型"
|
||||
show-overflow-tooltip
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
{{ scope.row.applyArctic.toString() }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="unitDeptName"
|
||||
|
||||
@@ -171,7 +171,7 @@
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
show-overflow-tooltip
|
||||
v-if="sarType === 'INLAND'"
|
||||
v-if="sarType === 'INLAND' && form.itemsNum1"
|
||||
prop="changePoint"
|
||||
width="150"
|
||||
label="基于上一版本差异"
|
||||
@@ -205,26 +205,26 @@
|
||||
<el-table-column
|
||||
prop="newData"
|
||||
width="150"
|
||||
show-overflow-tooltip
|
||||
label="新车型实施日期"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<div>{{ scope.row.newData ? $moment(scope.row.newData).format('YYYY-MM-DD') : scope.row.newData }}</div>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="onlineData"
|
||||
width="150"
|
||||
show-overflow-tooltip
|
||||
label="在产车型实施日期"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<div>{{ scope.row.onlineData ? $moment(scope.row.onlineData).format('YYYY-MM-DD') : scope.row.onlineData }}</div>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="applyArctic"
|
||||
width="150"
|
||||
label="适用车型"
|
||||
show-overflow-tooltip
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
{{ scope.row.applyArctic.toString() }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="unitDeptName"
|
||||
|
||||
@@ -134,18 +134,12 @@
|
||||
prop="XCXSSRQ"
|
||||
align="center"
|
||||
label="新车型实施日期">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.XCXSSRQ ? $moment(scope.row.XCXSSRQ).format("YYYY-MM-DD") : "" }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
show-overflow-tooltip
|
||||
prop="ZCCSSRQ"
|
||||
align="center"
|
||||
label="在产车实施日期">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.ZCCSSRQ ? $moment(scope.row.ZCCSSRQ).format("YYYY-MM-DD") : "" }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
show-overflow-tooltip
|
||||
@@ -645,18 +639,12 @@
|
||||
prop="XCXSSRQ"
|
||||
align="center"
|
||||
label="新车型实施日期">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.XCXSSRQ ? $moment(scope.row.XCXSSRQ).format("YYYY-MM-DD") : "" }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
show-overflow-tooltip
|
||||
prop="ZCCSSRQ"
|
||||
align="center"
|
||||
label="在产车实施日期">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.ZCCSSRQ ? $moment(scope.row.ZCCSSRQ).format("YYYY-MM-DD") : "" }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
show-overflow-tooltip
|
||||
@@ -1052,7 +1040,7 @@ export default {
|
||||
this.getStandData();
|
||||
},
|
||||
getStandData() {
|
||||
this.$http.get("sarStandardsInfo/sar-standards-info/getSarStandardsInfoPage", {
|
||||
this.$http.get("sarStandardsInfo/sar-standards-info/getSarStandardsInfoPageByWk1", {
|
||||
standType: this.standardSearch.standType,
|
||||
standNumber: this.standardSearch.standNumber,
|
||||
page: this.pageNo,
|
||||
@@ -1062,9 +1050,9 @@ export default {
|
||||
}, res => {
|
||||
this.standardData = res.data.list;
|
||||
this.standardData.forEach(item => {
|
||||
this.$set(item, "ZCCSSRQ", item.attrInfoMap.ZCCSSRQ);
|
||||
this.$set(item, "XCXSSRQ", item.attrInfoMap.XCXSSRQ);
|
||||
});
|
||||
this.$set(item, "ZCCSSRQ", item.zccssrq);
|
||||
this.$set(item, "XCXSSRQ", item.xcxssrq);
|
||||
})
|
||||
this.totalNo = res.data.count;
|
||||
}, e => {
|
||||
});
|
||||
|
||||
@@ -134,18 +134,12 @@
|
||||
prop="XCXSSRQ"
|
||||
align="center"
|
||||
label="新车型实施日期">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.XCXSSRQ ? $moment(scope.row.XCXSSRQ).format("YYYY-MM-DD") : "" }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
show-overflow-tooltip
|
||||
prop="ZCCSSRQ"
|
||||
align="center"
|
||||
label="在产车实施日期">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.ZCCSSRQ ? $moment(scope.row.ZCCSSRQ).format("YYYY-MM-DD") : "" }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
show-overflow-tooltip
|
||||
@@ -615,18 +609,12 @@
|
||||
prop="XCXSSRQ"
|
||||
align="center"
|
||||
label="新车型实施日期">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.XCXSSRQ ? $moment(scope.row.XCXSSRQ).format("YYYY-MM-DD") : "" }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
show-overflow-tooltip
|
||||
prop="ZCCSSRQ"
|
||||
align="center"
|
||||
label="在产车实施日期">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.ZCCSSRQ ? $moment(scope.row.ZCCSSRQ).format("YYYY-MM-DD") : "" }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
show-overflow-tooltip
|
||||
@@ -984,7 +972,7 @@ export default {
|
||||
},
|
||||
//查询项目下的标准
|
||||
getStandData() {
|
||||
this.$http.get("sarStandardsInfo/sar-standards-info/getSarStandardsInfoPage", {
|
||||
this.$http.get("sarStandardsInfo/sar-standards-info/getSarStandardsInfoPageByWk1", {
|
||||
standType: this.standardSearch.standType,
|
||||
standNumber: this.standardSearch.standNumber,
|
||||
page: this.pageNo,
|
||||
@@ -994,13 +982,8 @@ export default {
|
||||
}, res => {
|
||||
this.standardData = res.data.list;
|
||||
this.standardData.forEach(item => {
|
||||
if (item.attrInfoMap === null) {
|
||||
this.$set(item, "ZCCSSRQ", '');
|
||||
this.$set(item, "XCXSSRQ", '');
|
||||
} else {
|
||||
this.$set(item, "ZCCSSRQ", item.attrInfoMap.ZCCSSRQ);
|
||||
this.$set(item, "XCXSSRQ", item.attrInfoMap.XCXSSRQ);
|
||||
}
|
||||
this.$set(item, "ZCCSSRQ", item.zccssrq);
|
||||
this.$set(item, "XCXSSRQ", item.xcxssrq);
|
||||
})
|
||||
this.totalNo = res.data.count;
|
||||
}, e => {
|
||||
|
||||
@@ -97,12 +97,24 @@
|
||||
</el-date-picker>
|
||||
</el-form-item>
|
||||
<el-form-item label="起草责任单位" prop="unit" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
readonly
|
||||
v-model="qbfsForm.unit"
|
||||
placeholder="请输入起草责任单位"
|
||||
clearable
|
||||
></el-input>
|
||||
<div v-if="qbfsForm.unit.length > 0">
|
||||
<el-tooltip class="item" effect="dark" :content="qbfsForm.unit" placement="top-start">
|
||||
<el-input
|
||||
readonly
|
||||
v-model="qbfsForm.unit"
|
||||
placeholder="请输入起草责任单位"
|
||||
clearable
|
||||
></el-input>
|
||||
</el-tooltip>
|
||||
</div>
|
||||
<div v-else>
|
||||
<el-input
|
||||
readonly
|
||||
v-model="qbfsForm.unit"
|
||||
placeholder="请输入起草责任单位"
|
||||
clearable
|
||||
></el-input>
|
||||
</div>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
|
||||
@@ -105,12 +105,24 @@
|
||||
</el-date-picker>
|
||||
</el-form-item>
|
||||
<el-form-item label="起草责任单位" prop="unit" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
readonly
|
||||
v-model="qbfsForm.unit"
|
||||
placeholder="请输入起草责任单位"
|
||||
clearable
|
||||
></el-input>
|
||||
<div v-if="qbfsForm.unit.length > 0">
|
||||
<el-tooltip class="item" effect="dark" :content="qbfsForm.unit" placement="top-start">
|
||||
<el-input
|
||||
readonly
|
||||
v-model="qbfsForm.unit"
|
||||
placeholder="请输入起草责任单位"
|
||||
clearable
|
||||
></el-input>
|
||||
</el-tooltip>
|
||||
</div>
|
||||
<div v-else>
|
||||
<el-input
|
||||
readonly
|
||||
v-model="qbfsForm.unit"
|
||||
placeholder="请输入起草责任单位"
|
||||
clearable
|
||||
></el-input>
|
||||
</div>
|
||||
</el-form-item>
|
||||
<el-form-item label="延期后标准发布时间" prop="yqReleaseTime" class="add-form-item form-item-disabled">
|
||||
<el-date-picker
|
||||
|
||||
@@ -64,33 +64,33 @@
|
||||
placeholder="请选择计划标准发布时间">
|
||||
</el-date-picker>
|
||||
</el-form-item>
|
||||
<el-form-item label="起草责任单位" style="width: 100%; margin-right:10px" class="add-form-item" prop="unit" >
|
||||
<div style="display: flex;justify-content: space-between;align-items: center;">
|
||||
<el-input
|
||||
clearable
|
||||
v-model="qbfsForm.unit"
|
||||
placeholder="选择或输入起草单位">
|
||||
</el-input>
|
||||
<div>
|
||||
<el-button
|
||||
size="mini"
|
||||
type="primary"
|
||||
@click="QCDWClick"
|
||||
class="common-button-primary">手动查找</el-button>
|
||||
</div>
|
||||
</div>
|
||||
</el-form-item>
|
||||
<!-- <el-form-item label="起草责任单位" style="width: 100%; margin-right:10px" prop="unit" class="add-form-item form-item-disabled">-->
|
||||
<!-- <el-select v-model="qbfsForm.unit" filterable multiple clearable>-->
|
||||
<!-- <el-option-->
|
||||
<!-- v-for="item in qcdwOptions"-->
|
||||
<!-- placeholder="请选择起草责任单位"-->
|
||||
<!-- :key="item.value"-->
|
||||
<!-- :value="item.label"-->
|
||||
<!-- :label="item.label"-->
|
||||
<!-- ></el-option>-->
|
||||
<!-- </el-select>-->
|
||||
<!-- <el-form-item label="起草责任单位" style="width: 100%; margin-right:10px" class="add-form-item" prop="unit" >-->
|
||||
<!-- <div style="display: flex;justify-content: space-between;align-items: center;">-->
|
||||
<!-- <el-input-->
|
||||
<!-- clearable-->
|
||||
<!-- v-model="qbfsForm.unit"-->
|
||||
<!-- placeholder="选择或输入起草单位">-->
|
||||
<!-- </el-input>-->
|
||||
<!-- <div>-->
|
||||
<!-- <el-button-->
|
||||
<!-- size="mini"-->
|
||||
<!-- type="primary"-->
|
||||
<!-- @click="QCDWClick"-->
|
||||
<!-- class="common-button-primary">手动查找</el-button>-->
|
||||
<!-- </div>-->
|
||||
<!-- </div>-->
|
||||
<!-- </el-form-item>-->
|
||||
<el-form-item label="起草责任单位" style="width: 100%; margin-right:10px" prop="unit" class="add-form-item form-item-disabled">
|
||||
<el-select v-model="qbfsForm.unit" filterable multiple clearable>
|
||||
<el-option
|
||||
v-for="item in qcdwOptions"
|
||||
placeholder="请选择起草责任单位"
|
||||
:key="item.value"
|
||||
:value="item.label"
|
||||
:label="item.label"
|
||||
></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="新增原因" style="width: 100%; margin-right:10px" prop="newReason" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
type="textarea"
|
||||
@@ -185,7 +185,7 @@ export default {
|
||||
},
|
||||
qbfsFormRules: {
|
||||
unit: [
|
||||
{required: true, message: '请输入单位', trigger: 'blur'},
|
||||
{required: true, message: '请选择起草单位', trigger: 'change'},
|
||||
],
|
||||
esName: [
|
||||
{required: true, message: '请输入企标名称', trigger: 'blur'},
|
||||
|
||||
@@ -81,22 +81,33 @@
|
||||
placeholder="请选择初稿完成时间">
|
||||
</el-date-picker>
|
||||
</el-form-item>
|
||||
<el-form-item label="起草责任单位" style="width: 100%; margin-right:10px" class="add-form-item" prop="unit" >
|
||||
<div style="display: flex;justify-content: space-between;align-items: center;">
|
||||
<el-input
|
||||
clearable
|
||||
v-model="qbfsForm.unit"
|
||||
placeholder="选择或输入起草单位">
|
||||
</el-input>
|
||||
<div>
|
||||
<el-button
|
||||
size="mini"
|
||||
type="primary"
|
||||
@click="QCDWClick"
|
||||
class="common-button-primary">手动查找</el-button>
|
||||
</div>
|
||||
</div>
|
||||
<el-form-item label="起草责任单位" style="width: 100%; margin-right:10px" prop="unit" class="add-form-item form-item-disabled">
|
||||
<el-select v-model="qbfsForm.unit" filterable multiple clearable>
|
||||
<el-option
|
||||
v-for="item in qcdwOptions"
|
||||
placeholder="请选择起草责任单位"
|
||||
:key="item.value"
|
||||
:value="item.label"
|
||||
:label="item.label"
|
||||
></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<!-- <el-form-item label="起草责任单位" style="width: 100%; margin-right:10px" class="add-form-item" prop="unit" >-->
|
||||
<!-- <div style="display: flex;justify-content: space-between;align-items: center;">-->
|
||||
<!-- <el-input-->
|
||||
<!-- clearable-->
|
||||
<!-- v-model="qbfsForm.unit"-->
|
||||
<!-- placeholder="选择或输入起草单位">-->
|
||||
<!-- </el-input>-->
|
||||
<!-- <div>-->
|
||||
<!-- <el-button-->
|
||||
<!-- size="mini"-->
|
||||
<!-- type="primary"-->
|
||||
<!-- @click="QCDWClick"-->
|
||||
<!-- class="common-button-primary">手动查找</el-button>-->
|
||||
<!-- </div>-->
|
||||
<!-- </div>-->
|
||||
<!-- </el-form-item>-->
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item prop="planStatus" label="计划状态" style="width: 100%; margin-right:10px" class="add-form-item form-item-disabled">
|
||||
@@ -340,7 +351,7 @@ export default {
|
||||
{required: true, message: '请选择合并计划企标名称', trigger: 'blur'},
|
||||
],
|
||||
unit: [
|
||||
{required: true, message: '请输入单位', trigger: 'blur'},
|
||||
{required: true, message: '请选择起草单位', trigger: 'change'},
|
||||
],
|
||||
esName: [
|
||||
{required: true, message: '请输入企标名称', trigger: 'blur'},
|
||||
|
||||
@@ -96,12 +96,24 @@
|
||||
</el-date-picker>
|
||||
</el-form-item>
|
||||
<el-form-item label="起草责任单位" prop="unit" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
readonly
|
||||
v-model="qbfsForm.unit"
|
||||
placeholder="请输入起草责任单位"
|
||||
clearable
|
||||
></el-input>
|
||||
<div v-if="qbfsForm.unit.length > 0">
|
||||
<el-tooltip class="item" effect="dark" :content="qbfsForm.unit" placement="top-start">
|
||||
<el-input
|
||||
readonly
|
||||
v-model="qbfsForm.unit"
|
||||
placeholder="请输入起草责任单位"
|
||||
clearable
|
||||
></el-input>
|
||||
</el-tooltip>
|
||||
</div>
|
||||
<div v-else>
|
||||
<el-input
|
||||
readonly
|
||||
v-model="qbfsForm.unit"
|
||||
placeholder="请输入起草责任单位"
|
||||
clearable
|
||||
></el-input>
|
||||
</div>
|
||||
</el-form-item>
|
||||
<el-form-item label="更名原因" prop="renameReason" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
|
||||
@@ -367,17 +367,11 @@
|
||||
<el-table-column
|
||||
prop="xcxssrqgj"
|
||||
label="新车型实施日期">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.xcxssrqgj ? $moment(scope.row.xcxssrqgj).format("YYYY-MM-DD") : "" }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
show-overflow-tooltip
|
||||
prop="zccssrqgj"
|
||||
label="在产车实施日期">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.zccssrqgj ? $moment(scope.row.zccssrqgj).format("YYYY-MM-DD") : "" }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
show-overflow-tooltip
|
||||
|
||||
@@ -370,17 +370,11 @@
|
||||
<el-table-column
|
||||
prop="xcxssrqgj"
|
||||
label="新车型实施日期">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.xcxssrqgj ? $moment(scope.row.xcxssrqgj).format("YYYY-MM-DD") : "" }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
show-overflow-tooltip
|
||||
prop="zccssrqgj"
|
||||
label="在产车实施日期">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.zccssrqgj ? $moment(scope.row.zccssrqgj).format("YYYY-MM-DD") : "" }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
show-overflow-tooltip
|
||||
|
||||
@@ -866,7 +866,7 @@ export default {
|
||||
saveBatchEditForm() {
|
||||
this.dataList.forEach(item => {
|
||||
this.selectList.forEach(items => {
|
||||
if (item.id === items) {
|
||||
if (item.itemNum === items.itemNum) {
|
||||
item.complianceReasons = this.batchEditForm.complianceReasons;
|
||||
//不合规
|
||||
item.noCompliance = this.batchEditForm.noCompliance;
|
||||
@@ -884,10 +884,10 @@ export default {
|
||||
},
|
||||
//标准表格选择框改变
|
||||
selectStandChange(data) {
|
||||
this.selectList = [];
|
||||
for (let i = 0; i < data.length; i++) {
|
||||
this.selectList.push(data[i].id);
|
||||
}
|
||||
this.selectList = data;
|
||||
// for (let i = 0; i < data.length; i++) {
|
||||
// this.selectList.push(data[i].id);
|
||||
// }
|
||||
},
|
||||
selectThree() {
|
||||
|
||||
|
||||
@@ -118,18 +118,12 @@
|
||||
align="center"
|
||||
sortable
|
||||
label="标准实施日期">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.ssrq ? $moment(scope.row.ssrq).format("YYYY-MM-DD") : "" }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="xcxssrq"
|
||||
width="190px"
|
||||
align="center"
|
||||
label="新车型实施日期">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.xcxssrq ? $moment(scope.row.xcxssrq).format("YYYY-MM-DD") : "" }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="zccssrq"
|
||||
@@ -137,9 +131,6 @@
|
||||
sortable
|
||||
width="190px"
|
||||
label="在产车实施日期">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.zccssrq ? $moment(scope.row.zccssrq).format("YYYY-MM-DD") : "" }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="zrbm"
|
||||
|
||||
@@ -128,18 +128,12 @@
|
||||
align="center"
|
||||
sortable
|
||||
label="标准实施日期">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.ssrq ? $moment(scope.row.ssrq).format("YYYY-MM-DD") : "" }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="xcxssrq"
|
||||
width="190px"
|
||||
align="center"
|
||||
label="新车型实施日期">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.xcxssrq ? $moment(scope.row.xcxssrq).format("YYYY-MM-DD") : "" }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="zccssrq"
|
||||
@@ -147,9 +141,6 @@
|
||||
sortable
|
||||
width="190px"
|
||||
label="在产车实施日期">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.zccssrq ? $moment(scope.row.zccssrq).format("YYYY-MM-DD") : "" }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="zrbm"
|
||||
|
||||
@@ -102,18 +102,12 @@
|
||||
align="center"
|
||||
sortable
|
||||
label="标准实施日期">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.ssrq ? $moment(scope.row.ssrq).format("YYYY-MM-DD") : "" }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="xcxssrq"
|
||||
width="190px"
|
||||
align="center"
|
||||
label="新车型实施日期">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.xcxssrq ? $moment(scope.row.xcxssrq).format("YYYY-MM-DD") : "" }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="zccssrq"
|
||||
@@ -121,9 +115,6 @@
|
||||
sortable
|
||||
width="190px"
|
||||
label="在产车实施日期">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.zccssrq ? $moment(scope.row.zccssrq).format("YYYY-MM-DD") : "" }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="zrbm"
|
||||
|
||||
@@ -115,27 +115,18 @@
|
||||
width="190px"
|
||||
align="center"
|
||||
label="标准实施日期">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.ssrq ? scope.row.ssrq.substring(0, 10) : '-' }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="xcxssrq"
|
||||
width="190px"
|
||||
align="center"
|
||||
label="新车型实施日期">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.xcxssrq ? scope.row.xcxssrq.substring(0, 10) : '-' }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="zccssrq"
|
||||
align="center"
|
||||
width="190px"
|
||||
label="在产车实施日期">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.zccssrq ? scope.row.zccssrq.substring(0, 10) : '-' }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="zrbm"
|
||||
@@ -311,6 +302,7 @@
|
||||
width="55"
|
||||
align="center">
|
||||
</el-table-column>
|
||||
|
||||
<div v-if="handleSelectForm.dataSource === 'INLAND'">
|
||||
<el-table-column
|
||||
label="标准号"
|
||||
@@ -357,7 +349,7 @@
|
||||
<template slot-scope="scope">
|
||||
<!-- {{ formatIssueDate(scope.row.putTime) }}-->
|
||||
<span v-if="textStatusMap[scope.row.textStatus] === '废止' || textStatusMap[scope.row.textStatus] === '被代替'" style="color: #F56C6C">{{ scope.row.SSRQ ? scope.row.SSRQ.substring(0, 10) : '-' }}</span>
|
||||
<span v-else>{{ scope.row.ssrq ? scope.row.ssrq.substring(0, 10) : '-' }}</span>
|
||||
<span v-else>{{ scope.row.ssrq }}</span>
|
||||
|
||||
</template>
|
||||
</el-table-column>
|
||||
@@ -368,7 +360,7 @@
|
||||
label="新车型实施日期">
|
||||
<template slot-scope="scope">
|
||||
<span v-if="textStatusMap[scope.row.textStatus] === '废止' || textStatusMap[scope.row.textStatus] === '被代替'" style="color: #F56C6C">{{ scope.row.XCXSSRQ ? scope.row.XCXSSRQ.substring(0, 10) : '-' }}</span>
|
||||
<span v-else>{{ scope.row.xcxssrq ? scope.row.xcxssrq.substring(0, 10) : '-' }}</span>
|
||||
<span v-else>{{ scope.row.xcxssrq }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
@@ -377,7 +369,7 @@
|
||||
label="在产车实施日期">
|
||||
<template slot-scope="scope">
|
||||
<span v-if="textStatusMap[scope.row.textStatus] === '废止' || textStatusMap[scope.row.textStatus] === '被代替'" style="color: #F56C6C">{{ scope.row.ZCCSSRQ ? scope.row.ZCCSSRQ.substring(0, 10) : '-' }}</span>
|
||||
<span v-else>{{ scope.row.zccssrq ? scope.row.zccssrq.substring(0, 10) : '-' }}</span>
|
||||
<span v-else>{{ scope.row.zccssrq }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
@@ -459,12 +451,12 @@
|
||||
<template slot-scope="scope">
|
||||
<!-- {{ formatIssueDate(scope.row.putTime) }}-->
|
||||
<span v-if="textStatusMap[scope.row.textStatus] === '废止' || textStatusMap[scope.row.textStatus] === '被代替'" style="color: #F56C6C">{{
|
||||
scope.row.ssrq ? scope.row.ssrq.substring(0, 10) : '-'
|
||||
scope.row.ssrq
|
||||
}}</span>
|
||||
<span v-else-if="textStatusMap[scope.row.textStatus] === '——' " style="color: #409EFF">{{
|
||||
scope.row.ssrq ? scope.row.ssrq.substring(0, 10) : '-'
|
||||
scope.row.ssrq
|
||||
}}</span>
|
||||
<span v-else style="color: #333333">{{ scope.row.ssrq ? scope.row.ssrq.substring(0, 10) : '-' }}</span>
|
||||
<span v-else style="color: #333333">{{ scope.row.ssrq }}</span>
|
||||
|
||||
</template>
|
||||
</el-table-column>
|
||||
@@ -474,13 +466,13 @@
|
||||
label="新车型实施日期">
|
||||
<template slot-scope="scope">
|
||||
<span v-if="textStatusMap[scope.row.textStatus] === '废止' || textStatusMap[scope.row.textStatus] === '被代替'" style="color: #F56C6C">{{
|
||||
scope.row.xcxssrq ? scope.row.xcxssrq.substring(0, 10) : '-'
|
||||
scope.row.xcxssrq
|
||||
}}</span>
|
||||
<span v-else-if="textStatusMap[scope.row.textStatus] === '——' " style="color: #409EFF">{{
|
||||
scope.row.xcxssrq ? scope.row.xcxssrq.substring(0, 10) : '-'
|
||||
scope.row.xcxssrq
|
||||
}}</span>
|
||||
<span v-else style="color: #333333">{{
|
||||
scope.row.xcxssrq ? scope.row.xcxssrq.substring(0, 10) : '-'
|
||||
scope.row.xcxssrq
|
||||
}}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
@@ -490,13 +482,13 @@
|
||||
label="在产车实施日期">
|
||||
<template slot-scope="scope">
|
||||
<span v-if="textStatusMap[scope.row.textStatus] === '废止' || textStatusMap[scope.row.textStatus] === '被代替'" style="color: #F56C6C">{{
|
||||
scope.row.zccssrq ? scope.row.zccssrq.substring(0, 10) : '-'
|
||||
scope.row.zccssrq
|
||||
}}</span>
|
||||
<span v-else-if="textStatusMap[scope.row.textStatus] === '——' " style="color: #409EFF">{{
|
||||
scope.row.zccssrq ? scope.row.zccssrq.substring(0, 10) : '-'
|
||||
scope.row.zccssrq
|
||||
}}</span>
|
||||
<span v-else style="color: #333333">{{
|
||||
scope.row.zccssrq ? scope.row.zccssrq.substring(0, 10) : '-'
|
||||
scope.row.zccssrq
|
||||
}}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
@@ -563,9 +555,9 @@
|
||||
width="120"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<span v-if="scope.row.standStatusShow === '作废'" style="color: #F56C6C">{{scope.row.issueTime ? scope.row.issueTime.slice(0, 10) : ''}}</span>
|
||||
<span v-if="scope.row.standStatusShow === '参考' " style="color: #E6A23C">{{scope.row.issueTime ? scope.row.issueTime.slice(0, 10) : ''}}</span>
|
||||
<span v-if="scope.row.standStatusShow !== '作废' && scope.row.standStatusShow !== '参考'">{{scope.row.issueTime ? scope.row.issueTime.slice(0, 10) : ''}}</span>
|
||||
<span v-if="scope.row.standStatusShow === '作废'" style="color: #F56C6C">{{scope.row.issueTime}}</span>
|
||||
<span v-if="scope.row.standStatusShow === '参考' " style="color: #E6A23C">{{scope.row.issueTime}}</span>
|
||||
<span v-if="scope.row.standStatusShow !== '作废' && scope.row.standStatusShow !== '参考'">{{scope.row.issueTime}}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
@@ -574,9 +566,9 @@
|
||||
width="120"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<span v-if="scope.row.standStatusShow === '作废'" style="color: #F56C6C">{{scope.row.putTime ? scope.row.putTime.slice(0, 10) : ''}}</span>
|
||||
<span v-if="scope.row.standStatusShow === '参考'" style="color: #E6A23C">{{scope.row.putTime ? scope.row.putTime.slice(0, 10) : ''}}</span>
|
||||
<span v-if="scope.row.standStatusShow !== '作废' && scope.row.standStatusShow !== '参考'">{{scope.row.putTime ? scope.row.putTime.slice(0, 10) : ''}}</span>
|
||||
<span v-if="scope.row.standStatusShow === '作废'" style="color: #F56C6C">{{scope.row.putTime}}</span>
|
||||
<span v-if="scope.row.standStatusShow === '参考'" style="color: #E6A23C">{{scope.row.putTime}}</span>
|
||||
<span v-if="scope.row.standStatusShow !== '作废' && scope.row.standStatusShow !== '参考'">{{scope.row.putTime}}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
@@ -599,6 +591,7 @@
|
||||
</template>
|
||||
</el-table-column>
|
||||
</div>
|
||||
|
||||
</el-table>
|
||||
<!--分页-->
|
||||
<pagination
|
||||
@@ -874,6 +867,7 @@ export default {
|
||||
},
|
||||
//动态表单读取
|
||||
getFormFieldList(item) {
|
||||
console.log(item);
|
||||
this.$nextTick(() => {
|
||||
if(item.form === undefined){
|
||||
this.qdform = JSON.parse(JSON.stringify(item));
|
||||
@@ -918,6 +912,8 @@ export default {
|
||||
if(item.zrbm === '[]'){
|
||||
item.zrbm = ''
|
||||
}
|
||||
this.$set(item, 'zccssrq', item.zccssrqgj)
|
||||
this.$set(item, 'xcxssrq', item.xcxssrqgj)
|
||||
})
|
||||
});
|
||||
},
|
||||
|
||||
@@ -107,27 +107,18 @@
|
||||
width="190px"
|
||||
align="center"
|
||||
label="标准实施日期">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.ssrq ? scope.row.ssrq.substring(0, 10) : '-' }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="xcxssrq"
|
||||
width="190px"
|
||||
align="center"
|
||||
label="新车型实施日期">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.xcxssrq ? scope.row.xcxssrq.substring(0, 10) : '-' }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="zccssrq"
|
||||
align="center"
|
||||
width="190px"
|
||||
label="在产车实施日期">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.zccssrq ? scope.row.zccssrq.substring(0, 10) : '-' }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="zrbm"
|
||||
@@ -284,14 +275,6 @@
|
||||
clearable
|
||||
:maxlength="100"></el-input>
|
||||
</el-form-item>
|
||||
<!-- <el-form-item label="标准名称/政策名称" class="search-item">-->
|
||||
<!-- <el-input-->
|
||||
<!-- v-model="handleSelectForm.lawName"-->
|
||||
<!-- @change="lawNameSearch"-->
|
||||
<!-- placeholder="根据标准名称/政策名称查找"-->
|
||||
<!-- clearable-->
|
||||
<!-- :maxlength="100"></el-input>-->
|
||||
<!-- </el-form-item>-->
|
||||
<el-form-item class="search-item btn-box">
|
||||
<el-button
|
||||
size="small"
|
||||
@@ -378,7 +361,7 @@
|
||||
<template slot-scope="scope">
|
||||
<!-- {{ formatIssueDate(scope.row.putTime) }}-->
|
||||
<span v-if="textStatusMap[scope.row.textStatus] === '废止' || textStatusMap[scope.row.textStatus] === '被代替'" style="color: #F56C6C">{{ scope.row.SSRQ ? scope.row.SSRQ.substring(0, 10) : '-' }}</span>
|
||||
<span v-else>{{ scope.row.ssrq ? scope.row.ssrq.substring(0, 10) : '-' }}</span>
|
||||
<span v-else>{{ scope.row.ssrq }}</span>
|
||||
|
||||
</template>
|
||||
</el-table-column>
|
||||
@@ -389,7 +372,7 @@
|
||||
label="新车型实施日期">
|
||||
<template slot-scope="scope">
|
||||
<span v-if="textStatusMap[scope.row.textStatus] === '废止' || textStatusMap[scope.row.textStatus] === '被代替'" style="color: #F56C6C">{{ scope.row.XCXSSRQ ? scope.row.XCXSSRQ.substring(0, 10) : '-' }}</span>
|
||||
<span v-else>{{ scope.row.xcxssrq ? scope.row.xcxssrq.substring(0, 10) : '-' }}</span>
|
||||
<span v-else>{{ scope.row.xcxssrq }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
@@ -398,7 +381,7 @@
|
||||
label="在产车实施日期">
|
||||
<template slot-scope="scope">
|
||||
<span v-if="textStatusMap[scope.row.textStatus] === '废止' || textStatusMap[scope.row.textStatus] === '被代替'" style="color: #F56C6C">{{ scope.row.ZCCSSRQ ? scope.row.ZCCSSRQ.substring(0, 10) : '-' }}</span>
|
||||
<span v-else>{{ scope.row.zccssrq ? scope.row.zccssrq.substring(0, 10) : '-' }}</span>
|
||||
<span v-else>{{ scope.row.zccssrq }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
@@ -480,12 +463,12 @@
|
||||
<template slot-scope="scope">
|
||||
<!-- {{ formatIssueDate(scope.row.putTime) }}-->
|
||||
<span v-if="textStatusMap[scope.row.textStatus] === '废止' || textStatusMap[scope.row.textStatus] === '被代替'" style="color: #F56C6C">{{
|
||||
scope.row.ssrq ? scope.row.ssrq.substring(0, 10) : '-'
|
||||
scope.row.ssrq
|
||||
}}</span>
|
||||
<span v-else-if="textStatusMap[scope.row.textStatus] === '——' " style="color: #409EFF">{{
|
||||
scope.row.ssrq ? scope.row.ssrq.substring(0, 10) : '-'
|
||||
scope.row.ssrq
|
||||
}}</span>
|
||||
<span v-else style="color: #333333">{{ scope.row.ssrq ? scope.row.ssrq.substring(0, 10) : '-' }}</span>
|
||||
<span v-else style="color: #333333">{{ scope.row.ssrq }}</span>
|
||||
|
||||
</template>
|
||||
</el-table-column>
|
||||
@@ -495,13 +478,13 @@
|
||||
label="新车型实施日期">
|
||||
<template slot-scope="scope">
|
||||
<span v-if="textStatusMap[scope.row.textStatus] === '废止' || textStatusMap[scope.row.textStatus] === '被代替'" style="color: #F56C6C">{{
|
||||
scope.row.xcxssrq ? scope.row.xcxssrq.substring(0, 10) : '-'
|
||||
scope.row.xcxssrq
|
||||
}}</span>
|
||||
<span v-else-if="textStatusMap[scope.row.textStatus] === '——' " style="color: #409EFF">{{
|
||||
scope.row.xcxssrq ? scope.row.xcxssrq.substring(0, 10) : '-'
|
||||
scope.row.xcxssrq
|
||||
}}</span>
|
||||
<span v-else style="color: #333333">{{
|
||||
scope.row.xcxssrq ? scope.row.xcxssrq.substring(0, 10) : '-'
|
||||
scope.row.xcxssrq
|
||||
}}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
@@ -511,13 +494,13 @@
|
||||
label="在产车实施日期">
|
||||
<template slot-scope="scope">
|
||||
<span v-if="textStatusMap[scope.row.textStatus] === '废止' || textStatusMap[scope.row.textStatus] === '被代替'" style="color: #F56C6C">{{
|
||||
scope.row.zccssrq ? scope.row.zccssrq.substring(0, 10) : '-'
|
||||
scope.row.zccssrq
|
||||
}}</span>
|
||||
<span v-else-if="textStatusMap[scope.row.textStatus] === '——' " style="color: #409EFF">{{
|
||||
scope.row.zccssrq ? scope.row.zccssrq.substring(0, 10) : '-'
|
||||
scope.row.zccssrq
|
||||
}}</span>
|
||||
<span v-else style="color: #333333">{{
|
||||
scope.row.zccssrq ? scope.row.zccssrq.substring(0, 10) : '-'
|
||||
scope.row.zccssrq
|
||||
}}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
@@ -584,9 +567,9 @@
|
||||
width="120"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<span v-if="scope.row.standStatusShow === '作废'" style="color: #F56C6C">{{scope.row.issueTime ? scope.row.issueTime.slice(0, 10) : ''}}</span>
|
||||
<span v-if="scope.row.standStatusShow === '参考' " style="color: #E6A23C">{{scope.row.issueTime ? scope.row.issueTime.slice(0, 10) : ''}}</span>
|
||||
<span v-if="scope.row.standStatusShow !== '作废' && scope.row.standStatusShow !== '参考'">{{scope.row.issueTime ? scope.row.issueTime.slice(0, 10) : ''}}</span>
|
||||
<span v-if="scope.row.standStatusShow === '作废'" style="color: #F56C6C">{{scope.row.issueTime}}</span>
|
||||
<span v-if="scope.row.standStatusShow === '参考' " style="color: #E6A23C">{{scope.row.issueTime}}</span>
|
||||
<span v-if="scope.row.standStatusShow !== '作废' && scope.row.standStatusShow !== '参考'">{{scope.row.issueTime}}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
@@ -595,9 +578,9 @@
|
||||
width="120"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<span v-if="scope.row.standStatusShow === '作废'" style="color: #F56C6C">{{scope.row.putTime ? scope.row.putTime.slice(0, 10) : ''}}</span>
|
||||
<span v-if="scope.row.standStatusShow === '参考'" style="color: #E6A23C">{{scope.row.putTime ? scope.row.putTime.slice(0, 10) : ''}}</span>
|
||||
<span v-if="scope.row.standStatusShow !== '作废' && scope.row.standStatusShow !== '参考'">{{scope.row.putTime ? scope.row.putTime.slice(0, 10) : ''}}</span>
|
||||
<span v-if="scope.row.standStatusShow === '作废'" style="color: #F56C6C">{{scope.row.putTime}}</span>
|
||||
<span v-if="scope.row.standStatusShow === '参考'" style="color: #E6A23C">{{scope.row.putTime}}</span>
|
||||
<span v-if="scope.row.standStatusShow !== '作废' && scope.row.standStatusShow !== '参考'">{{scope.row.putTime}}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
@@ -970,13 +953,6 @@ export default {
|
||||
this.saveLoading = false;
|
||||
});
|
||||
},
|
||||
handleRemark(){
|
||||
this.dataList.map(item => {
|
||||
if(item.involve === 'noInvolve'){
|
||||
comFlag
|
||||
}
|
||||
})
|
||||
},
|
||||
//提交事件
|
||||
handleSubmit() {
|
||||
let comFlag = 0
|
||||
@@ -988,6 +964,9 @@ export default {
|
||||
if(comFlag > 0){
|
||||
this.$message.warning('请填写不涉及的备注信息')
|
||||
}else{
|
||||
this.dataList.forEach(item => {
|
||||
this.$set(item, 'standId', item.id)
|
||||
})
|
||||
this.isSubmit = true;
|
||||
this.qdform.currentPerson = this.$store.getters.userInfo.userName;
|
||||
this.qdform.commentText = this.commentText;
|
||||
@@ -1050,34 +1029,34 @@ export default {
|
||||
this.standModel = false;
|
||||
},
|
||||
//添加标准带入事件
|
||||
okStand() {
|
||||
if(this.standList.length < 1){
|
||||
this.$message.warning('请至少选择一条数据进行添加')
|
||||
}else{
|
||||
this.standList.forEach(item =>{
|
||||
if(item.ssrq === "-"){
|
||||
item.ssrq = ''
|
||||
}
|
||||
if(item.zrbm === '[]'){
|
||||
item.zrbm =''
|
||||
}
|
||||
})
|
||||
this.standList.map(item => {
|
||||
let addIndex
|
||||
addIndex = this.dataList.findIndex(items =>{
|
||||
return items.id === item.id
|
||||
})
|
||||
if(addIndex > -1){
|
||||
this.$message.warning('请勿重复添加数据')
|
||||
}else{
|
||||
this.dataList.push(item)
|
||||
}
|
||||
})
|
||||
|
||||
this.standModel = false
|
||||
}
|
||||
|
||||
},
|
||||
// okStand() {
|
||||
// if(this.standList.length < 1){
|
||||
// this.$message.warning('请至少选择一条数据进行添加')
|
||||
// }else{
|
||||
// this.standList.forEach(item =>{
|
||||
// if(item.ssrq === "-"){
|
||||
// item.ssrq = ''
|
||||
// }
|
||||
// if(item.zrbm === '[]'){
|
||||
// item.zrbm =''
|
||||
// }
|
||||
// })
|
||||
// this.standList.map(item => {
|
||||
// let addIndex
|
||||
// addIndex = this.dataList.findIndex(items =>{
|
||||
// return items.id === item.id
|
||||
// })
|
||||
// if(addIndex > -1){
|
||||
// this.$message.warning('请勿重复添加数据')
|
||||
// }else{
|
||||
// this.dataList.push(item)
|
||||
// }
|
||||
// })
|
||||
//
|
||||
// this.standModel = false
|
||||
// }
|
||||
//
|
||||
// },
|
||||
//手动查找的清空按钮
|
||||
clearLawBtn(){
|
||||
this.lawInfoTableLoading = true
|
||||
@@ -1162,6 +1141,7 @@ export default {
|
||||
this.$message.warning('请先选择标准/政策来源')
|
||||
}
|
||||
},
|
||||
//添加标准带入事件
|
||||
handleSelectConfirm(){
|
||||
if(this.handleSelectTableList.length < 1){
|
||||
this.$message.warning('请至少选择一条数据进行添加')
|
||||
@@ -1175,6 +1155,8 @@ export default {
|
||||
}
|
||||
})
|
||||
this.handleSelectTableList.map(item => {
|
||||
this.$set(item, 'involve', 'involve')
|
||||
this.$set(item, 'remarks', '')
|
||||
let addIndex
|
||||
addIndex = this.dataList.findIndex(items =>{
|
||||
return items.id === item.id
|
||||
@@ -1185,10 +1167,6 @@ export default {
|
||||
this.dataList.push(item)
|
||||
}
|
||||
})
|
||||
this.dataList.forEach(item => {
|
||||
this.$set(item, 'involve', 'involve')
|
||||
this.$set(item, 'remarks', '')
|
||||
})
|
||||
this.standModel = false
|
||||
}
|
||||
},
|
||||
|
||||
@@ -107,27 +107,18 @@
|
||||
width="190px"
|
||||
align="center"
|
||||
label="标准实施日期">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.ssrq ? scope.row.ssrq.substring(0, 10) : '-' }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="xcxssrq"
|
||||
width="190px"
|
||||
align="center"
|
||||
label="新车型实施日期">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.xcxssrq ? scope.row.xcxssrq.substring(0, 10) : '-' }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="zccssrq"
|
||||
align="center"
|
||||
width="190px"
|
||||
label="在产车实施日期">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.zccssrq ? scope.row.zccssrq.substring(0, 10) : '-' }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="zrbm"
|
||||
@@ -362,7 +353,7 @@
|
||||
<template slot-scope="scope">
|
||||
<!-- {{ formatIssueDate(scope.row.putTime) }}-->
|
||||
<span v-if="textStatusMap[scope.row.textStatus] === '废止' || textStatusMap[scope.row.textStatus] === '被代替'" style="color: #F56C6C">{{ scope.row.SSRQ ? scope.row.SSRQ.substring(0, 10) : '-' }}</span>
|
||||
<span v-else>{{ scope.row.ssrq ? scope.row.ssrq.substring(0, 10) : '-' }}</span>
|
||||
<span v-else>{{ scope.row.ssrq }}</span>
|
||||
|
||||
</template>
|
||||
</el-table-column>
|
||||
@@ -373,7 +364,7 @@
|
||||
label="新车型实施日期">
|
||||
<template slot-scope="scope">
|
||||
<span v-if="textStatusMap[scope.row.textStatus] === '废止' || textStatusMap[scope.row.textStatus] === '被代替'" style="color: #F56C6C">{{ scope.row.XCXSSRQ ? scope.row.XCXSSRQ.substring(0, 10) : '-' }}</span>
|
||||
<span v-else>{{ scope.row.xcxssrq ? scope.row.xcxssrq.substring(0, 10) : '-' }}</span>
|
||||
<span v-else>{{ scope.row.xcxssrq }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
@@ -382,7 +373,7 @@
|
||||
label="在产车实施日期">
|
||||
<template slot-scope="scope">
|
||||
<span v-if="textStatusMap[scope.row.textStatus] === '废止' || textStatusMap[scope.row.textStatus] === '被代替'" style="color: #F56C6C">{{ scope.row.ZCCSSRQ ? scope.row.ZCCSSRQ.substring(0, 10) : '-' }}</span>
|
||||
<span v-else>{{ scope.row.zccssrq ? scope.row.zccssrq.substring(0, 10) : '-' }}</span>
|
||||
<span v-else>{{ scope.row.zccssrq }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
@@ -464,12 +455,12 @@
|
||||
<template slot-scope="scope">
|
||||
<!-- {{ formatIssueDate(scope.row.putTime) }}-->
|
||||
<span v-if="textStatusMap[scope.row.textStatus] === '废止' || textStatusMap[scope.row.textStatus] === '被代替'" style="color: #F56C6C">{{
|
||||
scope.row.ssrq ? scope.row.ssrq.substring(0, 10) : '-'
|
||||
scope.row.ssrq
|
||||
}}</span>
|
||||
<span v-else-if="textStatusMap[scope.row.textStatus] === '——' " style="color: #409EFF">{{
|
||||
scope.row.ssrq ? scope.row.ssrq.substring(0, 10) : '-'
|
||||
scope.row.ssrq
|
||||
}}</span>
|
||||
<span v-else style="color: #333333">{{ scope.row.ssrq ? scope.row.ssrq.substring(0, 10) : '-' }}</span>
|
||||
<span v-else style="color: #333333">{{ scope.row.ssrq }}</span>
|
||||
|
||||
</template>
|
||||
</el-table-column>
|
||||
@@ -479,13 +470,13 @@
|
||||
label="新车型实施日期">
|
||||
<template slot-scope="scope">
|
||||
<span v-if="textStatusMap[scope.row.textStatus] === '废止' || textStatusMap[scope.row.textStatus] === '被代替'" style="color: #F56C6C">{{
|
||||
scope.row.xcxssrq ? scope.row.xcxssrq.substring(0, 10) : '-'
|
||||
scope.row.xcxssrq
|
||||
}}</span>
|
||||
<span v-else-if="textStatusMap[scope.row.textStatus] === '——' " style="color: #409EFF">{{
|
||||
scope.row.xcxssrq ? scope.row.xcxssrq.substring(0, 10) : '-'
|
||||
scope.row.xcxssrq
|
||||
}}</span>
|
||||
<span v-else style="color: #333333">{{
|
||||
scope.row.xcxssrq ? scope.row.xcxssrq.substring(0, 10) : '-'
|
||||
scope.row.xcxssrq
|
||||
}}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
@@ -495,13 +486,13 @@
|
||||
label="在产车实施日期">
|
||||
<template slot-scope="scope">
|
||||
<span v-if="textStatusMap[scope.row.textStatus] === '废止' || textStatusMap[scope.row.textStatus] === '被代替'" style="color: #F56C6C">{{
|
||||
scope.row.zccssrq ? scope.row.zccssrq.substring(0, 10) : '-'
|
||||
scope.row.zccssrq
|
||||
}}</span>
|
||||
<span v-else-if="textStatusMap[scope.row.textStatus] === '——' " style="color: #409EFF">{{
|
||||
scope.row.zccssrq ? scope.row.zccssrq.substring(0, 10) : '-'
|
||||
scope.row.zccssrq
|
||||
}}</span>
|
||||
<span v-else style="color: #333333">{{
|
||||
scope.row.zccssrq ? scope.row.zccssrq.substring(0, 10) : '-'
|
||||
scope.row.zccssrq
|
||||
}}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
@@ -568,9 +559,9 @@
|
||||
width="120"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<span v-if="scope.row.standStatusShow === '作废'" style="color: #F56C6C">{{scope.row.issueTime ? scope.row.issueTime.slice(0, 10) : ''}}</span>
|
||||
<span v-if="scope.row.standStatusShow === '参考' " style="color: #E6A23C">{{scope.row.issueTime ? scope.row.issueTime.slice(0, 10) : ''}}</span>
|
||||
<span v-if="scope.row.standStatusShow !== '作废' && scope.row.standStatusShow !== '参考'">{{scope.row.issueTime ? scope.row.issueTime.slice(0, 10) : ''}}</span>
|
||||
<span v-if="scope.row.standStatusShow === '作废'" style="color: #F56C6C">{{scope.row.issueTime}}</span>
|
||||
<span v-if="scope.row.standStatusShow === '参考' " style="color: #E6A23C">{{scope.row.issueTime}}</span>
|
||||
<span v-if="scope.row.standStatusShow !== '作废' && scope.row.standStatusShow !== '参考'">{{scope.row.issueTime}}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
@@ -579,9 +570,9 @@
|
||||
width="120"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<span v-if="scope.row.standStatusShow === '作废'" style="color: #F56C6C">{{scope.row.putTime ? scope.row.putTime.slice(0, 10) : ''}}</span>
|
||||
<span v-if="scope.row.standStatusShow === '参考'" style="color: #E6A23C">{{scope.row.putTime ? scope.row.putTime.slice(0, 10) : ''}}</span>
|
||||
<span v-if="scope.row.standStatusShow !== '作废' && scope.row.standStatusShow !== '参考'">{{scope.row.putTime ? scope.row.putTime.slice(0, 10) : ''}}</span>
|
||||
<span v-if="scope.row.standStatusShow === '作废'" style="color: #F56C6C">{{scope.row.putTime}}</span>
|
||||
<span v-if="scope.row.standStatusShow === '参考'" style="color: #E6A23C">{{scope.row.putTime}}</span>
|
||||
<span v-if="scope.row.standStatusShow !== '作废' && scope.row.standStatusShow !== '参考'">{{scope.row.putTime}}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
@@ -974,6 +965,9 @@ export default {
|
||||
if(comFlag > 0){
|
||||
this.$message.warning('请填写不涉及的备注信息')
|
||||
}else{
|
||||
this.dataList.forEach(item => {
|
||||
this.$set(item, 'standId', item.id)
|
||||
})
|
||||
this.isSubmit = true;
|
||||
this.qdform.commentText = this.commentText;
|
||||
this.qdform.dataList = this.dataList
|
||||
@@ -1160,6 +1154,8 @@ export default {
|
||||
}
|
||||
})
|
||||
this.handleSelectTableList.map(item => {
|
||||
this.$set(item, 'involve', '涉及')
|
||||
this.$set(item, 'remarks', '')
|
||||
let addIndex
|
||||
addIndex = this.dataList.findIndex(items =>{
|
||||
return items.id === item.id
|
||||
@@ -1170,10 +1166,6 @@ export default {
|
||||
this.dataList.push(item)
|
||||
}
|
||||
})
|
||||
this.dataList.forEach(item => {
|
||||
this.$set(item, 'involve', 'involve')
|
||||
this.$set(item, 'remarks', '')
|
||||
})
|
||||
this.standModel = false
|
||||
}
|
||||
},
|
||||
|
||||
@@ -101,27 +101,18 @@
|
||||
width="190px"
|
||||
align="center"
|
||||
label="标准实施日期">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.ssrq ? scope.row.ssrq.substring(0, 10) : '-' }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="xcxssrq"
|
||||
width="190px"
|
||||
align="center"
|
||||
label="新车型实施日期">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.xcxssrq ? scope.row.xcxssrq.substring(0, 10) : '-' }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="zccssrq"
|
||||
align="center"
|
||||
width="190px"
|
||||
label="在产车实施日期">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.zccssrq ? scope.row.zccssrq.substring(0, 10) : '-' }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="zrbm"
|
||||
@@ -451,13 +442,6 @@ export default {
|
||||
this.qdform.prcName = this.prcName;
|
||||
this.qdform["id"] = item.id;
|
||||
this.dataList = item.dataList
|
||||
this.dataList.forEach(item => {
|
||||
if(item.involve === 'involve'){
|
||||
item.involve = '涉及'
|
||||
}else if(item.involve === 'noInvolve'){
|
||||
item.involve = '不涉及'
|
||||
}
|
||||
})
|
||||
// this.projectId = item.projectId;
|
||||
// //获取清单id 查询对应清单下的标准
|
||||
// this.detailedId = item.detailedListId;
|
||||
@@ -529,13 +513,6 @@ export default {
|
||||
this.saveLoading = false;
|
||||
});
|
||||
},
|
||||
handleRemark(){
|
||||
this.dataList.map(item => {
|
||||
if(item.involve === 'noInvolve'){
|
||||
comFlag
|
||||
}
|
||||
})
|
||||
},
|
||||
//驳回事件
|
||||
beforeBack() {
|
||||
if (this.commentText === null || this.commentText === undefined || this.commentText === "") {
|
||||
|
||||
@@ -134,9 +134,9 @@
|
||||
tooltip-effect="dark"
|
||||
style="width: 100%;"
|
||||
height="100%"
|
||||
row-key="id"
|
||||
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px',
|
||||
fontWeight: 'bold', height: '48px'}"
|
||||
row-key="id"
|
||||
>
|
||||
<el-table-column
|
||||
prop="itemsNum"
|
||||
@@ -169,7 +169,7 @@
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
show-overflow-tooltip
|
||||
v-if="sarType === 'INLAND'"
|
||||
v-if="sarType === 'INLAND' && form.itemsNum1"
|
||||
prop="changePoint"
|
||||
width="150"
|
||||
label="基于上一版本差异"
|
||||
@@ -202,27 +202,27 @@
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="newData"
|
||||
width="150"
|
||||
width="180"
|
||||
show-overflow-tooltip
|
||||
label="新车型实施日期"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<div>{{ scope.row.newData ? $moment(scope.row.newData).format('YYYY-MM-DD') : scope.row.newData }}</div>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="onlineData"
|
||||
width="150"
|
||||
width="180"
|
||||
show-overflow-tooltip
|
||||
label="在产车型实施日期"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<div>{{ scope.row.onlineData ? $moment(scope.row.onlineData).format('YYYY-MM-DD') : scope.row.onlineData }}</div>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="applyArctic"
|
||||
width="150"
|
||||
show-overflow-tooltip
|
||||
label="适用车型"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
{{ scope.row.applyArctic.toString() }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="unitDeptName"
|
||||
@@ -237,6 +237,7 @@
|
||||
align="center">
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<el-button v-if="itemLists.length > 20 && tableIndex * 20 < itemLists.length" style="width: 100%; margin-top: 5px;" icon="el-icon-caret-bottom" @click="tableLoading">加载更多...</el-button>
|
||||
<el-collapse accordion>
|
||||
<el-collapse-item title="审批意见">
|
||||
<div style="margin: 10px 0;">
|
||||
@@ -341,6 +342,8 @@
|
||||
name: "phoneBzjdStep4",
|
||||
data() {
|
||||
return {
|
||||
tableIndex: 0,
|
||||
itemLists: [],
|
||||
dialogMadal: false,
|
||||
drawerModal: false,
|
||||
//折叠的标志,true为折叠,false为不折叠
|
||||
@@ -374,6 +377,16 @@
|
||||
ProcessTitle
|
||||
},
|
||||
methods: {
|
||||
tableLoading () {
|
||||
this.tableIndex++
|
||||
let index = this.tableIndex * 20
|
||||
let endIndex = index + 20
|
||||
if (this.tableIndex * 20 > this.itemLists.length) {
|
||||
this.$message.warning('没有更多了')
|
||||
}
|
||||
let newData = this.itemLists.slice(index, endIndex)
|
||||
this.itemList = this.itemList.concat(newData)
|
||||
},
|
||||
dialogOk () {
|
||||
this.dialogMadal = false
|
||||
},
|
||||
@@ -488,7 +501,8 @@
|
||||
}
|
||||
this.sarType = data.standInData || data.sarType
|
||||
this.json = data
|
||||
this.itemList = data.itemList
|
||||
this.itemLists = data.itemList
|
||||
this.itemList = this.itemLists.slice(this.tableIndex, 20)
|
||||
this.loading = false
|
||||
}).catch(e => {
|
||||
})
|
||||
@@ -507,6 +521,8 @@
|
||||
.phoneBzjdStep4 {
|
||||
/deep/.van-dialog__content {
|
||||
min-height: 300px;
|
||||
max-height: 500px;
|
||||
overflow: auto;
|
||||
padding: 10px;
|
||||
}
|
||||
.prc-content-border {
|
||||
|
||||
@@ -0,0 +1,577 @@
|
||||
<template>
|
||||
<div class="phoneBzjdStep5 phoneBox">
|
||||
<ProcessHeaderPhone toggle>
|
||||
<template slot="proName">标准解读流程</template>
|
||||
<template slot="proNode">工程师审核</template>
|
||||
</ProcessHeaderPhone>
|
||||
<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-show="active === '1'">
|
||||
<div style="overflow: auto;">
|
||||
<el-form
|
||||
ref="bzzqyjForm"
|
||||
:model="form"
|
||||
class="label-input-form"
|
||||
label-width="210px"
|
||||
>
|
||||
<ProcessTitle>
|
||||
<template slot="title">基础信息</template>
|
||||
</ProcessTitle>
|
||||
<el-collapse-transition>
|
||||
<div class="prc-content-border" v-if="foldFormFlag === false">
|
||||
<el-row :gutter="24">
|
||||
<el-col :span="24">
|
||||
<el-form-item label="标准编号" prop="cid" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
disabled
|
||||
v-model="form.itemsNum"
|
||||
placeholder="请输入标准编号"
|
||||
clearable
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="标准名称" prop="cname" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
disabled
|
||||
v-model="form.itemsName"
|
||||
placeholder="请输入标准名称"
|
||||
clearable
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="上一版本标准号/政策号" class="add-form-item form-item-disabled" v-if="sarType === 'INLAND'">
|
||||
<el-input
|
||||
disabled
|
||||
v-model="form.itemsNum1"
|
||||
clearable
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="相对标准号/政策号" class="add-form-item form-item-disabled" v-if="sarType === 'FOREIGN'">
|
||||
<el-input
|
||||
disabled
|
||||
v-model="form.itemsNum1"
|
||||
clearable
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="上一版本标准名称/政策名称" class="add-form-item form-item-disabled" v-if="sarType === 'INLAND'">
|
||||
<el-input
|
||||
disabled
|
||||
v-model="form.itemsName1"
|
||||
clearable
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="相对标准名称/政策名称" class="add-form-item form-item-disabled" v-if="sarType === 'FOREIGN'">
|
||||
<el-input
|
||||
disabled
|
||||
v-model="form.itemsName1"
|
||||
clearable
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</div>
|
||||
</el-collapse-transition>
|
||||
<el-button v-if="foldFormFlag === false" style="width: 100%" icon="el-icon-caret-top" @click="foldForm">隐藏基础信息</el-button>
|
||||
<el-button v-if="foldFormFlag === true" style="width: 100%" icon="el-icon-caret-bottom" @click="foldForm">展开基础信息</el-button>
|
||||
<div class="prc-content-border" v-if="foldFormFlag === true" style="display: none">
|
||||
<el-row :gutter="24">
|
||||
<el-col :span="24">
|
||||
<el-form-item label="标准编号" prop="cid" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
disabled
|
||||
v-model="form.itemsNum"
|
||||
placeholder="请输入标准编号"
|
||||
clearable
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="标准名称" prop="cname" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
disabled
|
||||
v-model="form.itemsName"
|
||||
placeholder="请输入标准名称"
|
||||
clearable
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="上一版本标准号/政策号" class="add-form-item form-item-disabled" v-if="sarType === 'INLAND'">
|
||||
<el-input
|
||||
disabled
|
||||
v-model="form.itemsNum1"
|
||||
clearable
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="相对标准号/政策号" class="add-form-item form-item-disabled" v-if="sarType === 'FOREIGN'">
|
||||
<el-input
|
||||
disabled
|
||||
v-model="form.itemsNum1"
|
||||
clearable
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="上一版本标准名称/政策名称" class="add-form-item form-item-disabled" v-if="sarType === 'INLAND'">
|
||||
<el-input
|
||||
disabled
|
||||
v-model="form.itemsName1"
|
||||
clearable
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="相对标准名称/政策名称" class="add-form-item form-item-disabled" v-if="sarType === 'FOREIGN'">
|
||||
<el-input
|
||||
disabled
|
||||
v-model="form.itemsName1"
|
||||
clearable
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</div>
|
||||
</el-form>
|
||||
</div>
|
||||
<ProcessTitle>
|
||||
<template slot="title">拆分信息</template>
|
||||
</ProcessTitle>
|
||||
<el-table border
|
||||
ref="selection"
|
||||
:data="itemList"
|
||||
tooltip-effect="dark"
|
||||
style="width: 100%;"
|
||||
height="100%"
|
||||
row-key="id"
|
||||
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px',
|
||||
fontWeight: 'bold', height: '48px'}"
|
||||
>
|
||||
<el-table-column
|
||||
prop="itemsNum"
|
||||
label="条款号"
|
||||
width="70"
|
||||
align="center">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="itemsName"
|
||||
label="条款名称"
|
||||
show-overflow-tooltip
|
||||
align="center">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="itermsConditions"
|
||||
label="条款内容"
|
||||
width="200"
|
||||
show-overflow-tooltip
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<el-button size="mini" type="primary" @click="itermsConditionsOpen(scope.row.itermsConditions)" class="common-button-primary">查看条款内容</el-button>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
show-overflow-tooltip
|
||||
prop="technicalRequir"
|
||||
width="200"
|
||||
label="核心技术要求"
|
||||
align="center">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
show-overflow-tooltip
|
||||
v-if="sarType === 'INLAND' && form.itemsNum1"
|
||||
prop="changePoint"
|
||||
width="150"
|
||||
label="基于上一版本差异"
|
||||
align="center">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
show-overflow-tooltip
|
||||
v-if="sarType === 'FOREIGN'"
|
||||
prop="changePoint"
|
||||
width="150"
|
||||
label="相对于国行标差异点"
|
||||
align="center">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="complianceRequir"
|
||||
width="150"
|
||||
label="符合项状态"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<div v-if="scope.row.complianceRequir === '1'">符合</div>
|
||||
<div v-else>不符合</div>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
show-overflow-tooltip
|
||||
prop="complianceState"
|
||||
width="200"
|
||||
label="合规性分析"
|
||||
align="center">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="newData"
|
||||
width="180"
|
||||
show-overflow-tooltip
|
||||
label="新车型实施日期"
|
||||
align="center">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="onlineData"
|
||||
width="180"
|
||||
show-overflow-tooltip
|
||||
label="在产车型实施日期"
|
||||
align="center">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="applyArctic"
|
||||
width="150"
|
||||
show-overflow-tooltip
|
||||
label="适用车型"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
{{ scope.row.applyArctic.toString() }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="unitDeptName"
|
||||
label="责任部门"
|
||||
width="170"
|
||||
align="center">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
label="责任人"
|
||||
width="170"
|
||||
prop="zrUserIdName"
|
||||
align="center">
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<el-button v-if="itemLists.length > 20 && tableIndex * 20 < itemLists.length" style="width: 100%; margin-top: 5px;" icon="el-icon-caret-bottom" @click="tableLoading">加载更多...</el-button>
|
||||
<el-collapse accordion>
|
||||
<el-collapse-item title="审批意见">
|
||||
<div style="margin: 10px 0;">
|
||||
<el-input
|
||||
type="textarea"
|
||||
:rows="3"
|
||||
resize="none"
|
||||
placeholder="请输入意见"
|
||||
v-model="commentText">
|
||||
</el-input>
|
||||
</div>
|
||||
</el-collapse-item>
|
||||
</el-collapse>
|
||||
</div>
|
||||
<div class="content" v-show="active === '2'">
|
||||
<el-table
|
||||
height="100%"
|
||||
ref="selection"
|
||||
:data="histortData"
|
||||
tooltip-effect="dark"
|
||||
style="width: 100%"
|
||||
border
|
||||
row-key="id"
|
||||
:header-cell-style="{background: '#f8f8f9', color: '#515a6e'}">
|
||||
<el-table-column
|
||||
prop="name"
|
||||
label="任务步骤"
|
||||
align="center"
|
||||
width="130"
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="assignee"
|
||||
label="任务受理人"
|
||||
align="center"
|
||||
width="130"
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="createTime"
|
||||
label="创建时间"
|
||||
width="130"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.createTime ? $moment(scope.row.createTime).format('YYYY-MM-DD') : '' }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="endTime"
|
||||
label="完成时间"
|
||||
width="130"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.endTime ? $moment(scope.row.endTime).format('YYYY-MM-DD') : '' }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="comment"
|
||||
label="流程信息"
|
||||
width="130"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.commentText }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="completeFlag"
|
||||
label="状态"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.endTime ? '已完成' : '未完成'}}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
</div>
|
||||
<ProcessFooter
|
||||
show-submit
|
||||
:submitLoading="isSubmit"
|
||||
:saveLoading="saveLoading"
|
||||
@save="handleSave"
|
||||
@submit="handleSubmit"
|
||||
show-back
|
||||
@back="handleSubmitNo"
|
||||
submitBTNText="同意"
|
||||
>
|
||||
</ProcessFooter>
|
||||
<van-dialog v-model="dialogMadal" title="条款内容" @confirm="dialogOk">
|
||||
<div v-html="itermsConditionsTitle"></div>
|
||||
</van-dialog>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { Dialog } from 'vant';
|
||||
import ProcessHeaderPhone from '../../components/ProcessHeaderPhone'
|
||||
import ProcessFooter from '../../components/ProcessFooter'
|
||||
import ProcessTitle from '../../components/ProcessTitle'
|
||||
import {inboundLiaisonDetail,processCreateStand,changeAssigneeNew} from 'api/process'
|
||||
import axios from "axios";
|
||||
|
||||
export default {
|
||||
name: "phoneBzjdStep5",
|
||||
data() {
|
||||
return {
|
||||
tableIndex: 0,
|
||||
itemLists: [],
|
||||
dialogMadal: false,
|
||||
drawerModal: false,
|
||||
//折叠的标志,true为折叠,false为不折叠
|
||||
foldFormFlag: false,
|
||||
itermsConditionsFlag: false,
|
||||
itermsConditionsTitle: '',
|
||||
histortData: [],
|
||||
sarType: '',
|
||||
itemList: [],
|
||||
loading: true,
|
||||
commentText: '',
|
||||
taskIds: this.$route.query.taskIds,
|
||||
pId: this.$route.query.prcId,
|
||||
textarea: '', // 意见
|
||||
active: '1', // 默认显示
|
||||
isSubmit: false,
|
||||
saveLoading: false,
|
||||
form: {
|
||||
itemsNum: '',
|
||||
itemsName: '',
|
||||
itemsNum1: '',
|
||||
itemsName1: '',
|
||||
},
|
||||
json: {},
|
||||
}
|
||||
},
|
||||
components: {
|
||||
[Dialog.Component.name]: Dialog.Component,
|
||||
ProcessHeaderPhone,
|
||||
ProcessFooter,
|
||||
ProcessTitle
|
||||
},
|
||||
methods: {
|
||||
tableLoading () {
|
||||
this.tableIndex++
|
||||
let index = this.tableIndex * 20
|
||||
let endIndex = index + 20
|
||||
if (this.tableIndex * 20 > this.itemLists.length) {
|
||||
this.$message.warning('没有更多了')
|
||||
}
|
||||
let newData = this.itemLists.slice(index, endIndex)
|
||||
this.itemList = this.itemList.concat(newData)
|
||||
},
|
||||
dialogOk () {
|
||||
this.dialogMadal = false
|
||||
},
|
||||
handleTransfer() {
|
||||
this.drawerModal = true
|
||||
},
|
||||
checkedRole (data) {
|
||||
changeAssigneeNew({
|
||||
taskId: this.$route.query.taskIds, // 任务id
|
||||
userId:this.$store.getters.userInfo.userId, // 委托人
|
||||
assignee: data[0].id, // 被委托人
|
||||
pId: this.$route.query.prcId, // 流程实例
|
||||
}).then(res => {
|
||||
if (res.success) {
|
||||
this.drawerModal = false
|
||||
this.$message.success('调整成功')
|
||||
this.processNum()
|
||||
this.$router.push({path:'/processCenter?tabsName=ProcessCenter'})
|
||||
} else {
|
||||
this.$message.warning(res.message)
|
||||
}
|
||||
})
|
||||
},
|
||||
// 请求转换流程图
|
||||
processNum (row) {
|
||||
axios.request({
|
||||
url: '/api/lawss/activiti/getImg?_t=' + new Date().getTime(),
|
||||
responseType: 'blob',
|
||||
method: 'get',
|
||||
params: {
|
||||
prcNum: this.$route.query.prcNum
|
||||
}
|
||||
}).then(res => {
|
||||
this.processStep = window.URL.createObjectURL(res.data)
|
||||
})
|
||||
},
|
||||
//折叠/展开基础信息方法
|
||||
foldForm() {
|
||||
this.foldFormFlag = !this.foldFormFlag
|
||||
},
|
||||
itermsConditionsClose () {
|
||||
this.itermsConditionsFlag = false
|
||||
},
|
||||
itermsConditionsOpen (row) {
|
||||
this.dialogMadal = true
|
||||
this.itermsConditionsTitle = row
|
||||
},
|
||||
getHistoryData () {
|
||||
this.$http.get('lawss/activiti/get_list_by_instance', {
|
||||
prcNum: this.$route.query.prcNum,
|
||||
}, {}, res => {
|
||||
this.histortData = res
|
||||
}, e => {})
|
||||
},
|
||||
handleTabs(name) {
|
||||
this.active = name
|
||||
},
|
||||
handleSave() {},
|
||||
handleSubmit() {
|
||||
this.isSubmit = true
|
||||
var json = this.json
|
||||
json.resolveFlag = 1
|
||||
json.commentText = this.commentText
|
||||
this.$http.post('lawss/activiti/completeTask', {
|
||||
json: JSON.stringify(json),
|
||||
taskId: this.taskIds,
|
||||
userId: this.$store.getters.userInfo.userId
|
||||
}, {}, res => {
|
||||
if (res.success) {
|
||||
this.$message.success('提交成功')
|
||||
this.$router.push('/processCenter')
|
||||
}
|
||||
this.isSubmit = false
|
||||
})
|
||||
},
|
||||
handleSubmitNo () {
|
||||
if (this.commentText) {
|
||||
this.isSubmit = true
|
||||
var json = this.json
|
||||
json.resolveFlag = 2
|
||||
json.commentText = this.commentText
|
||||
this.$http.post('lawss/activiti/completeTask', {
|
||||
json: JSON.stringify(json),
|
||||
taskId: this.taskIds,
|
||||
userId: this.$store.getters.userInfo.userId
|
||||
}, {}, res => {
|
||||
if (res.success) {
|
||||
this.$message.success('驳回成功')
|
||||
this.$router.push('/processCenter')
|
||||
}
|
||||
this.isSubmit = false
|
||||
})
|
||||
} else {
|
||||
this.$message.warning('请输入反馈意见')
|
||||
}
|
||||
},
|
||||
getData() {
|
||||
return new Promise((resolve, reject) => {
|
||||
inboundLiaisonDetail({
|
||||
taskIds: this.taskIds,
|
||||
pId: this.pId
|
||||
}).then(res => {
|
||||
let data = JSON.parse(res.mesg)
|
||||
this.form.itemsNum = data.itemsNum || data.form.itemsNum
|
||||
this.form.itemsName = data.itemsName || data.form.itemsName
|
||||
if (data.form) {
|
||||
this.form.itemsName1 = data.form.itemsName1 || ''
|
||||
this.form.itemsNum1 = data.form.itemsNum1 || ''
|
||||
} else {
|
||||
this.form.itemsName1 = data.itemsName1 || ''
|
||||
this.form.itemsNum1 = data.itemsNum1 || ''
|
||||
}
|
||||
this.sarType = data.standInData || data.sarType
|
||||
this.json = data
|
||||
this.itemLists = data.itemList
|
||||
this.itemList = this.itemLists.slice(this.tableIndex, 20)
|
||||
this.loading = false
|
||||
}).catch(e => {
|
||||
})
|
||||
})
|
||||
},
|
||||
},
|
||||
mounted () {
|
||||
this.getHistoryData()
|
||||
this.getData()
|
||||
},
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="less" scoped>
|
||||
@import '~@/assets/styles/phone';
|
||||
.phoneBzjdStep5 {
|
||||
/deep/.van-dialog__content {
|
||||
min-height: 300px;
|
||||
max-height: 500px;
|
||||
overflow: auto;
|
||||
padding: 10px;
|
||||
}
|
||||
.prc-content-border {
|
||||
overflow: auto;
|
||||
}
|
||||
/deep/.prc-content-border .el-form-item__content {
|
||||
width: 270px;
|
||||
}
|
||||
.headerTabs {
|
||||
height: 52px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
position: absolute;
|
||||
top: 52px;
|
||||
right: 10px;
|
||||
.headerTabsItem {
|
||||
border: 1px solid #c1c1c1;
|
||||
padding: 0 5px;
|
||||
height: 30px;
|
||||
line-height: 30px;
|
||||
cursor: pointer;
|
||||
}
|
||||
.active {
|
||||
border: 1px solid #E6A23C;
|
||||
color: #fff;
|
||||
background: #E6A23C;
|
||||
}
|
||||
}
|
||||
.content {
|
||||
border-top: 1px solid #DCDFE6;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: space-between;
|
||||
margin-top: 52px;
|
||||
height: calc(~'100% - 155px');
|
||||
overflow: auto;
|
||||
.tableTitle {
|
||||
margin-bottom: 10px;
|
||||
height: 30px;
|
||||
line-height: 30px;
|
||||
position: relative;
|
||||
font-size: 13px;
|
||||
font-weight: bold;
|
||||
.tableButton {
|
||||
position: absolute;
|
||||
right: 0;
|
||||
top: 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
||||
@@ -0,0 +1,577 @@
|
||||
<template>
|
||||
<div class="phoneBzjdStep6 phoneBox">
|
||||
<ProcessHeaderPhone toggle>
|
||||
<template slot="proName">标准解读流程</template>
|
||||
<template slot="proNode">部长审批</template>
|
||||
</ProcessHeaderPhone>
|
||||
<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-show="active === '1'">
|
||||
<div style="overflow: auto;">
|
||||
<el-form
|
||||
ref="bzzqyjForm"
|
||||
:model="form"
|
||||
class="label-input-form"
|
||||
label-width="210px"
|
||||
>
|
||||
<ProcessTitle>
|
||||
<template slot="title">基础信息</template>
|
||||
</ProcessTitle>
|
||||
<el-collapse-transition>
|
||||
<div class="prc-content-border" v-if="foldFormFlag === false">
|
||||
<el-row :gutter="24">
|
||||
<el-col :span="24">
|
||||
<el-form-item label="标准编号" prop="cid" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
disabled
|
||||
v-model="form.itemsNum"
|
||||
placeholder="请输入标准编号"
|
||||
clearable
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="标准名称" prop="cname" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
disabled
|
||||
v-model="form.itemsName"
|
||||
placeholder="请输入标准名称"
|
||||
clearable
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="上一版本标准号/政策号" class="add-form-item form-item-disabled" v-if="sarType === 'INLAND'">
|
||||
<el-input
|
||||
disabled
|
||||
v-model="form.itemsNum1"
|
||||
clearable
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="相对标准号/政策号" class="add-form-item form-item-disabled" v-if="sarType === 'FOREIGN'">
|
||||
<el-input
|
||||
disabled
|
||||
v-model="form.itemsNum1"
|
||||
clearable
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="上一版本标准名称/政策名称" class="add-form-item form-item-disabled" v-if="sarType === 'INLAND'">
|
||||
<el-input
|
||||
disabled
|
||||
v-model="form.itemsName1"
|
||||
clearable
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="相对标准名称/政策名称" class="add-form-item form-item-disabled" v-if="sarType === 'FOREIGN'">
|
||||
<el-input
|
||||
disabled
|
||||
v-model="form.itemsName1"
|
||||
clearable
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</div>
|
||||
</el-collapse-transition>
|
||||
<el-button v-if="foldFormFlag === false" style="width: 100%" icon="el-icon-caret-top" @click="foldForm">隐藏基础信息</el-button>
|
||||
<el-button v-if="foldFormFlag === true" style="width: 100%" icon="el-icon-caret-bottom" @click="foldForm">展开基础信息</el-button>
|
||||
<div class="prc-content-border" v-if="foldFormFlag === true" style="display: none">
|
||||
<el-row :gutter="24">
|
||||
<el-col :span="24">
|
||||
<el-form-item label="标准编号" prop="cid" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
disabled
|
||||
v-model="form.itemsNum"
|
||||
placeholder="请输入标准编号"
|
||||
clearable
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="标准名称" prop="cname" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
disabled
|
||||
v-model="form.itemsName"
|
||||
placeholder="请输入标准名称"
|
||||
clearable
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="上一版本标准号/政策号" class="add-form-item form-item-disabled" v-if="sarType === 'INLAND'">
|
||||
<el-input
|
||||
disabled
|
||||
v-model="form.itemsNum1"
|
||||
clearable
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="相对标准号/政策号" class="add-form-item form-item-disabled" v-if="sarType === 'FOREIGN'">
|
||||
<el-input
|
||||
disabled
|
||||
v-model="form.itemsNum1"
|
||||
clearable
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="上一版本标准名称/政策名称" class="add-form-item form-item-disabled" v-if="sarType === 'INLAND'">
|
||||
<el-input
|
||||
disabled
|
||||
v-model="form.itemsName1"
|
||||
clearable
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="相对标准名称/政策名称" class="add-form-item form-item-disabled" v-if="sarType === 'FOREIGN'">
|
||||
<el-input
|
||||
disabled
|
||||
v-model="form.itemsName1"
|
||||
clearable
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</div>
|
||||
</el-form>
|
||||
</div>
|
||||
<ProcessTitle>
|
||||
<template slot="title">拆分信息</template>
|
||||
</ProcessTitle>
|
||||
<el-table border
|
||||
ref="selection"
|
||||
:data="itemList"
|
||||
tooltip-effect="dark"
|
||||
style="width: 100%;"
|
||||
height="100%"
|
||||
row-key="id"
|
||||
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px',
|
||||
fontWeight: 'bold', height: '48px'}"
|
||||
>
|
||||
<el-table-column
|
||||
prop="itemsNum"
|
||||
label="条款号"
|
||||
width="70"
|
||||
align="center">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="itemsName"
|
||||
label="条款名称"
|
||||
show-overflow-tooltip
|
||||
align="center">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="itermsConditions"
|
||||
label="条款内容"
|
||||
width="200"
|
||||
show-overflow-tooltip
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<el-button size="mini" type="primary" @click="itermsConditionsOpen(scope.row.itermsConditions)" class="common-button-primary">查看条款内容</el-button>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
show-overflow-tooltip
|
||||
prop="technicalRequir"
|
||||
width="200"
|
||||
label="核心技术要求"
|
||||
align="center">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
show-overflow-tooltip
|
||||
v-if="sarType === 'INLAND' && form.itemsNum1"
|
||||
prop="changePoint"
|
||||
width="150"
|
||||
label="基于上一版本差异"
|
||||
align="center">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
show-overflow-tooltip
|
||||
v-if="sarType === 'FOREIGN'"
|
||||
prop="changePoint"
|
||||
width="150"
|
||||
label="相对于国行标差异点"
|
||||
align="center">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="complianceRequir"
|
||||
width="150"
|
||||
label="符合项状态"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<div v-if="scope.row.complianceRequir === '1'">符合</div>
|
||||
<div v-else>不符合</div>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
show-overflow-tooltip
|
||||
prop="complianceState"
|
||||
width="200"
|
||||
label="合规性分析"
|
||||
align="center">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="newData"
|
||||
width="180"
|
||||
show-overflow-tooltip
|
||||
label="新车型实施日期"
|
||||
align="center">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="onlineData"
|
||||
width="180"
|
||||
show-overflow-tooltip
|
||||
label="在产车型实施日期"
|
||||
align="center">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="applyArctic"
|
||||
width="150"
|
||||
show-overflow-tooltip
|
||||
label="适用车型"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
{{ scope.row.applyArctic.toString() }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="unitDeptName"
|
||||
label="责任部门"
|
||||
width="170"
|
||||
align="center">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
label="责任人"
|
||||
width="170"
|
||||
prop="zrUserIdName"
|
||||
align="center">
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<el-button v-if="itemLists.length > 20 && tableIndex * 20 < itemLists.length" style="width: 100%; margin-top: 5px;" icon="el-icon-caret-bottom" @click="tableLoading">加载更多...</el-button>
|
||||
<el-collapse accordion>
|
||||
<el-collapse-item title="审批意见">
|
||||
<div style="margin: 10px 0;">
|
||||
<el-input
|
||||
type="textarea"
|
||||
:rows="3"
|
||||
resize="none"
|
||||
placeholder="请输入意见"
|
||||
v-model="commentText">
|
||||
</el-input>
|
||||
</div>
|
||||
</el-collapse-item>
|
||||
</el-collapse>
|
||||
</div>
|
||||
<div class="content" v-show="active === '2'">
|
||||
<el-table
|
||||
height="100%"
|
||||
ref="selection"
|
||||
:data="histortData"
|
||||
tooltip-effect="dark"
|
||||
style="width: 100%"
|
||||
border
|
||||
row-key="id"
|
||||
:header-cell-style="{background: '#f8f8f9', color: '#515a6e'}">
|
||||
<el-table-column
|
||||
prop="name"
|
||||
label="任务步骤"
|
||||
align="center"
|
||||
width="130"
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="assignee"
|
||||
label="任务受理人"
|
||||
align="center"
|
||||
width="130"
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="createTime"
|
||||
label="创建时间"
|
||||
width="130"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.createTime ? $moment(scope.row.createTime).format('YYYY-MM-DD') : '' }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="endTime"
|
||||
label="完成时间"
|
||||
width="130"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.endTime ? $moment(scope.row.endTime).format('YYYY-MM-DD') : '' }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="comment"
|
||||
label="流程信息"
|
||||
width="130"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.commentText }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="completeFlag"
|
||||
label="状态"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.endTime ? '已完成' : '未完成'}}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
</div>
|
||||
<ProcessFooter
|
||||
show-submit
|
||||
:submitLoading="isSubmit"
|
||||
:saveLoading="saveLoading"
|
||||
@save="handleSave"
|
||||
@submit="handleSubmit"
|
||||
show-back
|
||||
@back="handleSubmitNo"
|
||||
submitBTNText="同意"
|
||||
>
|
||||
</ProcessFooter>
|
||||
<van-dialog v-model="dialogMadal" title="条款内容" @confirm="dialogOk">
|
||||
<div v-html="itermsConditionsTitle"></div>
|
||||
</van-dialog>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { Dialog } from 'vant';
|
||||
import ProcessHeaderPhone from '../../components/ProcessHeaderPhone'
|
||||
import ProcessFooter from '../../components/ProcessFooter'
|
||||
import ProcessTitle from '../../components/ProcessTitle'
|
||||
import {inboundLiaisonDetail,processCreateStand,changeAssigneeNew} from 'api/process'
|
||||
import axios from "axios";
|
||||
|
||||
export default {
|
||||
name: "phoneBzjdStep6",
|
||||
data() {
|
||||
return {
|
||||
tableIndex: 0,
|
||||
itemLists: [],
|
||||
dialogMadal: false,
|
||||
drawerModal: false,
|
||||
//折叠的标志,true为折叠,false为不折叠
|
||||
foldFormFlag: false,
|
||||
itermsConditionsFlag: false,
|
||||
itermsConditionsTitle: '',
|
||||
histortData: [],
|
||||
sarType: '',
|
||||
itemList: [],
|
||||
loading: true,
|
||||
commentText: '',
|
||||
taskIds: this.$route.query.taskIds,
|
||||
pId: this.$route.query.prcId,
|
||||
textarea: '', // 意见
|
||||
active: '1', // 默认显示
|
||||
isSubmit: false,
|
||||
saveLoading: false,
|
||||
form: {
|
||||
itemsNum: '',
|
||||
itemsName: '',
|
||||
itemsNum1: '',
|
||||
itemsName1: '',
|
||||
},
|
||||
json: {},
|
||||
}
|
||||
},
|
||||
components: {
|
||||
[Dialog.Component.name]: Dialog.Component,
|
||||
ProcessHeaderPhone,
|
||||
ProcessFooter,
|
||||
ProcessTitle
|
||||
},
|
||||
methods: {
|
||||
tableLoading () {
|
||||
this.tableIndex++
|
||||
let index = this.tableIndex * 20
|
||||
let endIndex = index + 20
|
||||
if (this.tableIndex * 20 > this.itemLists.length) {
|
||||
this.$message.warning('没有更多了')
|
||||
}
|
||||
let newData = this.itemLists.slice(index, endIndex)
|
||||
this.itemList = this.itemList.concat(newData)
|
||||
},
|
||||
dialogOk () {
|
||||
this.dialogMadal = false
|
||||
},
|
||||
handleTransfer() {
|
||||
this.drawerModal = true
|
||||
},
|
||||
checkedRole (data) {
|
||||
changeAssigneeNew({
|
||||
taskId: this.$route.query.taskIds, // 任务id
|
||||
userId:this.$store.getters.userInfo.userId, // 委托人
|
||||
assignee: data[0].id, // 被委托人
|
||||
pId: this.$route.query.prcId, // 流程实例
|
||||
}).then(res => {
|
||||
if (res.success) {
|
||||
this.drawerModal = false
|
||||
this.$message.success('调整成功')
|
||||
this.processNum()
|
||||
this.$router.push({path:'/processCenter?tabsName=ProcessCenter'})
|
||||
} else {
|
||||
this.$message.warning(res.message)
|
||||
}
|
||||
})
|
||||
},
|
||||
// 请求转换流程图
|
||||
processNum (row) {
|
||||
axios.request({
|
||||
url: '/api/lawss/activiti/getImg?_t=' + new Date().getTime(),
|
||||
responseType: 'blob',
|
||||
method: 'get',
|
||||
params: {
|
||||
prcNum: this.$route.query.prcNum
|
||||
}
|
||||
}).then(res => {
|
||||
this.processStep = window.URL.createObjectURL(res.data)
|
||||
})
|
||||
},
|
||||
//折叠/展开基础信息方法
|
||||
foldForm() {
|
||||
this.foldFormFlag = !this.foldFormFlag
|
||||
},
|
||||
itermsConditionsClose () {
|
||||
this.itermsConditionsFlag = false
|
||||
},
|
||||
itermsConditionsOpen (row) {
|
||||
this.dialogMadal = true
|
||||
this.itermsConditionsTitle = row
|
||||
},
|
||||
getHistoryData () {
|
||||
this.$http.get('lawss/activiti/get_list_by_instance', {
|
||||
prcNum: this.$route.query.prcNum,
|
||||
}, {}, res => {
|
||||
this.histortData = res
|
||||
}, e => {})
|
||||
},
|
||||
handleTabs(name) {
|
||||
this.active = name
|
||||
},
|
||||
handleSave() {},
|
||||
handleSubmit() {
|
||||
this.isSubmit = true
|
||||
var json = this.json
|
||||
json.resolveFlag = 1
|
||||
json.commentText = this.commentText
|
||||
this.$http.post('lawss/activiti/completeTask', {
|
||||
json: JSON.stringify(json),
|
||||
taskId: this.taskIds,
|
||||
userId: this.$store.getters.userInfo.userId
|
||||
}, {}, res => {
|
||||
if (res.success) {
|
||||
this.$message.success('提交成功')
|
||||
this.$router.push('/processCenter')
|
||||
}
|
||||
this.isSubmit = false
|
||||
})
|
||||
},
|
||||
handleSubmitNo () {
|
||||
if (this.commentText) {
|
||||
this.isSubmit = true
|
||||
var json = this.json
|
||||
json.resolveFlag = 2
|
||||
json.commentText = this.commentText
|
||||
this.$http.post('lawss/activiti/completeTask', {
|
||||
json: JSON.stringify(json),
|
||||
taskId: this.taskIds,
|
||||
userId: this.$store.getters.userInfo.userId
|
||||
}, {}, res => {
|
||||
if (res.success) {
|
||||
this.$message.success('驳回成功')
|
||||
this.$router.push('/processCenter')
|
||||
}
|
||||
this.isSubmit = false
|
||||
})
|
||||
} else {
|
||||
this.$message.warning('请输入反馈意见')
|
||||
}
|
||||
},
|
||||
getData() {
|
||||
return new Promise((resolve, reject) => {
|
||||
inboundLiaisonDetail({
|
||||
taskIds: this.taskIds,
|
||||
pId: this.pId
|
||||
}).then(res => {
|
||||
let data = JSON.parse(res.mesg)
|
||||
this.form.itemsNum = data.itemsNum || data.form.itemsNum
|
||||
this.form.itemsName = data.itemsName || data.form.itemsName
|
||||
if (data.form) {
|
||||
this.form.itemsName1 = data.form.itemsName1 || ''
|
||||
this.form.itemsNum1 = data.form.itemsNum1 || ''
|
||||
} else {
|
||||
this.form.itemsName1 = data.itemsName1 || ''
|
||||
this.form.itemsNum1 = data.itemsNum1 || ''
|
||||
}
|
||||
this.sarType = data.standInData || data.sarType
|
||||
this.json = data
|
||||
this.itemLists = data.itemList
|
||||
this.itemList = this.itemLists.slice(this.tableIndex, 20)
|
||||
this.loading = false
|
||||
}).catch(e => {
|
||||
})
|
||||
})
|
||||
},
|
||||
},
|
||||
mounted () {
|
||||
this.getHistoryData()
|
||||
this.getData()
|
||||
},
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="less" scoped>
|
||||
@import '~@/assets/styles/phone';
|
||||
.phoneBzjdStep6 {
|
||||
/deep/.van-dialog__content {
|
||||
min-height: 300px;
|
||||
max-height: 500px;
|
||||
overflow: auto;
|
||||
padding: 10px;
|
||||
}
|
||||
.prc-content-border {
|
||||
overflow: auto;
|
||||
}
|
||||
/deep/.prc-content-border .el-form-item__content {
|
||||
width: 270px;
|
||||
}
|
||||
.headerTabs {
|
||||
height: 52px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
position: absolute;
|
||||
top: 52px;
|
||||
right: 10px;
|
||||
.headerTabsItem {
|
||||
border: 1px solid #c1c1c1;
|
||||
padding: 0 5px;
|
||||
height: 30px;
|
||||
line-height: 30px;
|
||||
cursor: pointer;
|
||||
}
|
||||
.active {
|
||||
border: 1px solid #E6A23C;
|
||||
color: #fff;
|
||||
background: #E6A23C;
|
||||
}
|
||||
}
|
||||
.content {
|
||||
border-top: 1px solid #DCDFE6;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: space-between;
|
||||
margin-top: 52px;
|
||||
height: calc(~'100% - 155px');
|
||||
overflow: auto;
|
||||
.tableTitle {
|
||||
margin-bottom: 10px;
|
||||
height: 30px;
|
||||
line-height: 30px;
|
||||
position: relative;
|
||||
font-size: 13px;
|
||||
font-weight: bold;
|
||||
.tableButton {
|
||||
position: absolute;
|
||||
right: 0;
|
||||
top: 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
||||
@@ -0,0 +1,657 @@
|
||||
<!-- 加入标准化协会信息备案流程-->
|
||||
<template>
|
||||
<div class="phoneGrbzhxhStep3 phoneBox">
|
||||
<ProcessHeaderPhone toggle>
|
||||
<template slot="proName">加入标准化协会备案流程</template>
|
||||
<template slot="proNode">标准法规工程师审核</template>
|
||||
</ProcessHeaderPhone>
|
||||
<div class="headerTabs">
|
||||
<div class="headerTabsItem" :class="active === '1' ? 'active' : ''" @click="handleTabs('1')">基础信息</div>
|
||||
<div class="headerTabsItem" :class="active === '3' ? 'active' : '' " @click="handleTabs('3')">审批历史</div>
|
||||
</div>
|
||||
<div class="content" v-show="active === '1'">
|
||||
<div>
|
||||
<el-form
|
||||
ref="wbbzForm"
|
||||
:model="wbbzform"
|
||||
:rules="formRules"
|
||||
class="label-input-form"
|
||||
label-width="210px"
|
||||
>
|
||||
<ProcessTitle>
|
||||
<template slot="title">基础信息</template>
|
||||
</ProcessTitle>
|
||||
<div class="prc-content-border" v-if="foldFormFlag">
|
||||
<el-row :gutter="24">
|
||||
<el-col :gutter="24">
|
||||
<el-form-item label="提报单位" prop="reportingUnit" class="add-form-item ">
|
||||
<el-input
|
||||
v-model="wbbzform.reportingUnit"
|
||||
placeholder="请输入提报单位"
|
||||
readonly>
|
||||
</el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="协会名称" prop="associationName" class="add-form-item ">
|
||||
<div class="form-select">
|
||||
<el-select v-model="wbbzform.associationName" placeholder="请选择协会名称">
|
||||
<el-option
|
||||
v-for="item in associationOptions"
|
||||
:key="item.value"
|
||||
:label="item.label"
|
||||
:value="item.value">
|
||||
</el-option>
|
||||
</el-select>
|
||||
<el-select v-model="wbbzform.committee" placeholder="请选择分标委">
|
||||
<el-option
|
||||
v-for="item in associationOptions"
|
||||
:key="item.value"
|
||||
:label="item.label"
|
||||
:value="item.value">
|
||||
</el-option>
|
||||
</el-select>
|
||||
<el-select v-model="wbbzform.workingGroup" placeholder="请选择工作组">
|
||||
<el-option
|
||||
v-for="item in associationOptions"
|
||||
:key="item.value"
|
||||
:label="item.label"
|
||||
:value="item.value">
|
||||
</el-option>
|
||||
</el-select>
|
||||
</div>
|
||||
</el-form-item>
|
||||
<el-form-item label="人员角色" prop="personnelRole" class="add-form-item ">
|
||||
<div class="form-select">
|
||||
<el-select v-model="wbbzform.personnelRole" placeholder="请选择会员角色">
|
||||
<el-option
|
||||
v-for="item in associationOptions"
|
||||
:key="item.value"
|
||||
:label="item.label"
|
||||
:value="item.value">
|
||||
</el-option>
|
||||
</el-select>
|
||||
<el-date-picker
|
||||
v-model="wbbzform.membershipTime"
|
||||
type="date"
|
||||
placeholder="请选择入会时间">
|
||||
</el-date-picker>
|
||||
</div>
|
||||
</el-form-item>
|
||||
<el-form-item label="证书" prop="fileName" class="add-form-item form-item-disabled">
|
||||
<div class="file-box" v-if="fileList.length > 0">
|
||||
<p v-for="item in fileList"
|
||||
:key="item.id"> {{ item.name }}
|
||||
<i
|
||||
title="下载"
|
||||
@click="downloadFile(item.id)"
|
||||
class="icon-download"
|
||||
v-btn-permission="''"
|
||||
/>
|
||||
<i
|
||||
title="下载带水印"
|
||||
@click="downloadFileByWater(item.id, item.name)"
|
||||
class="icon-download2"
|
||||
v-btn-permission="''"
|
||||
/>
|
||||
</p>
|
||||
</div>
|
||||
<div v-else>
|
||||
暂无数据
|
||||
</div>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</div>
|
||||
<el-button style="width: 100%" :icon=" foldFormFlag ? 'el-icon-caret-top': 'el-icon-caret-bottom'" @click="foldForm">{{ foldFormFlag ? '隐藏基础信息' : '展开基础信息' }}</el-button>
|
||||
</el-form>
|
||||
<ProcessTitle>
|
||||
<template slot="title">参与人信息</template>
|
||||
</ProcessTitle>
|
||||
<div class="tableTitle">
|
||||
<div class="tableButton">
|
||||
<!-- <el-button plain class="common-button-primary" size="mini" @click="addPeople">添加</el-button>-->
|
||||
<!-- <el-button plain class="common-button-primary" size="mini" @click="deletePeople">批量删除</el-button>-->
|
||||
</div>
|
||||
</div>
|
||||
<el-table border
|
||||
ref="selection"
|
||||
:data="participantsData"
|
||||
tooltip-effect="dark"
|
||||
style="width: 100%;"
|
||||
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px',
|
||||
fontWeight: 'bold', height: '48px'}"
|
||||
row-key="id">
|
||||
<el-table-column type="selection" width="55" align="center"/>
|
||||
<el-table-column
|
||||
prop="workPeople"
|
||||
label="参与人"
|
||||
width="150"
|
||||
align="center">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="duties"
|
||||
label="职务"
|
||||
align="center">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="institutionName"
|
||||
label="所在部门"
|
||||
width="200"
|
||||
align="center">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="email"
|
||||
label="联系方式"
|
||||
width="350"
|
||||
align="center">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="tenure"
|
||||
label="任期"
|
||||
align="center">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="account"
|
||||
label="账户"
|
||||
width="200"
|
||||
align="center">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="password"
|
||||
label="密码"
|
||||
width="350"
|
||||
align="center">
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<ProcessTitle>
|
||||
<template slot="title">协会信息</template>
|
||||
</ProcessTitle>
|
||||
<div class="tableTitle">
|
||||
<div class="tableButton">
|
||||
<!-- <el-button plain class="common-button-primary" size="mini" @click="addPeople">添加</el-button>-->
|
||||
<!-- <el-button plain class="common-button-primary" size="mini" @click="deletePeople">批量删除</el-button>-->
|
||||
</div>
|
||||
</div>
|
||||
<el-table border
|
||||
ref="selection"
|
||||
:data="associationData"
|
||||
tooltip-effect="dark"
|
||||
style="width: 100%;"
|
||||
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px',
|
||||
fontWeight: 'bold', height: '48px'}"
|
||||
row-key="id">
|
||||
<el-table-column type="selection" width="55" align="center"/>
|
||||
<el-table-column
|
||||
prop="contactPerson"
|
||||
label="协会联络人"
|
||||
align="center">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="telephone"
|
||||
label="电话"
|
||||
align="center">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="mailbox"
|
||||
label="邮箱"
|
||||
align="center">
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
</div>
|
||||
<el-collapse accordion>
|
||||
<el-collapse-item title="回执说明">
|
||||
<div style="margin: 10px 0;">
|
||||
<el-input
|
||||
type="textarea"
|
||||
:rows="3"
|
||||
resize="none"
|
||||
placeholder="请输入意见"
|
||||
v-model="commentText">
|
||||
</el-input>
|
||||
</div>
|
||||
</el-collapse-item>
|
||||
</el-collapse>
|
||||
</div>
|
||||
<div class="content" v-show="active === '3'">
|
||||
<el-table
|
||||
height="100%"
|
||||
ref="selection"
|
||||
:data="histortData"
|
||||
tooltip-effect="dark"
|
||||
style="width: 100%"
|
||||
border
|
||||
row-key="id"
|
||||
:header-cell-style="{background: '#f8f8f9', color: '#515a6e'}">
|
||||
<el-table-column
|
||||
prop="name"
|
||||
label="任务步骤"
|
||||
align="center"
|
||||
width="130"
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="assignee"
|
||||
label="任务受理人"
|
||||
align="center"
|
||||
width="130"
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="createTime"
|
||||
label="创建时间"
|
||||
width="130"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.createTime ? $moment(scope.row.createTime).format('YYYY-MM-DD') : '' }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="endTime"
|
||||
label="完成时间"
|
||||
width="130"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.endTime ? $moment(scope.row.endTime).format('YYYY-MM-DD') : '' }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="comment"
|
||||
label="流程信息"
|
||||
width="130"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.commentText }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="completeFlag"
|
||||
label="状态"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.endTime ? '已完成' : '未完成'}}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
</div>
|
||||
<ProcessFooter
|
||||
show-back
|
||||
show-submit
|
||||
:submitLoading="isSubmit"
|
||||
:transfer-loading="isTransfer"
|
||||
:saveLoading="saveLoading"
|
||||
:approval="true"
|
||||
@back="beforeBack"
|
||||
@transfer="handleTransfer"
|
||||
@submit="handleSubmit"
|
||||
>
|
||||
</ProcessFooter>
|
||||
<Role-tree
|
||||
check-box
|
||||
:is-title="drawerTitle"
|
||||
:is-visible.sync="modalshowflag"
|
||||
@checkedRole="checkedRole"
|
||||
:nodeList="nodeList"
|
||||
></Role-tree>
|
||||
<!-- 福田全公司选人解决方案 -->
|
||||
<Role-tree
|
||||
check-box
|
||||
:is-title="drawerTitle"
|
||||
:is-visible.sync="drawerModal"
|
||||
@checkedRole="checkedTransferRole"
|
||||
:nodeList="nodeList"
|
||||
></Role-tree>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { Dialog } from 'vant';
|
||||
import ProcessHeaderPhone from '../../components/ProcessHeaderPhone'
|
||||
import ProcessHeader from "../../components/ProcessHeader";
|
||||
import ProcessTitle from "process/components/ProcessTitle";
|
||||
import ProcessFooter from "process/components/ProcessFooter";
|
||||
import { changeAssigneeNew,inboundLiaisonDetail } from "api/process";
|
||||
|
||||
export default {
|
||||
name: "phoneGrbzhxhStep3",
|
||||
components: {
|
||||
ProcessHeader,
|
||||
ProcessTitle,
|
||||
ProcessHeaderPhone,
|
||||
ProcessFooter
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
//切换tab
|
||||
active: "1",
|
||||
foldFormFlag: true,
|
||||
isSubmit: false,
|
||||
isTransfer: false,
|
||||
saveLoading: false,
|
||||
loading: false,
|
||||
modalshowflag: false,
|
||||
drawerModal: false,
|
||||
drawerTitle: '',
|
||||
nodeList: [],
|
||||
fileList:[],
|
||||
commentText: '',
|
||||
uploadFileListPath: "api/att/attFile/upload", // 上传的地址
|
||||
fileInfoList: [], // 上传的附件
|
||||
userId: this.$store.getters.userInfo.userId,
|
||||
taskIds: this.$route.query.taskIds,
|
||||
signFlag:'',
|
||||
wbbzform: {
|
||||
reportingUnit:'',
|
||||
associationName: '',
|
||||
committee:'',
|
||||
workingGroup:'',
|
||||
personnelRole:'',
|
||||
membershipTime:'',
|
||||
userId: this.$store.getters.userInfo.userId,
|
||||
taskIds: this.$route.query.taskIds,
|
||||
pId: this.$route.query.prcId,
|
||||
participantsData: [{
|
||||
name: '', //参与人
|
||||
duties: '', //职务
|
||||
institutionName: '', //所在部门
|
||||
email: '', //联系方式
|
||||
tenure:'', //任期
|
||||
account:'', //账户
|
||||
password:'', //密码
|
||||
}],
|
||||
associationData: [{
|
||||
contactPerson: '', //协议联络人
|
||||
telephone: '', //电话
|
||||
mailbox:'', //邮箱
|
||||
}],
|
||||
},
|
||||
selectList2: [],
|
||||
selectList1: [],
|
||||
formRules: {},
|
||||
participantsData: [], //参与人表格信息
|
||||
associationData: [], //协会表格信息
|
||||
detailData: [], //审批历史信息
|
||||
selectedId: "",
|
||||
associationOptions: [{
|
||||
value: '选项1',
|
||||
label: '1'
|
||||
}, {
|
||||
value: '选项2',
|
||||
label: '2'
|
||||
},{
|
||||
value: '选项3',
|
||||
label: '3'
|
||||
}],
|
||||
};
|
||||
},
|
||||
methods: {
|
||||
//确认转办
|
||||
checkedTransferRole (data) {
|
||||
this.assigneeNewLoading = true
|
||||
changeAssigneeNew({
|
||||
taskId: this.$route.query.taskIds, // 任务id
|
||||
assignee: data[0].id, // 被委托人
|
||||
userId: this.$store.getters.userInfo.userId, // 委托人
|
||||
pId: this.$route.query.prcId // 流程实例
|
||||
}).then(res => {
|
||||
this.isTransfer = false
|
||||
if (res.success) {
|
||||
this.drawerModal = false
|
||||
this.$message.success('调整成功')
|
||||
this.$router.push("/processCenter");
|
||||
this.processNum()
|
||||
} else {
|
||||
this.$message.warning(res.message)
|
||||
}
|
||||
})
|
||||
},
|
||||
processTable() {
|
||||
this.$http.get("lawss/activiti/get_list_by_instance", {
|
||||
prcNum: this.$route.query.prcNum,
|
||||
sortWord: this.shunxu ? this.paixu : "",
|
||||
shunxu: this.shunxu
|
||||
}, {
|
||||
loading: "loading",
|
||||
_this: this
|
||||
}, res => {
|
||||
this.detailData = res;
|
||||
}, e => {
|
||||
});
|
||||
},
|
||||
|
||||
choiceZRRS(row, index) {
|
||||
this.selectedId = index;
|
||||
this.drawerTitle = "选择责任人";
|
||||
this.nodeList = [];
|
||||
this.zrIndex = index;
|
||||
this.nodeList.push(row);
|
||||
this.modalshowflag = true;
|
||||
},
|
||||
checkedRole(data) {
|
||||
if (this.participantsData.length > 1) {
|
||||
let parList = data
|
||||
this.participantsData.forEach(item => {
|
||||
parList.forEach(items => {
|
||||
if (items.name === item.workPeople) {
|
||||
this.$message.warning('请勿重复添加参与人')
|
||||
return
|
||||
} else {
|
||||
console.log(items);
|
||||
}
|
||||
})
|
||||
})
|
||||
} else {
|
||||
this.participantsData = data
|
||||
this.participantsData.forEach(item => {
|
||||
this.$set(item, "workPeople", item.name)
|
||||
});
|
||||
this.participantsData = JSON.parse(JSON.stringify(this.participantsData));
|
||||
}
|
||||
},
|
||||
|
||||
handleTabs(type) {
|
||||
this.active = type;
|
||||
},
|
||||
foldForm() {
|
||||
this.foldFormFlag = !this.foldFormFlag
|
||||
},
|
||||
//不备案
|
||||
handleRecord() {
|
||||
|
||||
},
|
||||
getData() {
|
||||
return new Promise((resolve, reject) => {
|
||||
inboundLiaisonDetail({
|
||||
taskIds: this.$route.query.taskIds,
|
||||
pId: this.$route.query.prcId
|
||||
}).then(res => {
|
||||
if (res) {
|
||||
const processForm = JSON.parse(res.mesg);
|
||||
this.getFormFieldList(processForm);
|
||||
}
|
||||
}).catch(e => {
|
||||
});
|
||||
});
|
||||
},
|
||||
/**
|
||||
* @description: 动态表单读取
|
||||
*/
|
||||
getFormFieldList(item) {
|
||||
console.log(item);
|
||||
this.$nextTick(() => {
|
||||
this.wbbzform = JSON.parse(JSON.stringify(item));
|
||||
this.associationData = item.associationData
|
||||
this.participantsData = item.participantsData
|
||||
item.fileName.forEach(itemId => {
|
||||
this.fileIds = itemId.id
|
||||
this.getFileInfo();
|
||||
});
|
||||
});
|
||||
},
|
||||
// 请求上传的文件信息
|
||||
getFileInfo() {
|
||||
this.$http.get("att/attFile/getMultiFileInfos", {
|
||||
fileIds: this.fileIds
|
||||
}, {
|
||||
_this: this
|
||||
}, res => {
|
||||
this.$nextTick(() => {
|
||||
res.data.map(item => {
|
||||
// 赋值要回显的上传文件内容
|
||||
this.fileList.push({
|
||||
name: item.oldFileName,
|
||||
uid: item.uid,
|
||||
status: item.status,
|
||||
id: item.id
|
||||
});
|
||||
});
|
||||
});
|
||||
}, e => {
|
||||
});
|
||||
},
|
||||
/**
|
||||
* @Description: 点击下载
|
||||
*/
|
||||
downloadFile(attId) {
|
||||
if (attId != null && attId !== "") {
|
||||
window.location.href = "/api/att/attFile/downloadFileForSar?fileId=" + attId;
|
||||
} else {
|
||||
this.$message.error("请选择要下载的文件");
|
||||
}
|
||||
},
|
||||
downloadFileByWater(attId, fileSuffix) {
|
||||
let fileExtension = fileSuffix.substring(fileSuffix.lastIndexOf(".") + 1);
|
||||
if (fileExtension !== "pdf" && fileExtension !== "PDF") {
|
||||
this.$message.error("水印下载仅支持PDF,pdf格式文件");
|
||||
} else {
|
||||
if (attId != null && attId !== "") {
|
||||
window.location.href = "/api/att/attFile/downloadFileForSarWaterMark?fileId=" + attId;
|
||||
} else {
|
||||
this.$message.error("请选择要下载的文件");
|
||||
}
|
||||
}
|
||||
},
|
||||
//流程转办
|
||||
handleTransfer(){
|
||||
this.drawerModal = true
|
||||
this.drawerTitle = '转办处理人'
|
||||
this.selectPeople = row
|
||||
},
|
||||
//流程提交
|
||||
handleSubmit() {
|
||||
this.isSubmit = true
|
||||
this.wbbzform.signFlag = '1',
|
||||
this.wbbzform.passUser = this.$store.getters.userInfo.userId,
|
||||
this.wbbzform.commentText = this.commentText;
|
||||
this.wbbzform.participantsData = this.participantsData
|
||||
this.wbbzform.associationData = this.associationData
|
||||
var json = JSON.stringify( this.wbbzform)
|
||||
this.$http.post("lawss/activiti/completeTask", {
|
||||
taskIds: this.taskIds,
|
||||
userId: this.userId,
|
||||
json: json
|
||||
}, {
|
||||
_this: this
|
||||
}, res => {
|
||||
if (res.success) {
|
||||
this.$message.success(res.message);
|
||||
this.$router.push("/processCenter");
|
||||
}
|
||||
this.isSubmit = false
|
||||
}, e => {
|
||||
|
||||
});
|
||||
},
|
||||
//流程驳回
|
||||
beforeBack(){
|
||||
this.isSubmit = true
|
||||
this.wbbzform.signFlag = '0',
|
||||
this.wbbzform.passUser = this.$store.getters.userInfo.userId,
|
||||
this.wbbzform.commentText = this.commentText;
|
||||
this.wbbzform.participantsData = this.participantsData
|
||||
this.wbbzform.associationData = this.associationData
|
||||
var json = JSON.stringify( this.wbbzform)
|
||||
this.$http.post("lawss/activiti/completeTask", {
|
||||
taskIds: this.taskIds,
|
||||
userId: this.userId,
|
||||
json: json
|
||||
}, {
|
||||
_this: this
|
||||
}, res => {
|
||||
if (res.success) {
|
||||
this.$message.success(res.message);
|
||||
this.$router.push("/processCenter");
|
||||
}
|
||||
this.isSubmit = false
|
||||
}, e => {
|
||||
|
||||
});
|
||||
},
|
||||
},
|
||||
mounted() {
|
||||
this.getData()
|
||||
this.processTable()
|
||||
},
|
||||
computed: {
|
||||
listNoDataText() {
|
||||
return this.processType === 1 ? "暂无待办流程" : "暂无已办流程";
|
||||
}
|
||||
},
|
||||
};
|
||||
</script>
|
||||
|
||||
<style lang="less" scoped>
|
||||
@import '~@/assets/styles/phone';
|
||||
.phoneGrbzhxhStep3 {
|
||||
/deep/.van-dialog__content {
|
||||
min-height: 300px;
|
||||
padding: 10px;
|
||||
}
|
||||
.prc-content-border {
|
||||
overflow: auto;
|
||||
}
|
||||
/deep/.prc-content-border .el-form-item__content {
|
||||
width: 270px;
|
||||
}
|
||||
.headerTabs {
|
||||
height: 52px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
position: absolute;
|
||||
top: 52px;
|
||||
right: 10px;
|
||||
.headerTabsItem {
|
||||
border: 1px solid #c1c1c1;
|
||||
padding: 0 5px;
|
||||
height: 30px;
|
||||
line-height: 30px;
|
||||
cursor: pointer;
|
||||
}
|
||||
.active {
|
||||
border: 1px solid #E6A23C;
|
||||
color: #fff;
|
||||
background: #E6A23C;
|
||||
}
|
||||
}
|
||||
.content {
|
||||
border-top: 1px solid #DCDFE6;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: space-between;
|
||||
margin-top: 52px;
|
||||
height: calc(~'100% - 155px');
|
||||
overflow: auto;
|
||||
.tableTitle {
|
||||
margin-bottom: 10px;
|
||||
height: 30px;
|
||||
line-height: 30px;
|
||||
position: relative;
|
||||
font-size: 13px;
|
||||
font-weight: bold;
|
||||
.tableButton {
|
||||
position: absolute;
|
||||
right: 0;
|
||||
top: 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
||||
@@ -0,0 +1,657 @@
|
||||
<!-- 加入标准化协会信息备案流程-->
|
||||
<template>
|
||||
<div class="phoneGrbzhxhStep4 phoneBox">
|
||||
<ProcessHeaderPhone toggle>
|
||||
<template slot="proName">加入标准化协会备案流程</template>
|
||||
<template slot="proNode">标准法规工程师审核</template>
|
||||
</ProcessHeaderPhone>
|
||||
<div class="headerTabs">
|
||||
<div class="headerTabsItem" :class="active === '1' ? 'active' : ''" @click="handleTabs('1')">基础信息</div>
|
||||
<div class="headerTabsItem" :class="active === '3' ? 'active' : '' " @click="handleTabs('3')">审批历史</div>
|
||||
</div>
|
||||
<div class="content" v-show="active === '1'">
|
||||
<div>
|
||||
<el-form
|
||||
ref="wbbzForm"
|
||||
:model="wbbzform"
|
||||
:rules="formRules"
|
||||
class="label-input-form"
|
||||
label-width="210px"
|
||||
>
|
||||
<ProcessTitle>
|
||||
<template slot="title">基础信息</template>
|
||||
</ProcessTitle>
|
||||
<div class="prc-content-border" v-if="foldFormFlag">
|
||||
<el-row :gutter="24">
|
||||
<el-col :gutter="24">
|
||||
<el-form-item label="提报单位" prop="reportingUnit" class="add-form-item ">
|
||||
<el-input
|
||||
v-model="wbbzform.reportingUnit"
|
||||
placeholder="请输入提报单位"
|
||||
readonly>
|
||||
</el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="协会名称" prop="associationName" class="add-form-item ">
|
||||
<div class="form-select">
|
||||
<el-select v-model="wbbzform.associationName" placeholder="请选择协会名称">
|
||||
<el-option
|
||||
v-for="item in associationOptions"
|
||||
:key="item.value"
|
||||
:label="item.label"
|
||||
:value="item.value">
|
||||
</el-option>
|
||||
</el-select>
|
||||
<el-select v-model="wbbzform.committee" placeholder="请选择分标委">
|
||||
<el-option
|
||||
v-for="item in associationOptions"
|
||||
:key="item.value"
|
||||
:label="item.label"
|
||||
:value="item.value">
|
||||
</el-option>
|
||||
</el-select>
|
||||
<el-select v-model="wbbzform.workingGroup" placeholder="请选择工作组">
|
||||
<el-option
|
||||
v-for="item in associationOptions"
|
||||
:key="item.value"
|
||||
:label="item.label"
|
||||
:value="item.value">
|
||||
</el-option>
|
||||
</el-select>
|
||||
</div>
|
||||
</el-form-item>
|
||||
<el-form-item label="人员角色" prop="personnelRole" class="add-form-item ">
|
||||
<div class="form-select">
|
||||
<el-select v-model="wbbzform.personnelRole" placeholder="请选择会员角色">
|
||||
<el-option
|
||||
v-for="item in associationOptions"
|
||||
:key="item.value"
|
||||
:label="item.label"
|
||||
:value="item.value">
|
||||
</el-option>
|
||||
</el-select>
|
||||
<el-date-picker
|
||||
v-model="wbbzform.membershipTime"
|
||||
type="date"
|
||||
placeholder="请选择入会时间">
|
||||
</el-date-picker>
|
||||
</div>
|
||||
</el-form-item>
|
||||
<el-form-item label="证书" prop="fileName" class="add-form-item form-item-disabled">
|
||||
<div class="file-box" v-if="fileList.length > 0">
|
||||
<p v-for="item in fileList"
|
||||
:key="item.id"> {{ item.name }}
|
||||
<i
|
||||
title="下载"
|
||||
@click="downloadFile(item.id)"
|
||||
class="icon-download"
|
||||
v-btn-permission="''"
|
||||
/>
|
||||
<i
|
||||
title="下载带水印"
|
||||
@click="downloadFileByWater(item.id, item.name)"
|
||||
class="icon-download2"
|
||||
v-btn-permission="''"
|
||||
/>
|
||||
</p>
|
||||
</div>
|
||||
<div v-else>
|
||||
暂无数据
|
||||
</div>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</div>
|
||||
<el-button style="width: 100%" :icon=" foldFormFlag ? 'el-icon-caret-top': 'el-icon-caret-bottom'" @click="foldForm">{{ foldFormFlag ? '隐藏基础信息' : '展开基础信息' }}</el-button>
|
||||
</el-form>
|
||||
<ProcessTitle>
|
||||
<template slot="title">参与人信息</template>
|
||||
</ProcessTitle>
|
||||
<div class="tableTitle">
|
||||
<div class="tableButton">
|
||||
<!-- <el-button plain class="common-button-primary" size="mini" @click="addPeople">添加</el-button>-->
|
||||
<!-- <el-button plain class="common-button-primary" size="mini" @click="deletePeople">批量删除</el-button>-->
|
||||
</div>
|
||||
</div>
|
||||
<el-table border
|
||||
ref="selection"
|
||||
:data="participantsData"
|
||||
tooltip-effect="dark"
|
||||
style="width: 100%;"
|
||||
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px',
|
||||
fontWeight: 'bold', height: '48px'}"
|
||||
row-key="id">
|
||||
<el-table-column type="selection" width="55" align="center"/>
|
||||
<el-table-column
|
||||
prop="workPeople"
|
||||
label="参与人"
|
||||
width="150"
|
||||
align="center">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="duties"
|
||||
label="职务"
|
||||
align="center">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="institutionName"
|
||||
label="所在部门"
|
||||
width="200"
|
||||
align="center">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="email"
|
||||
label="联系方式"
|
||||
width="350"
|
||||
align="center">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="tenure"
|
||||
label="任期"
|
||||
align="center">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="account"
|
||||
label="账户"
|
||||
width="200"
|
||||
align="center">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="password"
|
||||
label="密码"
|
||||
width="350"
|
||||
align="center">
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<ProcessTitle>
|
||||
<template slot="title">协会信息</template>
|
||||
</ProcessTitle>
|
||||
<div class="tableTitle">
|
||||
<div class="tableButton">
|
||||
<!-- <el-button plain class="common-button-primary" size="mini" @click="addPeople">添加</el-button>-->
|
||||
<!-- <el-button plain class="common-button-primary" size="mini" @click="deletePeople">批量删除</el-button>-->
|
||||
</div>
|
||||
</div>
|
||||
<el-table border
|
||||
ref="selection"
|
||||
:data="associationData"
|
||||
tooltip-effect="dark"
|
||||
style="width: 100%;"
|
||||
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px',
|
||||
fontWeight: 'bold', height: '48px'}"
|
||||
row-key="id">
|
||||
<el-table-column type="selection" width="55" align="center"/>
|
||||
<el-table-column
|
||||
prop="contactPerson"
|
||||
label="协会联络人"
|
||||
align="center">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="telephone"
|
||||
label="电话"
|
||||
align="center">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="mailbox"
|
||||
label="邮箱"
|
||||
align="center">
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
</div>
|
||||
<el-collapse accordion>
|
||||
<el-collapse-item title="回执说明">
|
||||
<div style="margin: 10px 0;">
|
||||
<el-input
|
||||
type="textarea"
|
||||
:rows="3"
|
||||
resize="none"
|
||||
placeholder="请输入意见"
|
||||
v-model="commentText">
|
||||
</el-input>
|
||||
</div>
|
||||
</el-collapse-item>
|
||||
</el-collapse>
|
||||
</div>
|
||||
<div class="content" v-show="active === '3'">
|
||||
<el-table
|
||||
height="100%"
|
||||
ref="selection"
|
||||
:data="histortData"
|
||||
tooltip-effect="dark"
|
||||
style="width: 100%"
|
||||
border
|
||||
row-key="id"
|
||||
:header-cell-style="{background: '#f8f8f9', color: '#515a6e'}">
|
||||
<el-table-column
|
||||
prop="name"
|
||||
label="任务步骤"
|
||||
align="center"
|
||||
width="130"
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="assignee"
|
||||
label="任务受理人"
|
||||
align="center"
|
||||
width="130"
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="createTime"
|
||||
label="创建时间"
|
||||
width="130"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.createTime ? $moment(scope.row.createTime).format('YYYY-MM-DD') : '' }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="endTime"
|
||||
label="完成时间"
|
||||
width="130"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.endTime ? $moment(scope.row.endTime).format('YYYY-MM-DD') : '' }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="comment"
|
||||
label="流程信息"
|
||||
width="130"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.commentText }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="completeFlag"
|
||||
label="状态"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.endTime ? '已完成' : '未完成'}}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
</div>
|
||||
<ProcessFooter
|
||||
show-back
|
||||
show-submit
|
||||
:submitLoading="isSubmit"
|
||||
:transfer-loading="isTransfer"
|
||||
:saveLoading="saveLoading"
|
||||
:approval="true"
|
||||
@back="beforeBack"
|
||||
@transfer="handleTransfer"
|
||||
@submit="handleSubmit"
|
||||
>
|
||||
</ProcessFooter>
|
||||
<Role-tree
|
||||
check-box
|
||||
:is-title="drawerTitle"
|
||||
:is-visible.sync="modalshowflag"
|
||||
@checkedRole="checkedRole"
|
||||
:nodeList="nodeList"
|
||||
></Role-tree>
|
||||
<!-- 福田全公司选人解决方案 -->
|
||||
<Role-tree
|
||||
check-box
|
||||
:is-title="drawerTitle"
|
||||
:is-visible.sync="drawerModal"
|
||||
@checkedRole="checkedTransferRole"
|
||||
:nodeList="nodeList"
|
||||
></Role-tree>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { Dialog } from 'vant';
|
||||
import ProcessHeaderPhone from '../../components/ProcessHeaderPhone'
|
||||
import ProcessHeader from "../../components/ProcessHeader";
|
||||
import ProcessTitle from "process/components/ProcessTitle";
|
||||
import ProcessFooter from "process/components/ProcessFooter";
|
||||
import { changeAssigneeNew,inboundLiaisonDetail } from "api/process";
|
||||
|
||||
export default {
|
||||
name: "phoneGrbzhxhStep4",
|
||||
components: {
|
||||
ProcessHeader,
|
||||
ProcessTitle,
|
||||
ProcessHeaderPhone,
|
||||
ProcessFooter
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
//切换tab
|
||||
active: "1",
|
||||
foldFormFlag: true,
|
||||
isSubmit: false,
|
||||
isTransfer: false,
|
||||
saveLoading: false,
|
||||
loading: false,
|
||||
modalshowflag: false,
|
||||
drawerModal: false,
|
||||
drawerTitle: '',
|
||||
nodeList: [],
|
||||
fileList:[],
|
||||
commentText: '',
|
||||
uploadFileListPath: "api/att/attFile/upload", // 上传的地址
|
||||
fileInfoList: [], // 上传的附件
|
||||
userId: this.$store.getters.userInfo.userId,
|
||||
taskIds: this.$route.query.taskIds,
|
||||
signFlag:'',
|
||||
wbbzform: {
|
||||
reportingUnit:'',
|
||||
associationName: '',
|
||||
committee:'',
|
||||
workingGroup:'',
|
||||
personnelRole:'',
|
||||
membershipTime:'',
|
||||
userId: this.$store.getters.userInfo.userId,
|
||||
taskIds: this.$route.query.taskIds,
|
||||
pId: this.$route.query.prcId,
|
||||
participantsData: [{
|
||||
name: '', //参与人
|
||||
duties: '', //职务
|
||||
institutionName: '', //所在部门
|
||||
email: '', //联系方式
|
||||
tenure:'', //任期
|
||||
account:'', //账户
|
||||
password:'', //密码
|
||||
}],
|
||||
associationData: [{
|
||||
contactPerson: '', //协议联络人
|
||||
telephone: '', //电话
|
||||
mailbox:'', //邮箱
|
||||
}],
|
||||
},
|
||||
selectList2: [],
|
||||
selectList1: [],
|
||||
formRules: {},
|
||||
participantsData: [], //参与人表格信息
|
||||
associationData: [], //协会表格信息
|
||||
detailData: [], //审批历史信息
|
||||
selectedId: "",
|
||||
associationOptions: [{
|
||||
value: '选项1',
|
||||
label: '1'
|
||||
}, {
|
||||
value: '选项2',
|
||||
label: '2'
|
||||
},{
|
||||
value: '选项3',
|
||||
label: '3'
|
||||
}],
|
||||
};
|
||||
},
|
||||
methods: {
|
||||
//确认转办
|
||||
checkedTransferRole (data) {
|
||||
this.assigneeNewLoading = true
|
||||
changeAssigneeNew({
|
||||
taskId: this.$route.query.taskIds, // 任务id
|
||||
assignee: data[0].id, // 被委托人
|
||||
userId: this.$store.getters.userInfo.userId, // 委托人
|
||||
pId: this.$route.query.prcId // 流程实例
|
||||
}).then(res => {
|
||||
this.isTransfer = false
|
||||
if (res.success) {
|
||||
this.drawerModal = false
|
||||
this.$message.success('调整成功')
|
||||
this.$router.push("/processCenter");
|
||||
this.processNum()
|
||||
} else {
|
||||
this.$message.warning(res.message)
|
||||
}
|
||||
})
|
||||
},
|
||||
processTable() {
|
||||
this.$http.get("lawss/activiti/get_list_by_instance", {
|
||||
prcNum: this.$route.query.prcNum,
|
||||
sortWord: this.shunxu ? this.paixu : "",
|
||||
shunxu: this.shunxu
|
||||
}, {
|
||||
loading: "loading",
|
||||
_this: this
|
||||
}, res => {
|
||||
this.detailData = res;
|
||||
}, e => {
|
||||
});
|
||||
},
|
||||
|
||||
choiceZRRS(row, index) {
|
||||
this.selectedId = index;
|
||||
this.drawerTitle = "选择责任人";
|
||||
this.nodeList = [];
|
||||
this.zrIndex = index;
|
||||
this.nodeList.push(row);
|
||||
this.modalshowflag = true;
|
||||
},
|
||||
checkedRole(data) {
|
||||
if (this.participantsData.length > 1) {
|
||||
let parList = data
|
||||
this.participantsData.forEach(item => {
|
||||
parList.forEach(items => {
|
||||
if (items.name === item.workPeople) {
|
||||
this.$message.warning('请勿重复添加参与人')
|
||||
return
|
||||
} else {
|
||||
console.log(items);
|
||||
}
|
||||
})
|
||||
})
|
||||
} else {
|
||||
this.participantsData = data
|
||||
this.participantsData.forEach(item => {
|
||||
this.$set(item, "workPeople", item.name)
|
||||
});
|
||||
this.participantsData = JSON.parse(JSON.stringify(this.participantsData));
|
||||
}
|
||||
},
|
||||
|
||||
handleTabs(type) {
|
||||
this.active = type;
|
||||
},
|
||||
foldForm() {
|
||||
this.foldFormFlag = !this.foldFormFlag
|
||||
},
|
||||
//不备案
|
||||
handleRecord() {
|
||||
|
||||
},
|
||||
getData() {
|
||||
return new Promise((resolve, reject) => {
|
||||
inboundLiaisonDetail({
|
||||
taskIds: this.$route.query.taskIds,
|
||||
pId: this.$route.query.prcId
|
||||
}).then(res => {
|
||||
if (res) {
|
||||
const processForm = JSON.parse(res.mesg);
|
||||
this.getFormFieldList(processForm);
|
||||
}
|
||||
}).catch(e => {
|
||||
});
|
||||
});
|
||||
},
|
||||
/**
|
||||
* @description: 动态表单读取
|
||||
*/
|
||||
getFormFieldList(item) {
|
||||
console.log(item);
|
||||
this.$nextTick(() => {
|
||||
this.wbbzform = JSON.parse(JSON.stringify(item));
|
||||
this.associationData = item.associationData
|
||||
this.participantsData = item.participantsData
|
||||
item.fileName.forEach(itemId => {
|
||||
this.fileIds = itemId.id
|
||||
this.getFileInfo();
|
||||
});
|
||||
});
|
||||
},
|
||||
// 请求上传的文件信息
|
||||
getFileInfo() {
|
||||
this.$http.get("att/attFile/getMultiFileInfos", {
|
||||
fileIds: this.fileIds
|
||||
}, {
|
||||
_this: this
|
||||
}, res => {
|
||||
this.$nextTick(() => {
|
||||
res.data.map(item => {
|
||||
// 赋值要回显的上传文件内容
|
||||
this.fileList.push({
|
||||
name: item.oldFileName,
|
||||
uid: item.uid,
|
||||
status: item.status,
|
||||
id: item.id
|
||||
});
|
||||
});
|
||||
});
|
||||
}, e => {
|
||||
});
|
||||
},
|
||||
/**
|
||||
* @Description: 点击下载
|
||||
*/
|
||||
downloadFile(attId) {
|
||||
if (attId != null && attId !== "") {
|
||||
window.location.href = "/api/att/attFile/downloadFileForSar?fileId=" + attId;
|
||||
} else {
|
||||
this.$message.error("请选择要下载的文件");
|
||||
}
|
||||
},
|
||||
downloadFileByWater(attId, fileSuffix) {
|
||||
let fileExtension = fileSuffix.substring(fileSuffix.lastIndexOf(".") + 1);
|
||||
if (fileExtension !== "pdf" && fileExtension !== "PDF") {
|
||||
this.$message.error("水印下载仅支持PDF,pdf格式文件");
|
||||
} else {
|
||||
if (attId != null && attId !== "") {
|
||||
window.location.href = "/api/att/attFile/downloadFileForSarWaterMark?fileId=" + attId;
|
||||
} else {
|
||||
this.$message.error("请选择要下载的文件");
|
||||
}
|
||||
}
|
||||
},
|
||||
//流程转办
|
||||
handleTransfer(){
|
||||
this.drawerModal = true
|
||||
this.drawerTitle = '转办处理人'
|
||||
this.selectPeople = row
|
||||
},
|
||||
//流程提交
|
||||
handleSubmit() {
|
||||
this.isSubmit = true
|
||||
this.wbbzform.bzFlag = '1',
|
||||
this.wbbzform.passUser = this.$store.getters.userInfo.userId,
|
||||
this.wbbzform.commentText = this.commentText;
|
||||
this.wbbzform.participantsData = this.participantsData
|
||||
this.wbbzform.associationData = this.associationData
|
||||
var json = JSON.stringify( this.wbbzform)
|
||||
this.$http.post("lawss/activiti/completeTask", {
|
||||
taskIds: this.taskIds,
|
||||
userId: this.userId,
|
||||
json: json
|
||||
}, {
|
||||
_this: this
|
||||
}, res => {
|
||||
if (res.success) {
|
||||
this.$message.success(res.message);
|
||||
this.$router.push("/processCenter");
|
||||
}
|
||||
this.isSubmit = false
|
||||
}, e => {
|
||||
|
||||
});
|
||||
},
|
||||
//流程驳回
|
||||
beforeBack(){
|
||||
this.isSubmit = true
|
||||
this.wbbzform.bzFlag = '2',
|
||||
this.wbbzform.passUser = this.$store.getters.userInfo.userId,
|
||||
this.wbbzform.commentText = this.commentText;
|
||||
this.wbbzform.participantsData = this.participantsData
|
||||
this.wbbzform.associationData = this.associationData
|
||||
var json = JSON.stringify( this.wbbzform)
|
||||
this.$http.post("lawss/activiti/completeTask", {
|
||||
taskIds: this.taskIds,
|
||||
userId: this.userId,
|
||||
json: json
|
||||
}, {
|
||||
_this: this
|
||||
}, res => {
|
||||
if (res.success) {
|
||||
this.$message.success(res.message);
|
||||
this.$router.push("/processCenter");
|
||||
}
|
||||
this.isSubmit = false
|
||||
}, e => {
|
||||
|
||||
});
|
||||
},
|
||||
},
|
||||
mounted() {
|
||||
this.getData()
|
||||
this.processTable()
|
||||
},
|
||||
computed: {
|
||||
listNoDataText() {
|
||||
return this.processType === 1 ? "暂无待办流程" : "暂无已办流程";
|
||||
}
|
||||
},
|
||||
};
|
||||
</script>
|
||||
|
||||
<style lang="less" scoped>
|
||||
@import '~@/assets/styles/phone';
|
||||
.phoneGrbzhxhStep4 {
|
||||
/deep/.van-dialog__content {
|
||||
min-height: 300px;
|
||||
padding: 10px;
|
||||
}
|
||||
.prc-content-border {
|
||||
overflow: auto;
|
||||
}
|
||||
/deep/.prc-content-border .el-form-item__content {
|
||||
width: 270px;
|
||||
}
|
||||
.headerTabs {
|
||||
height: 52px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
position: absolute;
|
||||
top: 52px;
|
||||
right: 10px;
|
||||
.headerTabsItem {
|
||||
border: 1px solid #c1c1c1;
|
||||
padding: 0 5px;
|
||||
height: 30px;
|
||||
line-height: 30px;
|
||||
cursor: pointer;
|
||||
}
|
||||
.active {
|
||||
border: 1px solid #E6A23C;
|
||||
color: #fff;
|
||||
background: #E6A23C;
|
||||
}
|
||||
}
|
||||
.content {
|
||||
border-top: 1px solid #DCDFE6;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: space-between;
|
||||
margin-top: 52px;
|
||||
height: calc(~'100% - 155px');
|
||||
overflow: auto;
|
||||
.tableTitle {
|
||||
margin-bottom: 10px;
|
||||
height: 30px;
|
||||
line-height: 30px;
|
||||
position: relative;
|
||||
font-size: 13px;
|
||||
font-weight: bold;
|
||||
.tableButton {
|
||||
position: absolute;
|
||||
right: 0;
|
||||
top: 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
||||
@@ -0,0 +1,13 @@
|
||||
<template>
|
||||
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
name: "step3"
|
||||
};
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
|
||||
</style>
|
||||
@@ -0,0 +1,715 @@
|
||||
<template>
|
||||
<div class="phoneXmqdqrStep5 phoneBox">
|
||||
<ProcessHeaderPhone toggle>
|
||||
<template slot="proName">项目清单确认流程</template>
|
||||
<template slot="proNode">法规部经理审批</template>
|
||||
</ProcessHeaderPhone>
|
||||
<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-show="active === '1'">
|
||||
<div style="overflow: auto;">
|
||||
<el-form
|
||||
:model="qdform"
|
||||
class="label-input-form"
|
||||
label-width="210px"
|
||||
>
|
||||
<ProcessTitle>
|
||||
<template slot="title">基础信息</template>
|
||||
</ProcessTitle>
|
||||
<el-collapse-transition>
|
||||
<div class="prc-content-border" v-if="foldFormFlag === false">
|
||||
<el-row :gutter="24">
|
||||
<el-col :span="24">
|
||||
<el-form-item label="项目编号" prop="projectNumber" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
v-model="qdform.projectNumber"
|
||||
placeholder="请输入项目编号"
|
||||
disabled
|
||||
clearable
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="项目名称" prop="projectName" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
v-model="qdform.projectName"
|
||||
placeholder="请输入项目名称"
|
||||
disabled
|
||||
clearable
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="清单名称" prop="detailedListName" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
v-model="qdform.detailedListName"
|
||||
placeholder="请输入清单名称"
|
||||
disabled
|
||||
clearable
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</div>
|
||||
</el-collapse-transition>
|
||||
<el-button v-if="foldFormFlag === false" style="width: 100%" icon="el-icon-caret-top" @click="foldForm">隐藏基础信息</el-button>
|
||||
<el-button v-if="foldFormFlag === true" style="width: 100%" icon="el-icon-caret-bottom" @click="foldForm">展开基础信息</el-button>
|
||||
<div class="prc-content-border" v-if="foldFormFlag === true" style="display: none">
|
||||
<el-row :gutter="24">
|
||||
<el-col :span="24">
|
||||
<el-form-item label="项目编号" prop="projectNumber" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
v-model="qdform.projectNumber"
|
||||
placeholder="请输入项目编号"
|
||||
disabled
|
||||
clearable
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="项目名称" prop="projectName" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
v-model="qdform.projectName"
|
||||
placeholder="请输入项目名称"
|
||||
disabled
|
||||
clearable
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="清单名称" prop="detailedListName" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
v-model="qdform.detailedListName"
|
||||
placeholder="请输入清单名称"
|
||||
disabled
|
||||
clearable
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</div>
|
||||
</el-form>
|
||||
</div>
|
||||
<ProcessTitle>
|
||||
<template slot="title">填写信息</template>
|
||||
</ProcessTitle>
|
||||
<el-table
|
||||
:data="dataList"
|
||||
border
|
||||
ref="selection"
|
||||
height="100%"
|
||||
@selection-change="selectStandChange"
|
||||
style="width: 100%; border:1px solid #ccc"
|
||||
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px',
|
||||
fontWeight: 'bold', height: '48px'}">
|
||||
<el-table-column
|
||||
align="center"
|
||||
width="200px"
|
||||
label="标准号"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<a v-if="scope.row.standYear" class="table-jump" @click="handlePreview(scope.row)">{{ scope.row.standSort
|
||||
}} {{ scope.row.standNumber }}-{{ scope.row.standYear }}</a>
|
||||
<a v-else @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.standSort }}
|
||||
{{ scope.row.standNumber }}</a>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="standName"
|
||||
align="center"
|
||||
min-width="300"
|
||||
label="中文名称"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<a @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.standName }}</a>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="standEnName"
|
||||
label="英文名称"
|
||||
min-width="300"
|
||||
align="center"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<a @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.standEnName }}</a>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="ssrq"
|
||||
width="190px"
|
||||
align="center"
|
||||
label="标准实施日期">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.ssrq ? scope.row.ssrq.substring(0, 10) : '-' }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="xcxssrq"
|
||||
width="190px"
|
||||
align="center"
|
||||
label="新车型实施日期">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.xcxssrq ? scope.row.xcxssrq.substring(0, 10) : '-' }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="zccssrq"
|
||||
align="center"
|
||||
width="190px"
|
||||
label="在产车实施日期">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.zccssrq ? scope.row.zccssrq.substring(0, 10) : '-' }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="zrbm"
|
||||
label="责任部门"
|
||||
align="center"
|
||||
width="180px"
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="involve"
|
||||
width="160px"
|
||||
align="center"
|
||||
label="标准是否涉及">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="remarks"
|
||||
align="center"
|
||||
width="180"
|
||||
label="备注">
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<el-collapse accordion>
|
||||
<el-collapse-item title="审批意见">
|
||||
<div style="margin: 10px 0;">
|
||||
<el-input
|
||||
type="textarea"
|
||||
:rows="3"
|
||||
resize="none"
|
||||
placeholder="请输入意见"
|
||||
v-model="commentText">
|
||||
</el-input>
|
||||
</div>
|
||||
</el-collapse-item>
|
||||
</el-collapse>
|
||||
</div>
|
||||
<div class="content" v-show="active === '2'">
|
||||
<el-table
|
||||
height="100%"
|
||||
ref="selection"
|
||||
:data="histortData"
|
||||
tooltip-effect="dark"
|
||||
style="width: 100%"
|
||||
border
|
||||
row-key="id"
|
||||
:header-cell-style="{background: '#f8f8f9', color: '#515a6e'}">
|
||||
<el-table-column
|
||||
prop="name"
|
||||
label="任务步骤"
|
||||
align="center"
|
||||
width="130"
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="assignee"
|
||||
label="任务受理人"
|
||||
align="center"
|
||||
width="130"
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="createTime"
|
||||
label="创建时间"
|
||||
width="130"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.createTime ? $moment(scope.row.createTime).format('YYYY-MM-DD') : '' }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="endTime"
|
||||
label="完成时间"
|
||||
width="130"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.endTime ? $moment(scope.row.endTime).format('YYYY-MM-DD') : '' }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="comment"
|
||||
label="流程信息"
|
||||
width="130"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.commentText }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="completeFlag"
|
||||
label="状态"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.endTime ? '已完成' : '未完成'}}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
</div>
|
||||
<ProcessFooter
|
||||
show-back
|
||||
show-submit
|
||||
:transfer-loading="isTransfer"
|
||||
:submitLoading="isSubmit"
|
||||
:saveLoading="saveLoading"
|
||||
:approval="true"
|
||||
@transfer="handleTransfer"
|
||||
@back="beforeBack"
|
||||
@submit="handleSubmit"
|
||||
>
|
||||
</ProcessFooter>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { Dialog } from 'vant';
|
||||
import ProcessHeaderPhone from '../../components/ProcessHeaderPhone'
|
||||
import ProcessFooter from '../../components/ProcessFooter'
|
||||
import ProcessTitle from '../../components/ProcessTitle'
|
||||
import { inboundLiaisonDetail, processCreateStand, changeAssigneeNew, execTask, saveTaskForPub } from "api/process";
|
||||
import axios from "axios";
|
||||
import ProcessHeader from "process/components/ProcessHeader";
|
||||
|
||||
export default {
|
||||
name: "phoneXmqdqrStep5",
|
||||
components: {
|
||||
ProcessTitle,
|
||||
ProcessHeader,
|
||||
ProcessHeaderPhone,
|
||||
ProcessFooter
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
//折叠的标志,true为折叠,false为不折叠
|
||||
foldFormFlag: false,
|
||||
lawInfoTableLoading: true,
|
||||
lawInfoTable:[],
|
||||
isTransfer: false,
|
||||
// 调整处理人抽屉状态
|
||||
drawerModal: false,
|
||||
drawerTitle:'',
|
||||
active: "1",
|
||||
nodeList: [],
|
||||
nodeList2: [],
|
||||
loading: false,
|
||||
// 当前流程类型(1待办/2已办)
|
||||
processType: 1,
|
||||
isSubmit: false,
|
||||
saveLoading: false,
|
||||
submitShow: false,
|
||||
acceptShow: false,
|
||||
todoId: '',
|
||||
projectId: "",
|
||||
detailedId: "",
|
||||
standSortOptions: [],
|
||||
standList: [],
|
||||
projectStand:[],
|
||||
standardData: [],
|
||||
handleSelectTableList: [], //标准数据
|
||||
page: 1,
|
||||
pageSize: this.$store.getters.userInfo.configContent,
|
||||
total: 0,
|
||||
//查询清单下标准数据
|
||||
standCommonlySearch: {
|
||||
standSort: "",
|
||||
standNumber: "",
|
||||
standType: "",
|
||||
page: 1,
|
||||
Size: this.$store.getters.userInfo.configContent
|
||||
},
|
||||
//表单的数据
|
||||
qdform: {
|
||||
BZFlag: " ", //1审批通过 其他为驳回
|
||||
projectNumber: "", //项目编号
|
||||
projectName: "", //项目名称
|
||||
dataList: [], //项目下的标准数据
|
||||
breakdownList: [] //标准下的分解单数据
|
||||
},
|
||||
dataList: [], //展示的标准数据
|
||||
commentText: "", //审批意见
|
||||
detailData: [],//流程历史数据
|
||||
userId: this.$store.getters.userInfo.userId,
|
||||
taskIds: this.$route.query.taskIds,
|
||||
pId: this.$route.query.prcId,
|
||||
standMap: new Map(),
|
||||
textStatusMap: {},// 文本状态id与name对应
|
||||
};
|
||||
},
|
||||
mounted() {
|
||||
this.processTable();
|
||||
this.getData();
|
||||
// 查询各下拉框数据
|
||||
this.$http.get("sys/dictype/getDicTypeListCode", {}, {
|
||||
_this: this,
|
||||
loading: "loading"
|
||||
}, res => {
|
||||
this.energyKindOptions = res.data.ENERGYTYPES; //适用车型
|
||||
this.standSortOptions = res.data.STANDCLASSIFY; // 标准类别
|
||||
this.setMap(res.data.WBZTCLASS);// 文本状态
|
||||
this.setMap(this.zrbmMap, res.data.ZRBMCLASS);
|
||||
this.showLocalProductData(this.getLocalPro);
|
||||
}, e => {
|
||||
});
|
||||
},
|
||||
methods: {
|
||||
//折叠/展开基础信息方法
|
||||
foldForm() {
|
||||
this.foldFormFlag = !this.foldFormFlag
|
||||
},
|
||||
formatIssueDate(str) {
|
||||
const momentDate = this.$moment(str)
|
||||
if (momentDate.isValid()) {
|
||||
return this.$moment(str).format('YYYY-MM-DD')
|
||||
} else {
|
||||
return str
|
||||
}
|
||||
},
|
||||
//确认转办
|
||||
checkedTransferRole (data) {
|
||||
this.assigneeNewLoading = true
|
||||
changeAssigneeNew({
|
||||
taskId: this.$route.query.taskIds, // 任务id
|
||||
assignee: data[0].id, // 被委托人
|
||||
userId: this.$store.getters.userInfo.userId, // 委托人
|
||||
pId: this.$route.query.prcId // 流程实例
|
||||
}).then(res => {
|
||||
this.isTransfer = false
|
||||
if (res.success) {
|
||||
this.drawerModal = false
|
||||
this.$message.success('调整成功')
|
||||
this.$router.push("/processCenter");
|
||||
this.processNum()
|
||||
} else {
|
||||
this.$message.warning(res.message)
|
||||
}
|
||||
})
|
||||
},
|
||||
// 请求转换流程图
|
||||
processNum (row) {
|
||||
axios.request({
|
||||
url: '/api/lawss/activiti/getImg?_t=' + new Date().getTime(),
|
||||
responseType: 'blob',
|
||||
method: 'get',
|
||||
params: {
|
||||
prcNum: this.$route.query.prcNum
|
||||
}
|
||||
}).then(res => {
|
||||
// let blob = new Blob([res.data], {type: 'image/jpg'})
|
||||
// let url = window.URL.createObjectURL(res.data)
|
||||
this.processStep = window.URL.createObjectURL(res.data)
|
||||
})
|
||||
},
|
||||
//转办事件
|
||||
handleTransfer(){
|
||||
this.drawerModal = true
|
||||
this.drawerTitle = '转办处理人'
|
||||
this.selectPeople = row
|
||||
},
|
||||
// 将文本状态的id与name对应
|
||||
setMap(data) {
|
||||
data.forEach(item => {
|
||||
this.$set(this.textStatusMap, item.value, item.label)
|
||||
})
|
||||
},
|
||||
processTable() {
|
||||
this.$http.get("lawss/activiti/get_list_by_instance", {
|
||||
prcNum: this.$route.query.prcNum,
|
||||
sortWord: this.shunxu ? this.paixu : "",
|
||||
shunxu: this.shunxu
|
||||
}, {
|
||||
loading: "loading",
|
||||
_this: this
|
||||
}, res => {
|
||||
this.detailData = res;
|
||||
}, e => {
|
||||
});
|
||||
},
|
||||
//tab改变
|
||||
handleTabs(type) {
|
||||
this.active = type;
|
||||
},
|
||||
// 点击查看
|
||||
handlePreview(item) {
|
||||
let routeUrl = this.$router.resolve({
|
||||
name: "OtherStandardDetails",
|
||||
params: {
|
||||
id: item.id,
|
||||
pageType: "INLAND_STAND"
|
||||
}
|
||||
});
|
||||
window.open(routeUrl.href, "_blank");
|
||||
},
|
||||
//获取数据
|
||||
getData() {
|
||||
return new Promise((resolve, reject) => {
|
||||
inboundLiaisonDetail({
|
||||
taskIds: this.taskIds,
|
||||
pId: this.pId
|
||||
}).then(res => {
|
||||
if (res) {
|
||||
const processForm = JSON.parse(res.mesg);
|
||||
let commitStatus = res.commitStatus
|
||||
if(commitStatus && commitStatus > 0){
|
||||
this.acceptShow = true
|
||||
this.submitShow = false
|
||||
}else {
|
||||
this.acceptShow = false
|
||||
this.submitShow = true
|
||||
}
|
||||
this.todoId = res.id
|
||||
this.getFormFieldList(processForm);
|
||||
}
|
||||
}).catch(e => {
|
||||
});
|
||||
});
|
||||
},
|
||||
//动态表单读取
|
||||
getFormFieldList(item) {
|
||||
this.$nextTick(() => {
|
||||
if(item.form === undefined){
|
||||
this.qdform = JSON.parse(JSON.stringify(item));
|
||||
this.qdform.prcNum = this.prcNum;
|
||||
this.qdform.prcName = this.prcName;
|
||||
this.qdform["id"] = item.id;
|
||||
this.dataList = item.dataList
|
||||
this.dataList.forEach(item => {
|
||||
if(item.involve === 'involve'){
|
||||
item.involve = '涉及'
|
||||
}else if(item.involve === 'noInvolve'){
|
||||
item.involve = '不涉及'
|
||||
}
|
||||
})
|
||||
// this.projectId = item.projectId;
|
||||
// //获取清单id 查询对应清单下的标准
|
||||
// this.detailedId = item.detailedListId;
|
||||
// this.getStandData();
|
||||
}else{
|
||||
this.qdform = item.form
|
||||
this.dataList =item.form.dataList
|
||||
this.detailedId = item.form.detailedListId;
|
||||
}
|
||||
});
|
||||
},
|
||||
//查询清单下的标准
|
||||
getStandData() {
|
||||
this.$http.get("sarStandProjectLibrary/queryStandInfo", { id: this.projectId, cars: '1', }, {
|
||||
_this: this
|
||||
}, res => {
|
||||
this.dataList = res.data.records;
|
||||
this.dataList.forEach(item => {
|
||||
// 责任部门转换
|
||||
if (item.zrbm !== null || item.zrbm !== "" ) {
|
||||
let k = (item.zrbm || "").split(",");
|
||||
for (let i in this.zrbmOptions) {
|
||||
for (let m = 0; m < k.length; m++) {
|
||||
if (this.zrbmOptions[i].value === k[m]) {
|
||||
k[m] = this.zrbmOptions[i].label;
|
||||
}
|
||||
item.zrbm = k.join(",");
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
this.dataList.map(item => {
|
||||
if(item.zrbm === '[]'){
|
||||
item.zrbm = ''
|
||||
}
|
||||
})
|
||||
});
|
||||
},
|
||||
// 接受按钮
|
||||
handleAccept(){
|
||||
this.isSubmit = true
|
||||
execTask({
|
||||
todoId: this.todoId // 当前节点ID
|
||||
}).then(res => {
|
||||
if (res.sign && res.sign === '0') {
|
||||
this.$message.success('接收成功')
|
||||
this.$router.push('/processCenter')
|
||||
}
|
||||
this.isSubmit = false
|
||||
})
|
||||
},
|
||||
//保存事件
|
||||
handleSave() {
|
||||
this.saveLoading = true;
|
||||
let _formData = new FormData();
|
||||
this.qdform.dataList = this.dataList
|
||||
_formData.append("id", this.bpnId || "");
|
||||
_formData.append("prcType", "10");
|
||||
_formData.append('taskIds', this.taskIds)
|
||||
_formData.append("json", JSON.stringify({
|
||||
form: this.qdform,
|
||||
commentText: this.commentText
|
||||
}));
|
||||
saveTaskForPub(_formData).then(res => {
|
||||
this.saveLoading = false;
|
||||
this.$message.success("保存成功");
|
||||
this.bpnId = res.result;
|
||||
}).catch(e => {
|
||||
this.saveLoading = false;
|
||||
});
|
||||
},
|
||||
handleRemark(){
|
||||
this.dataList.map(item => {
|
||||
if(item.involve === 'noInvolve'){
|
||||
comFlag
|
||||
}
|
||||
})
|
||||
},
|
||||
//驳回事件
|
||||
beforeBack() {
|
||||
if (this.commentText === null || this.commentText === undefined || this.commentText === "") {
|
||||
this.$message.warning("请填写审批意见");
|
||||
} else {
|
||||
this.qdform.passFlag = "1";
|
||||
this.qdform.commentText = this.commentText;
|
||||
const json = JSON.stringify(this.qdform);
|
||||
this.$http.post("lawss/activiti/completeTask", {
|
||||
taskIds: this.taskIds,
|
||||
userId: this.userId,
|
||||
json: json
|
||||
}, {
|
||||
_this: this
|
||||
}, res => {
|
||||
if (res.success) {
|
||||
this.$message.success(res.message);
|
||||
this.$router.push("/processCenter");
|
||||
}
|
||||
}, e => {
|
||||
});
|
||||
}
|
||||
},
|
||||
//提交事件
|
||||
handleSubmit() {
|
||||
this.isSubmit = true;
|
||||
this.qdform.passFlag = "0";
|
||||
this.qdform.commentText = this.commentText;
|
||||
this.qdform.dataList = this.dataList
|
||||
const json = JSON.stringify(this.qdform);
|
||||
this.$http.post("lawss/activiti/completeTask", {
|
||||
taskIds: this.taskIds,
|
||||
userId: this.userId,
|
||||
json: json
|
||||
}, {
|
||||
_this: this
|
||||
}, res => {
|
||||
if (res.success) {
|
||||
this.$message.success(res.message);
|
||||
this.$router.push("/processCenter");
|
||||
}
|
||||
this.isSubmit = false;
|
||||
}, e => {
|
||||
});
|
||||
},
|
||||
//添加标准勾选框数据
|
||||
handleSelectTableChange (data) {
|
||||
this.handleSelectTableList = data
|
||||
console.log(this.handleSelectTableList);
|
||||
},
|
||||
selectStandChange(data){
|
||||
this.projectStand = data
|
||||
},
|
||||
cancelStand() {
|
||||
this.standModel = false;
|
||||
},
|
||||
//添加标准带入事件
|
||||
okStand() {
|
||||
if(this.standList.length < 1){
|
||||
this.$message.warning('请至少选择一条数据进行添加')
|
||||
}else{
|
||||
this.standList.forEach(item =>{
|
||||
if(item.ssrq === "-"){
|
||||
item.ssrq = ''
|
||||
}
|
||||
if(item.zrbm === '[]'){
|
||||
item.zrbm =''
|
||||
}
|
||||
})
|
||||
this.standList.map(item => {
|
||||
let addIndex
|
||||
addIndex = this.dataList.findIndex(items =>{
|
||||
return items.id === item.id
|
||||
})
|
||||
if(addIndex > -1){
|
||||
this.$message.warning('请勿重复添加数据')
|
||||
}else{
|
||||
this.dataList.push(item)
|
||||
}
|
||||
})
|
||||
|
||||
this.standModel = false
|
||||
}
|
||||
|
||||
},
|
||||
},
|
||||
computed: {
|
||||
listNoDataText() {
|
||||
return this.processType === 1 ? "暂无待办流程" : "暂无已办流程";
|
||||
}
|
||||
},
|
||||
|
||||
};
|
||||
</script>
|
||||
|
||||
<style lang="less" scoped>
|
||||
@import '~@/assets/styles/phone';
|
||||
.phoneXmqdqrStep5 {
|
||||
/deep/.van-dialog__content {
|
||||
min-height: 300px;
|
||||
padding: 10px;
|
||||
}
|
||||
.prc-content-border {
|
||||
overflow: auto;
|
||||
}
|
||||
/deep/.prc-content-border .el-form-item__content {
|
||||
width: 270px;
|
||||
}
|
||||
.headerTabs {
|
||||
height: 52px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
position: absolute;
|
||||
top: 52px;
|
||||
right: 10px;
|
||||
.headerTabsItem {
|
||||
border: 1px solid #c1c1c1;
|
||||
padding: 0 5px;
|
||||
height: 30px;
|
||||
line-height: 30px;
|
||||
cursor: pointer;
|
||||
}
|
||||
.active {
|
||||
border: 1px solid #E6A23C;
|
||||
color: #fff;
|
||||
background: #E6A23C;
|
||||
}
|
||||
}
|
||||
.content {
|
||||
border-top: 1px solid #DCDFE6;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: space-between;
|
||||
margin-top: 52px;
|
||||
height: calc(~'100% - 155px');
|
||||
overflow: auto;
|
||||
.tableTitle {
|
||||
margin-bottom: 10px;
|
||||
height: 30px;
|
||||
line-height: 30px;
|
||||
position: relative;
|
||||
font-size: 13px;
|
||||
font-weight: bold;
|
||||
.tableButton {
|
||||
position: absolute;
|
||||
right: 0;
|
||||
top: 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
||||
@@ -0,0 +1,457 @@
|
||||
<template>
|
||||
<div class="phoneZczqyjStep4">
|
||||
<ProcessHeaderPhone toggle>
|
||||
<template slot="proName">政策征求意见流程</template>
|
||||
<template slot="proNode">责任对接人审核</template>
|
||||
</ProcessHeaderPhone>
|
||||
<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-show="active === '1'">
|
||||
<div style="flex: auto; overflow: auto;">
|
||||
<el-form
|
||||
ref="zczqyjForm"
|
||||
:model="form"
|
||||
:rules="formRules"
|
||||
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="政策编号" prop="lawsNumber" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
disabled
|
||||
v-model="form.lawsNumber"
|
||||
placeholder="请输入政策编号"
|
||||
clearable
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="政策名称" prop="lawsName" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
disabled
|
||||
v-model="form.lawsName"
|
||||
placeholder="请输入政策名称"
|
||||
clearable
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</div>
|
||||
</el-form>
|
||||
<ProcessTitle>
|
||||
<template slot="title">征求意见列表</template>
|
||||
</ProcessTitle>
|
||||
<el-table
|
||||
ref="multipleTable"
|
||||
:data="data"
|
||||
tooltip-effect="dark"
|
||||
border
|
||||
style="width: 100%; flex: auto;"
|
||||
class="drag-table"
|
||||
:default-sort = "{prop: 'chapterNumber', order: 'ascending'}"
|
||||
:header-cell-style="{background: '#E8E8E8', color: '#333333', fontSize: '16px',
|
||||
fontWeight: 'bold', height: '48px'}">
|
||||
<el-table-column
|
||||
type="index"
|
||||
label="序号"
|
||||
width="55"
|
||||
align="center">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="chapterNumber"
|
||||
align="center"
|
||||
sortable
|
||||
label="章条编号"
|
||||
width="101px">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="chapterName"
|
||||
align="center"
|
||||
label="章节名称"
|
||||
width="200px">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
align="center"
|
||||
prop="commentText"
|
||||
label="修改意见内容(包括理由或依据)">
|
||||
<el-table-column
|
||||
prop="oldText"
|
||||
align="center"
|
||||
label="修改前">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="newText"
|
||||
align="center"
|
||||
label="修改后">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="changeReason"
|
||||
align="center"
|
||||
label="修改理由">
|
||||
</el-table-column>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="reason"
|
||||
align="center"
|
||||
label="原因"
|
||||
width="200px">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="department"
|
||||
align="center"
|
||||
label="提出部门">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="responUserName"
|
||||
align="center"
|
||||
label="提出人">
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
</div>
|
||||
<el-collapse accordion>
|
||||
<el-collapse-item title="审批意见">
|
||||
<div style="margin: 10px 0;">
|
||||
<el-input
|
||||
type="textarea"
|
||||
:rows="3"
|
||||
resize="none"
|
||||
placeholder="请输入意见"
|
||||
v-model="commentText">
|
||||
</el-input>
|
||||
</div>
|
||||
</el-collapse-item>
|
||||
</el-collapse>
|
||||
</div>
|
||||
<div class="content" v-show="active === '2'">
|
||||
<el-table
|
||||
height="100%"
|
||||
ref="selection"
|
||||
:data="histortData"
|
||||
tooltip-effect="dark"
|
||||
style="width: 100%"
|
||||
border
|
||||
row-key="id"
|
||||
:header-cell-style="{background: '#f8f8f9', color: '#515a6e'}">
|
||||
<el-table-column
|
||||
prop="name"
|
||||
label="任务步骤"
|
||||
min-width="130"
|
||||
align="center"
|
||||
sortable="custom"
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="assignee"
|
||||
label="任务受理人"
|
||||
min-width="130"
|
||||
align="center"
|
||||
sortable="custom"
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="createTime"
|
||||
label="创建时间"
|
||||
min-width="130"
|
||||
sortable="custom"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.createTime ? $moment(scope.row.createTime).format('YYYY-MM-DD') : '' }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="endTime"
|
||||
min-width="130"
|
||||
label="完成时间"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.endTime ? $moment(scope.row.endTime).format('YYYY-MM-DD') : '' }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="comment"
|
||||
label="流程信息"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.commentText }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="completeFlag"
|
||||
label="状态"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.endTime ? '已完成' : '未完成' }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
</div>
|
||||
<ProcessFooter
|
||||
show-submit
|
||||
:submitLoading="isSubmit"
|
||||
:saveLoading="saveLoading"
|
||||
show-transfer
|
||||
@transfer="handleTransfer"
|
||||
@save="handleSave"
|
||||
@submit="handleSubmit"
|
||||
show-back
|
||||
@back="handleSubmitNo"
|
||||
approval
|
||||
submitBTNText="同意"
|
||||
>
|
||||
</ProcessFooter>
|
||||
<Role-tree
|
||||
check-box
|
||||
is-title="转办处理人"
|
||||
:is-visible.sync="drawerModal"
|
||||
@checkedRole="checkedRole"
|
||||
></Role-tree>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { Dialog } from 'vant';
|
||||
import ProcessHeaderPhone from "process/components/ProcessHeaderPhone";
|
||||
import ProcessHeader from '../../components/ProcessHeader'
|
||||
import ProcessFooter from '../../components/ProcessFooter'
|
||||
import ProcessTitle from '../../components/ProcessTitle'
|
||||
import {inboundLiaisonDetail, processCreateStand,changeAssigneeNew} from 'api/process'
|
||||
import axios from "axios";
|
||||
|
||||
|
||||
export default {
|
||||
name: "phoneZczqyjStep4",
|
||||
data() {
|
||||
return {
|
||||
drawerModal: false,
|
||||
histortData: [],
|
||||
data: [],
|
||||
commentText: '',
|
||||
taskIds: this.$route.query.taskIds,
|
||||
pId: this.$route.query.prcId,
|
||||
roleRow: {},
|
||||
nodeList: [],
|
||||
type: '',
|
||||
defaultProps: {
|
||||
children: 'children',
|
||||
label: 'name'
|
||||
},
|
||||
treeData: [], // 人员数据
|
||||
modalshowflag: false, // drawer开关
|
||||
drawerTitle: '', //drawer标题
|
||||
textarea: '', // 意见
|
||||
ListModel: false, // 新增编辑抽屉开关
|
||||
active: '1', // 默认显示
|
||||
isSubmit: false,
|
||||
saveLoading: false,
|
||||
form: {
|
||||
lawsNumber: '', // 政策编号
|
||||
lawsName: '', // 政策名称
|
||||
endTime: '', // 结束日期
|
||||
cname: '', // 名称
|
||||
fjList: [],
|
||||
fjListId: '',
|
||||
},
|
||||
formRules: {
|
||||
responUserList: [
|
||||
{required: true, message: '请选择责任人', trigger: 'change'},
|
||||
]
|
||||
},
|
||||
json: {}
|
||||
}
|
||||
},
|
||||
components: {
|
||||
ProcessHeaderPhone,
|
||||
ProcessHeader,
|
||||
ProcessFooter,
|
||||
ProcessTitle
|
||||
},
|
||||
methods: {
|
||||
handleTransfer() {
|
||||
this.drawerModal = true
|
||||
},
|
||||
checkedRole (data) {
|
||||
changeAssigneeNew({
|
||||
taskId: this.$route.query.taskIds, // 任务id
|
||||
userId:this.$store.getters.userInfo.userId, // 委托人
|
||||
assignee: data[0].id, // 被委托人
|
||||
pId: this.$route.query.prcId, // 流程实例
|
||||
}).then(res => {
|
||||
if (res.success) {
|
||||
this.drawerModal = false
|
||||
this.$message.success('调整成功')
|
||||
this.processNum()
|
||||
this.$router.push({path:'/processCenter?tabsName=ProcessCenter'})
|
||||
} else {
|
||||
this.$message.warning(res.message)
|
||||
}
|
||||
})
|
||||
},
|
||||
// 请求转换流程图
|
||||
processNum (row) {
|
||||
axios.request({
|
||||
url: '/api/lawss/activiti/getImg?_t=' + new Date().getTime(),
|
||||
responseType: 'blob',
|
||||
method: 'get',
|
||||
params: {
|
||||
prcNum: this.$route.query.prcNum
|
||||
}
|
||||
}).then(res => {
|
||||
this.processStep = window.URL.createObjectURL(res.data)
|
||||
})
|
||||
},
|
||||
getHistoryData() {
|
||||
this.$http.get('lawss/activiti/get_list_by_instance', {
|
||||
prcNum: this.$route.query.prcNum,
|
||||
}, {}, res => {
|
||||
this.histortData = res
|
||||
}, e => {
|
||||
})
|
||||
},
|
||||
handleTabs(name) {
|
||||
this.active = name
|
||||
},
|
||||
handleSave() {
|
||||
},
|
||||
handleSubmit() {
|
||||
this.isSubmit = true
|
||||
var json = this.json
|
||||
//这个就是原来的actionFlag,用来表示流程是驳回还是同意
|
||||
json.actionFlag = 0
|
||||
json.commentText = this.commentText
|
||||
this.$http.post('lawss/activiti/completeTask', {
|
||||
json: JSON.stringify(json),
|
||||
taskId: this.taskIds,
|
||||
userId: this.$store.getters.userInfo.userId
|
||||
}, {}, res => {
|
||||
if (res.success) {
|
||||
this.$message.success('提交成功')
|
||||
this.$router.push('/processCenter')
|
||||
}
|
||||
this.isSubmit = false
|
||||
})
|
||||
},
|
||||
handleSubmitNo() {
|
||||
if (this.commentText) {
|
||||
var json = this.json
|
||||
//这个就是原来的actionFlag,用来表示流程是驳回还是同意
|
||||
json.actionFlag = 1
|
||||
json.commentText = this.commentText
|
||||
this.$http.post('lawss/activiti/completeTask', {
|
||||
json: JSON.stringify(json),
|
||||
taskId: this.taskIds,
|
||||
userId: this.$store.getters.userInfo.userId
|
||||
}, {}, res => {
|
||||
if (res.success) {
|
||||
this.$message.success('提交成功')
|
||||
this.$router.push('/processCenter')
|
||||
}
|
||||
})
|
||||
} else {
|
||||
this.$message.warning('请输入反馈意见')
|
||||
}
|
||||
|
||||
},
|
||||
getData() {
|
||||
return new Promise((resolve, reject) => {
|
||||
inboundLiaisonDetail({
|
||||
taskIds: this.taskIds,
|
||||
pId: this.pId
|
||||
}).then(res => {
|
||||
if (res) {
|
||||
const processForm = JSON.parse(res.mesg)
|
||||
this.getFormFieldList(processForm)
|
||||
}
|
||||
let data = JSON.parse(res.mesg)
|
||||
this.form.fjList = data.fjList || data.form.fjList
|
||||
this.form.fjListId = data.fjListId || data.form.fjListId
|
||||
this.form.lawsNumber = data.lawsNumber || data.form.lawsNumber
|
||||
this.form.lawsName = data.lawsName || data.form.lawsName
|
||||
this.form.endTime = data.endTime || data.form.endTime
|
||||
this.form.cname = data.cname || data.form.cname
|
||||
this.json = data
|
||||
this.data = data.info || data.data
|
||||
}).catch(e => {
|
||||
})
|
||||
})
|
||||
},
|
||||
/**
|
||||
* @description: 动态表单读取
|
||||
*/
|
||||
getFormFieldList(item) {
|
||||
this.$nextTick(() => {
|
||||
this.form = JSON.parse(JSON.stringify(item));
|
||||
this.form.lawsNumber = item.form.lawsNumber
|
||||
this.form.lawsName = item.form.lawsName
|
||||
});
|
||||
},
|
||||
},
|
||||
mounted() {
|
||||
this.getHistoryData()
|
||||
this.getData()
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="less" scoped>
|
||||
@import '~@/assets/styles/style';
|
||||
|
||||
.phoneZczqyjStep4 {
|
||||
/deep/.van-dialog__content {
|
||||
min-height: 300px;
|
||||
padding: 10px;
|
||||
}
|
||||
.prc-content-border {
|
||||
overflow: auto;
|
||||
}
|
||||
/deep/.prc-content-border .el-form-item__content {
|
||||
width: 270px;
|
||||
}
|
||||
.headerTabs {
|
||||
height: 52px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
position: absolute;
|
||||
top: 52px;
|
||||
right: 10px;
|
||||
.headerTabsItem {
|
||||
border: 1px solid #c1c1c1;
|
||||
padding: 0 5px;
|
||||
height: 30px;
|
||||
line-height: 30px;
|
||||
cursor: pointer;
|
||||
}
|
||||
.active {
|
||||
border: 1px solid #E6A23C;
|
||||
color: #fff;
|
||||
background: #E6A23C;
|
||||
}
|
||||
}
|
||||
.content {
|
||||
border-top: 1px solid #DCDFE6;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: space-between;
|
||||
margin-top: 52px;
|
||||
height: calc(~'100% - 155px');
|
||||
overflow: auto;
|
||||
.tableTitle {
|
||||
margin-bottom: 10px;
|
||||
height: 30px;
|
||||
line-height: 30px;
|
||||
position: relative;
|
||||
font-size: 13px;
|
||||
font-weight: bold;
|
||||
.tableButton {
|
||||
position: absolute;
|
||||
right: 0;
|
||||
top: 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
||||
@@ -0,0 +1,629 @@
|
||||
<template>
|
||||
<div class="phoneZczqyjStep5">
|
||||
<!-- 标准调研流程-->
|
||||
<ProcessHeaderPhone toggle>
|
||||
<template slot="proName">政策征求意见流程</template>
|
||||
<template slot="proNode">法规认证工程师单条批准</template>
|
||||
</ProcessHeaderPhone>
|
||||
<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-show="active === '1'">
|
||||
<div style="flex: auto; overflow: auto;">
|
||||
<el-form
|
||||
ref="zczqyjForm"
|
||||
:model="form"
|
||||
:rules="formRules"
|
||||
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="政策编号" prop="lawsNumber" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
disabled
|
||||
v-model="form.lawsNumber"
|
||||
placeholder="请输入政策编号"
|
||||
clearable
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="政策名称" prop="lawsName" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
disabled
|
||||
v-model="form.lawsName"
|
||||
placeholder="请输入政策名称"
|
||||
clearable
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</div>
|
||||
</el-form>
|
||||
<ProcessTitle>
|
||||
<template slot="title">征求意见列表</template>
|
||||
</ProcessTitle>
|
||||
<div class="button-list">
|
||||
<el-button type="primary"
|
||||
class="common-button-primary add-button"
|
||||
:disabled="acceptShow"
|
||||
@click="addModal"
|
||||
size="mini">新增
|
||||
</el-button>
|
||||
<el-button type="primary"
|
||||
class="common-button-primary add-button"
|
||||
@click="upload(data, '汇总单.xls')"
|
||||
size="mini">导出Excel
|
||||
</el-button>
|
||||
<!-- <el-button type="primary"-->
|
||||
<!-- class="common-button-primary add-button"-->
|
||||
<!-- @click="upload(oldData, '上报意见.xls')"-->
|
||||
<!-- size="mini">导出Word-->
|
||||
<!-- </el-button>-->
|
||||
</div>
|
||||
<el-table
|
||||
ref="multipleTable"
|
||||
:data="data"
|
||||
tooltip-effect="dark"
|
||||
border
|
||||
style="width: 100%; flex: auto;"
|
||||
class="drag-table"
|
||||
:default-sort = "{prop: 'chapterNumber', order: 'ascending'}"
|
||||
:header-cell-style="{background: '#E8E8E8', color: '#333333', fontSize: '16px',
|
||||
fontWeight: 'bold', height: '48px'}">
|
||||
<el-table-column
|
||||
type="index"
|
||||
label="序号"
|
||||
width="55"
|
||||
align="center">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="chapterNumber"
|
||||
align="center"
|
||||
sortable
|
||||
label="章条编号"
|
||||
width="101px">
|
||||
<template slot-scope="scope">
|
||||
<el-input style="margin: 10px 0;background-color: red" v-model="scope.row.chapterNumber" v-if="changeFlag && scope.row.chapterNumber === ''"></el-input>
|
||||
<el-input style="margin: 10px 0;background-color: orange" v-model="scope.row.chapterNumber" v-else-if="changeFlag && scope.row.addFlag"></el-input>
|
||||
<el-input style="margin: 10px 0;background-color: orange" v-model="scope.row.chapterNumber" v-else-if="changeFlag && !scope.row.addFlag" readonly></el-input>
|
||||
<el-input style="margin: 10px 0;" v-model="scope.row.chapterNumber" v-else readonly></el-input>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="chapterName"
|
||||
align="center"
|
||||
width="200px"
|
||||
label="章节名称">
|
||||
<template slot-scope="scope">
|
||||
<el-input style="margin: 10px 0;background-color: red" v-model="scope.row.chapterName" v-if="changeFlag && scope.row.chapterName === ''"></el-input>
|
||||
<el-input style="margin: 10px 0;background-color: orange" v-model="scope.row.chapterName" v-else-if="changeFlag && scope.row.addFlag"></el-input>
|
||||
<el-input style="margin: 10px 0;background-color: orange" v-model="scope.row.chapterName" v-else-if="changeFlag && !scope.row.addFlag" readonly></el-input>
|
||||
<el-input style="margin: 10px 0;" v-model="scope.row.chapterName" v-else readonly></el-input>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="commentText"
|
||||
align="center"
|
||||
label="修改意见内容(包括理由或依据)">
|
||||
|
||||
<el-table-column
|
||||
prop="oldText"
|
||||
align="center"
|
||||
label="修改前">
|
||||
<template slot-scope="scope">
|
||||
<el-input style="margin: 10px 0;background-color: red" v-model="scope.row.oldText" v-if="changeFlag && scope.row.oldText === ''"></el-input>
|
||||
<el-input style="margin: 10px 0;background-color: #409eff" v-model="scope.row.oldText" v-else-if="changeFlag"></el-input>
|
||||
<el-input style="margin: 10px 0;" v-model="scope.row.oldText" v-else readonly></el-input>
|
||||
</template>
|
||||
</el-table-column>
|
||||
|
||||
<el-table-column
|
||||
prop="newText"
|
||||
align="center"
|
||||
label="修改后">
|
||||
<template slot-scope="scope">
|
||||
<el-input style="margin: 10px 0;background-color: red" v-model="scope.row.newText" v-if="changeFlag && scope.row.newText === ''"></el-input>
|
||||
<el-input style="margin: 10px 0;background-color: #409eff" v-model="scope.row.newText" v-else-if="changeFlag"></el-input>
|
||||
<el-input style="margin: 10px 0;" v-model="scope.row.newText" v-else readonly></el-input>
|
||||
</template>
|
||||
</el-table-column>
|
||||
|
||||
<el-table-column
|
||||
prop="changeReason"
|
||||
align="center"
|
||||
label="修改理由">
|
||||
<template slot-scope="scope">
|
||||
<el-input style="margin: 10px 0;background-color: red" v-model="scope.row.changeReason" v-if="changeFlag && scope.row.changeReason === ''"></el-input>
|
||||
<el-input style="margin: 10px 0;background-color: #409eff" v-model="scope.row.changeReason" v-else-if="changeFlag"></el-input>
|
||||
<el-input style="margin: 10px 0;" v-model="scope.row.changeReason" v-else readonly></el-input>
|
||||
</template>
|
||||
</el-table-column>
|
||||
|
||||
</el-table-column>
|
||||
|
||||
<el-table-column
|
||||
prop="reason"
|
||||
align="center"
|
||||
label="原因"
|
||||
width="200px">
|
||||
<template slot-scope="scope">
|
||||
<el-input style="margin: 10px 0;background-color: red" v-model="scope.row.reason" v-if="changeFlag && scope.row.reason === ''"></el-input>
|
||||
<el-input style="margin: 10px 0;background-color: #409eff" v-model="scope.row.reason" v-else-if="changeFlag"></el-input>
|
||||
<el-input style="margin: 10px 0;" v-model="scope.row.reason" v-else readonly></el-input>
|
||||
</template>
|
||||
</el-table-column>
|
||||
|
||||
<el-table-column
|
||||
prop="department"
|
||||
align="center"
|
||||
label="提出部门">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="responUserName"
|
||||
align="center"
|
||||
label="提出人">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="operation"
|
||||
align="center"
|
||||
width="150px"
|
||||
label="操作">
|
||||
<template slot-scope="scope">
|
||||
<el-button type="primary"
|
||||
class="common-button-primary add-button"
|
||||
@click="changeOpinion"
|
||||
size="mini">{{changeFlag?'完成':'修订'}}</el-button>
|
||||
<el-button type="primary"
|
||||
class="common-button-primary add-button"
|
||||
@click="addDelete(scope.$index, scope.row)"
|
||||
size="mini">删除</el-button>
|
||||
<div>{{ stateText(scope.row.state) }}</div>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
</div>
|
||||
<el-collapse accordion>
|
||||
<el-collapse-item title="审批意见">
|
||||
<div style="margin: 10px 0;">
|
||||
<el-input
|
||||
type="textarea"
|
||||
:rows="3"
|
||||
resize="none"
|
||||
placeholder="请输入意见"
|
||||
v-model="commentText">
|
||||
</el-input>
|
||||
</div>
|
||||
</el-collapse-item>
|
||||
</el-collapse>
|
||||
</div>
|
||||
<div class="content" v-show="active === '2'">
|
||||
<el-table
|
||||
height="100%"
|
||||
ref="selection"
|
||||
:data="histortData"
|
||||
tooltip-effect="dark"
|
||||
style="width: 100%"
|
||||
border
|
||||
row-key="id"
|
||||
:header-cell-style="{background: '#f8f8f9', color: '#515a6e'}">
|
||||
<el-table-column
|
||||
prop="name"
|
||||
label="任务步骤"
|
||||
align="center"
|
||||
min-width="130"
|
||||
sortable="custom"
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="assignee"
|
||||
label="任务受理人"
|
||||
min-width="130"
|
||||
align="center"
|
||||
sortable="custom"
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="createTime"
|
||||
label="创建时间"
|
||||
min-width="130"
|
||||
sortable="custom"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.createTime ? $moment(scope.row.createTime).format("YYYY-MM-DD") : "" }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="endTime"
|
||||
label="完成时间"
|
||||
min-width="130"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.endTime ? $moment(scope.row.endTime).format("YYYY-MM-DD") : "" }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="comment"
|
||||
label="流程信息"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.commentText }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="completeFlag"
|
||||
label="状态"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.endTime ? "已完成" : "未完成" }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
</div>
|
||||
<ProcessFooter
|
||||
show-submit
|
||||
:submitLoading="isSubmit"
|
||||
:saveLoading="saveLoading"
|
||||
@save="handleSave"
|
||||
@submit="handleSubmit"
|
||||
show-back
|
||||
@back="handleSubmitNo"
|
||||
show-transfer
|
||||
@transfer="handleTransfer"
|
||||
approval
|
||||
submitBTNText="同意"
|
||||
>
|
||||
</ProcessFooter>
|
||||
<Role-tree
|
||||
check-box
|
||||
is-title="转办处理人"
|
||||
:is-visible.sync="drawerModal"
|
||||
@checkedRole="checkedRole"
|
||||
></Role-tree>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { Dialog } from 'vant';
|
||||
import ProcessHeaderPhone from "process/components/ProcessHeaderPhone";
|
||||
import ProcessHeader from "../../components/ProcessHeader";
|
||||
import ProcessFooter from "../../components/ProcessFooter";
|
||||
import ProcessTitle from "../../components/ProcessTitle";
|
||||
import { inboundLiaisonDetail, processCreateStand, changeAssigneeNew } from "api/process";
|
||||
import axios from "axios";
|
||||
|
||||
export default {
|
||||
name: "phoneZczqyjStep5",
|
||||
data() {
|
||||
return {
|
||||
//修订的标志
|
||||
changeFlag:false,
|
||||
acceptShow: false,
|
||||
drawerModal: false,
|
||||
histortData: [],
|
||||
oldData: [],
|
||||
data: [],
|
||||
commentText: "",
|
||||
oldText: "",
|
||||
newText: "",
|
||||
reason: "",
|
||||
taskIds: this.$route.query.taskIds,
|
||||
pId: this.$route.query.prcId,
|
||||
roleRow: {},
|
||||
nodeList: [],
|
||||
type: "",
|
||||
defaultProps: {
|
||||
children: "children",
|
||||
label: "name"
|
||||
},
|
||||
treeData: [], // 人员数据
|
||||
modalshowflag: false, // drawer开关
|
||||
drawerTitle: "", //drawer标题
|
||||
textarea: "", // 意见
|
||||
ListModel: false, // 新增编辑抽屉开关
|
||||
active: "1", // 默认显示
|
||||
isSubmit: false,
|
||||
saveLoading: false,
|
||||
form: {
|
||||
lawsNumber: '', // 政策编号
|
||||
lawsName: '', // 政策名称
|
||||
department: '',//提出部门
|
||||
endTime: "", // 结束日期
|
||||
cname: "", // 名称
|
||||
fjList: [],
|
||||
fjListId: '',
|
||||
},
|
||||
formRules: {
|
||||
responUserList: [
|
||||
{required: true, message: "请选择责任人", trigger: "change"}
|
||||
]
|
||||
},
|
||||
json: {}
|
||||
};
|
||||
},
|
||||
components: {
|
||||
ProcessHeader,
|
||||
ProcessHeaderPhone,
|
||||
ProcessFooter,
|
||||
ProcessTitle
|
||||
},
|
||||
methods: {
|
||||
changeOpinion() {
|
||||
this.changeFlag = !this.changeFlag
|
||||
},
|
||||
addDelete(index, row) {
|
||||
console.log('362',index, row);
|
||||
this.$confirm('此操作将删除该数据, 是否继续?', '提示', {
|
||||
confirmButtonText: '确定',
|
||||
cancelButtonText: '取消',
|
||||
type: 'warning'
|
||||
}).then(() => {
|
||||
this.data.splice(index, 1)
|
||||
this.$message({
|
||||
type: 'success',
|
||||
message: '删除成功!'
|
||||
});
|
||||
}).catch(() => {
|
||||
this.$message({
|
||||
type: 'info',
|
||||
message: '已取消删除'
|
||||
});
|
||||
});
|
||||
console.log('379',this.data)
|
||||
|
||||
},
|
||||
addModal() {
|
||||
console.log('318',this.form.form.department)
|
||||
this.changeFlag = true
|
||||
var id = Number(Math.random().toString().substr(3, 3) + Date.now()).toString(36);
|
||||
var json = {
|
||||
chapterNumber: '',
|
||||
chapterName: '',
|
||||
commentText: '',
|
||||
oldText: '',
|
||||
newText: '',
|
||||
changeReason: '',
|
||||
reason: '',
|
||||
department: this.form.form.department,
|
||||
id: id,
|
||||
responUserName: this.$store.getters.userInfo.userName,
|
||||
responUser: this.$store.getters.userInfo.userId,
|
||||
addFlag:true,
|
||||
// department: this.$store.getters.userInfo.orgName
|
||||
}
|
||||
this.data.unshift(json)
|
||||
},
|
||||
handleTransfer() {
|
||||
this.drawerModal = true
|
||||
},
|
||||
checkedRole (data) {
|
||||
changeAssigneeNew({
|
||||
taskId: this.$route.query.taskIds, // 任务id
|
||||
userId:this.$store.getters.userInfo.userId, // 委托人
|
||||
assignee: data[0].id, // 被委托人
|
||||
pId: this.$route.query.prcId, // 流程实例
|
||||
}).then(res => {
|
||||
if (res.success) {
|
||||
this.drawerModal = false
|
||||
this.$message.success('调整成功')
|
||||
this.processNum()
|
||||
this.$router.push({path:'/processCenter?tabsName=ProcessCenter'})
|
||||
} else {
|
||||
this.$message.warning(res.message)
|
||||
}
|
||||
})
|
||||
},
|
||||
// 请求转换流程图
|
||||
processNum (row) {
|
||||
axios.request({
|
||||
url: '/api/lawss/activiti/getImg?_t=' + new Date().getTime(),
|
||||
responseType: 'blob',
|
||||
method: 'get',
|
||||
params: {
|
||||
prcNum: this.$route.query.prcNum
|
||||
}
|
||||
}).then(res => {
|
||||
this.processStep = window.URL.createObjectURL(res.data)
|
||||
})
|
||||
},
|
||||
getHistoryData() {
|
||||
this.$http.get("lawss/activiti/get_list_by_instance", {
|
||||
prcNum: this.$route.query.prcNum
|
||||
}, {}, res => {
|
||||
this.histortData = res;
|
||||
}, e => {
|
||||
});
|
||||
},
|
||||
stateText(row) {
|
||||
if (row === "1") {
|
||||
return "上报";
|
||||
} else if (row === "2") {
|
||||
return "处理后上报";
|
||||
}
|
||||
},
|
||||
upload(row, title) {
|
||||
var params = {
|
||||
columnName: {
|
||||
chapterNumber: "章条编号",
|
||||
chapterName: "章节名称",
|
||||
commentText: "修改意见内容(包括理由或依据)",
|
||||
oldText: "修改前",
|
||||
newText: "修改后",
|
||||
changeReason: "修改理由",
|
||||
reason:"原因",
|
||||
department: "提出部门",
|
||||
responUserName: "提出人",
|
||||
},
|
||||
dataList: []
|
||||
};
|
||||
params.dataList = JSON.parse(JSON.stringify(row));
|
||||
this.$http.downloadFile("/api/policy/activiti/exportExcel", params, title, res => {
|
||||
});
|
||||
},
|
||||
handleTabs(name) {
|
||||
this.active = name;
|
||||
},
|
||||
handleSave() {
|
||||
},
|
||||
handleSubmit() {
|
||||
if (this.data.length < 1) {
|
||||
this.$message.warning("请输入征求意见稿");
|
||||
} else {
|
||||
this.isSubmit = true;
|
||||
var json = this.json;
|
||||
json.actionFlag = 0;
|
||||
json.commentText = this.commentText;
|
||||
json.info = this.data
|
||||
json.form = this.form
|
||||
this.$http.post("lawss/activiti/completeTask", {
|
||||
json: JSON.stringify(json),
|
||||
taskId: this.taskIds,
|
||||
userId: this.$store.getters.userInfo.userId
|
||||
}, {}, res => {
|
||||
if (res.success) {
|
||||
this.$message.success("提交成功");
|
||||
this.$router.push("/processCenter");
|
||||
}
|
||||
this.isSubmit = false;
|
||||
});
|
||||
}
|
||||
},
|
||||
handleSubmitNo() {
|
||||
if (this.commentText) {
|
||||
this.isSubmit = true;
|
||||
var json = this.json;
|
||||
json.actionFlag = 1;
|
||||
json.commentText = this.commentText;
|
||||
this.$http.post("lawss/activiti/completeTask", {
|
||||
json: JSON.stringify(json),
|
||||
taskIds: this.taskIds,
|
||||
userId: this.$store.getters.userInfo.userId
|
||||
}, {}, res => {
|
||||
if (res.success) {
|
||||
this.$message.success("驳回成功");
|
||||
this.$router.push("/processCenter");
|
||||
}
|
||||
this.isSubmit = false;
|
||||
});
|
||||
} else {
|
||||
this.$message.warning("请输入反馈意见");
|
||||
}
|
||||
},
|
||||
getData() {
|
||||
return new Promise((resolve, reject) => {
|
||||
inboundLiaisonDetail({
|
||||
taskIds: this.taskIds,
|
||||
pId: this.pId
|
||||
}).then(res => {
|
||||
if (res) {
|
||||
const processForm = JSON.parse(res.mesg)
|
||||
this.getFormFieldList(processForm)
|
||||
}
|
||||
let data = JSON.parse(res.mesg);
|
||||
this.form.department = data.form.department
|
||||
console.log(this.form.department,'517')
|
||||
// 给后端的选人信息
|
||||
this.form.responUserAndInstitutionNameMap = data.form.responUserAndInstitutionNameMap
|
||||
this.form.fjList = data.fjList || data.form.fjList
|
||||
this.form.fjListId = data.fjListId || data.form.fjListId
|
||||
this.form.lawsNumber = data.lawsNumber || data.form.lawsNumber
|
||||
this.form.lawsName = data.lawsName || data.form.lawsName
|
||||
this.form.endTime = data.endTime || data.form.endTime;
|
||||
this.form.cname = data.cname || data.form.cname;
|
||||
this.oldData = JSON.parse(JSON.stringify(data.info))
|
||||
var arr = []
|
||||
data.info.forEach(item => {
|
||||
if (item.state != '3') {
|
||||
arr.push(item)
|
||||
}
|
||||
})
|
||||
// for (let i = 0; i < this.data.length; i++) {
|
||||
// this.data[i].department = data.department
|
||||
// }
|
||||
this.json = data
|
||||
this.data = arr
|
||||
this.oldData = data.oldinfo
|
||||
}).catch(e => {
|
||||
});
|
||||
});
|
||||
},
|
||||
/**
|
||||
* @description: 动态表单读取
|
||||
*/
|
||||
getFormFieldList(item) {
|
||||
this.$nextTick(() => {
|
||||
this.form = JSON.parse(JSON.stringify(item));
|
||||
this.form.lawsNumber = item.form.lawsNumber
|
||||
this.form.lawsName = item.form.lawsName
|
||||
});
|
||||
},
|
||||
},
|
||||
mounted() {
|
||||
this.getHistoryData();
|
||||
this.getData();
|
||||
}
|
||||
};
|
||||
</script>
|
||||
|
||||
<style lang="less" scoped>
|
||||
@import '~@/assets/styles/style';
|
||||
|
||||
.phoneZczqyjStep5 {
|
||||
/deep/.van-dialog__content {
|
||||
min-height: 300px;
|
||||
padding: 10px;
|
||||
}
|
||||
.prc-content-border {
|
||||
overflow: auto;
|
||||
}
|
||||
/deep/.prc-content-border .el-form-item__content {
|
||||
width: 270px;
|
||||
}
|
||||
.headerTabs {
|
||||
height: 52px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
position: absolute;
|
||||
top: 52px;
|
||||
right: 10px;
|
||||
.headerTabsItem {
|
||||
border: 1px solid #c1c1c1;
|
||||
padding: 0 5px;
|
||||
height: 30px;
|
||||
line-height: 30px;
|
||||
cursor: pointer;
|
||||
}
|
||||
.active {
|
||||
border: 1px solid #E6A23C;
|
||||
color: #fff;
|
||||
background: #E6A23C;
|
||||
}
|
||||
}
|
||||
.content {
|
||||
border-top: 1px solid #DCDFE6;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: space-between;
|
||||
margin-top: 52px;
|
||||
height: calc(~'100% - 155px');
|
||||
overflow: auto;
|
||||
.tableTitle {
|
||||
margin-bottom: 10px;
|
||||
height: 30px;
|
||||
line-height: 30px;
|
||||
position: relative;
|
||||
font-size: 13px;
|
||||
font-weight: bold;
|
||||
.tableButton {
|
||||
position: absolute;
|
||||
right: 0;
|
||||
top: 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
||||
@@ -0,0 +1,494 @@
|
||||
<template>
|
||||
<div class="phoneZczqyjStep6">
|
||||
<ProcessHeaderPhone toggle>
|
||||
<template slot="proName">政策征求意见流程</template>
|
||||
<template slot="proNode">法规认证工程师汇总修订</template>
|
||||
</ProcessHeaderPhone>
|
||||
<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-show="active === '1'">
|
||||
<div style="flex: auto; overflow: auto;">
|
||||
<el-form
|
||||
ref="zczqyjForm"
|
||||
:model="form"
|
||||
:rules="formRules"
|
||||
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="政策编号" prop="lawsNumber" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
disabled
|
||||
v-model="form.lawsNumber"
|
||||
placeholder="请输入政策编号"
|
||||
clearable
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="政策名称" prop="lawsName" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
disabled
|
||||
v-model="form.lawsName"
|
||||
placeholder="请输入政策名称"
|
||||
clearable
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</div>
|
||||
</el-form>
|
||||
<ProcessTitle>
|
||||
<template slot="title">征求意见列表</template>
|
||||
</ProcessTitle>
|
||||
<el-table
|
||||
ref="multipleTable"
|
||||
:data="data"
|
||||
tooltip-effect="dark"
|
||||
border
|
||||
style="width: 100%; flex: auto;"
|
||||
class="drag-table"
|
||||
:default-sort = "{prop: 'chapterNumber', order: 'ascending'}"
|
||||
:header-cell-style="{background: '#E8E8E8', color: '#333333', fontSize: '16px',
|
||||
fontWeight: 'bold', height: '48px'}">
|
||||
<el-table-column
|
||||
type="index"
|
||||
label="序号"
|
||||
width="55"
|
||||
align="center">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="chapterNumber"
|
||||
align="center"
|
||||
sortable
|
||||
label="章条编号"
|
||||
width="101px">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="chapterName"
|
||||
align="center"
|
||||
width="200px"
|
||||
label="章节名称">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
align="center"
|
||||
prop="commentText"
|
||||
label="修改意见内容(包括理由或依据)">
|
||||
<el-table-column
|
||||
prop="oldText"
|
||||
align="center"
|
||||
label="修改前">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="newText"
|
||||
align="center"
|
||||
label="修改后">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="changeReason"
|
||||
align="center"
|
||||
label="修改理由">
|
||||
</el-table-column>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="reason"
|
||||
align="center"
|
||||
label="原因"
|
||||
width="200px">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="department"
|
||||
align="center"
|
||||
label="提出部门">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="responUserName"
|
||||
align="center"
|
||||
label="提出人">
|
||||
</el-table-column>
|
||||
<!-- <el-table-column-->
|
||||
<!-- prop="dealComment"-->
|
||||
<!-- align="center"-->
|
||||
<!-- label="处理意见">-->
|
||||
<!-- <template slot-scope="scope">-->
|
||||
<!-- <div>{{ stateText(scope.row.state) }}</div>-->
|
||||
<!-- </template>-->
|
||||
<!-- </el-table-column>-->
|
||||
</el-table>
|
||||
</div>
|
||||
<el-collapse accordion>
|
||||
<el-collapse-item title="审批意见">
|
||||
<div style="margin: 10px 0;">
|
||||
<el-input
|
||||
type="textarea"
|
||||
:rows="3"
|
||||
resize="none"
|
||||
placeholder="请输入意见"
|
||||
v-model="commentText">
|
||||
</el-input>
|
||||
</div>
|
||||
</el-collapse-item>
|
||||
</el-collapse>
|
||||
</div>
|
||||
<div class="content" v-show="active === '2'">
|
||||
<el-table
|
||||
height="100%"
|
||||
ref="selection"
|
||||
:data="histortData"
|
||||
tooltip-effect="dark"
|
||||
style="width: 100%"
|
||||
border
|
||||
row-key="id"
|
||||
:header-cell-style="{background: '#f8f8f9', color: '#515a6e'}">
|
||||
<el-table-column
|
||||
prop="name"
|
||||
label="任务步骤"
|
||||
min-width="130"
|
||||
align="center"
|
||||
sortable="custom"
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="assignee"
|
||||
min-width="130"
|
||||
label="任务受理人"
|
||||
align="center"
|
||||
sortable="custom"
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="createTime"
|
||||
label="创建时间"
|
||||
min-width="130"
|
||||
sortable="custom"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.createTime ? $moment(scope.row.createTime).format("YYYY-MM-DD") : "" }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="endTime"
|
||||
min-width="130"
|
||||
label="完成时间"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.endTime ? $moment(scope.row.endTime).format("YYYY-MM-DD") : "" }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="comment"
|
||||
label="流程信息"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.commentText }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="completeFlag"
|
||||
label="状态"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.endTime ? "已完成" : "未完成" }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
</div>
|
||||
<ProcessFooter
|
||||
show-submit
|
||||
:submitLoading="isSubmit"
|
||||
:saveLoading="saveLoading"
|
||||
@save="handleSave"
|
||||
@submit="handleSubmit"
|
||||
show-back
|
||||
@back="handleSubmitNo"
|
||||
approval
|
||||
submitBTNText="同意"
|
||||
show-transfer
|
||||
@transfer="handleTransfer"
|
||||
>
|
||||
</ProcessFooter>
|
||||
<Role-tree
|
||||
check-box
|
||||
is-title="转办处理人"
|
||||
:is-visible.sync="drawerModal"
|
||||
@checkedRole="checkedRole"
|
||||
></Role-tree>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { Dialog } from 'vant';
|
||||
import ProcessHeaderPhone from "process/components/ProcessHeaderPhone";
|
||||
import ProcessHeader from "../../components/ProcessHeader";
|
||||
import ProcessFooter from "../../components/ProcessFooter";
|
||||
import ProcessTitle from "../../components/ProcessTitle";
|
||||
import { inboundLiaisonDetail, processCreateStand, changeAssigneeNew } from "api/process";
|
||||
import axios from "axios";
|
||||
|
||||
export default {
|
||||
name: "phoneZczqyjStep6",
|
||||
data() {
|
||||
return {
|
||||
drawerModal: false,
|
||||
histortData: [],
|
||||
oldData: [],
|
||||
data: [],
|
||||
commentText: "",
|
||||
taskIds: this.$route.query.taskIds,
|
||||
pId: this.$route.query.prcId,
|
||||
roleRow: {},
|
||||
nodeList: [],
|
||||
type: "",
|
||||
defaultProps: {
|
||||
children: "children",
|
||||
label: "name"
|
||||
},
|
||||
treeData: [], // 人员数据
|
||||
modalshowflag: false, // drawer开关
|
||||
drawerTitle: "", //drawer标题
|
||||
textarea: "", // 意见
|
||||
ListModel: false, // 新增编辑抽屉开关
|
||||
active: "1", // 默认显示
|
||||
isSubmit: false,
|
||||
saveLoading: false,
|
||||
form: {
|
||||
lawsNumber: '', // 政策编号
|
||||
lawsName: '', // 政策名称
|
||||
endTime: "", // 结束日期
|
||||
cname: "", // 名称
|
||||
fjList: [],
|
||||
fjListId: '',
|
||||
},
|
||||
formRules: {
|
||||
responUserList: [
|
||||
{required: true, message: "请选择责任人", trigger: "change"}
|
||||
]
|
||||
},
|
||||
json: {}
|
||||
};
|
||||
},
|
||||
components: {
|
||||
ProcessHeader,
|
||||
ProcessHeaderPhone,
|
||||
ProcessFooter,
|
||||
ProcessTitle
|
||||
},
|
||||
methods: {
|
||||
handleTransfer() {
|
||||
this.drawerModal = true
|
||||
},
|
||||
checkedRole (data) {
|
||||
changeAssigneeNew({
|
||||
taskId: this.$route.query.taskIds, // 任务id
|
||||
userId:this.$store.getters.userInfo.userId, // 委托人
|
||||
assignee: data[0].id, // 被委托人
|
||||
pId: this.$route.query.prcId, // 流程实例
|
||||
}).then(res => {
|
||||
if (res.success) {
|
||||
this.drawerModal = false
|
||||
this.$message.success('调整成功')
|
||||
this.processNum()
|
||||
this.$router.push({path:'/processCenter?tabsName=ProcessCenter'})
|
||||
} else {
|
||||
this.$message.warning(res.message)
|
||||
}
|
||||
})
|
||||
},
|
||||
// 请求转换流程图
|
||||
processNum (row) {
|
||||
axios.request({
|
||||
url: '/api/lawss/activiti/getImg?_t=' + new Date().getTime(),
|
||||
responseType: 'blob',
|
||||
method: 'get',
|
||||
params: {
|
||||
prcNum: this.$route.query.prcNum
|
||||
}
|
||||
}).then(res => {
|
||||
this.processStep = window.URL.createObjectURL(res.data)
|
||||
})
|
||||
},
|
||||
getHistoryData() {
|
||||
this.$http.get("lawss/activiti/get_list_by_instance", {
|
||||
prcNum: this.$route.query.prcNum
|
||||
}, {}, res => {
|
||||
this.histortData = res;
|
||||
}, e => {
|
||||
});
|
||||
},
|
||||
upload(row, title) {
|
||||
var params = {
|
||||
columnName: {
|
||||
chapterNumber: "章条编号",
|
||||
chapterName: "章节名称",
|
||||
commentText: "修改意见内容(包括理由或依据)",
|
||||
department: "提出部门",
|
||||
responUserName: "提出人",
|
||||
stateText: "处理意见"
|
||||
},
|
||||
dataList: []
|
||||
};
|
||||
params.dataList = JSON.parse(JSON.stringify(row));
|
||||
params.dataList.forEach(item => {
|
||||
if (item.state === "1") {
|
||||
item.stateText = "上报";
|
||||
} else if (item.state === "2") {
|
||||
item.stateText = "处理后上报";
|
||||
} else {
|
||||
item.stateText = "不上报";
|
||||
}
|
||||
});
|
||||
this.$http.downloadFile("/api/lawss/activiti/export_excel", params, title, res => {
|
||||
});
|
||||
},
|
||||
stateText(row) {
|
||||
if (row === "1") {
|
||||
return "上报";
|
||||
} else if (row === "2") {
|
||||
return "处理后上报";
|
||||
}
|
||||
},
|
||||
handleTabs(name) {
|
||||
this.active = name;
|
||||
},
|
||||
handleSave() {
|
||||
},
|
||||
handleSubmit() {
|
||||
if (this.data.length < 1) {
|
||||
this.$message.warning("请输入征求意见搞");
|
||||
} else {
|
||||
this.isSubmit = true;
|
||||
var json = this.json;
|
||||
json.actionFlag = 0;
|
||||
json.commentText = this.commentText;
|
||||
this.$http.post("lawss/activiti/completeTask", {
|
||||
json: JSON.stringify(json),
|
||||
taskId: this.taskIds,
|
||||
userId: this.$store.getters.userInfo.userId
|
||||
}, {}, res => {
|
||||
if (res.success) {
|
||||
this.$message.success("提交成功");
|
||||
this.$router.push("/processCenter");
|
||||
}
|
||||
this.isSubmit = false;
|
||||
});
|
||||
}
|
||||
},
|
||||
handleSubmitNo() {
|
||||
if (this.commentText) {
|
||||
this.isSubmit = true;
|
||||
var json = this.json;
|
||||
json.actionFlag = 1;
|
||||
json.commentText = this.commentText;
|
||||
this.$http.post("lawss/activiti/completeTask", {
|
||||
json: JSON.stringify(json),
|
||||
taskIds: this.taskIds,
|
||||
userId: this.$store.getters.userInfo.userId
|
||||
}, {}, res => {
|
||||
if (res.success) {
|
||||
this.$message.success("驳回成功");
|
||||
this.$router.push("/processCenter");
|
||||
}
|
||||
this.isSubmit = false;
|
||||
});
|
||||
} else {
|
||||
this.$message.warning("请输入反馈意见");
|
||||
}
|
||||
},
|
||||
getData() {
|
||||
return new Promise((resolve, reject) => {
|
||||
inboundLiaisonDetail({
|
||||
taskIds: this.taskIds,
|
||||
pId: this.pId
|
||||
}).then(res => {
|
||||
let data = JSON.parse(res.mesg)
|
||||
this.form.fjList = data.fjList || data.form.fjList
|
||||
this.form.fjListId = data.fjListId || data.form.fjListId
|
||||
this.form.lawsNumber = data.lawsNumber || data.form.lawsNumber
|
||||
this.form.lawsName = data.lawsName || data.form.lawsName
|
||||
this.form.endTime = data.endTime || data.form.endTime;
|
||||
this.form.cname = data.cname || data.form.cname;
|
||||
this.oldData = JSON.parse(JSON.stringify(data.info))
|
||||
var arr = []
|
||||
data.info.forEach(item => {
|
||||
if (item.state != '3') {
|
||||
arr.push(item)
|
||||
}
|
||||
})
|
||||
this.json = data
|
||||
this.data = arr
|
||||
this.oldData = data.oldinfo
|
||||
}).catch(e => {
|
||||
});
|
||||
});
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
this.getHistoryData();
|
||||
this.getData();
|
||||
}
|
||||
};
|
||||
</script>
|
||||
|
||||
<style lang="less" scoped>
|
||||
@import '~@/assets/styles/style';
|
||||
|
||||
.phoneZczqyjStep6 {
|
||||
/deep/.van-dialog__content {
|
||||
min-height: 300px;
|
||||
padding: 10px;
|
||||
}
|
||||
.prc-content-border {
|
||||
overflow: auto;
|
||||
}
|
||||
/deep/.prc-content-border .el-form-item__content {
|
||||
width: 270px;
|
||||
}
|
||||
.headerTabs {
|
||||
height: 52px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
position: absolute;
|
||||
top: 52px;
|
||||
right: 10px;
|
||||
.headerTabsItem {
|
||||
border: 1px solid #c1c1c1;
|
||||
padding: 0 5px;
|
||||
height: 30px;
|
||||
line-height: 30px;
|
||||
cursor: pointer;
|
||||
}
|
||||
.active {
|
||||
border: 1px solid #E6A23C;
|
||||
color: #fff;
|
||||
background: #E6A23C;
|
||||
}
|
||||
}
|
||||
.content {
|
||||
border-top: 1px solid #DCDFE6;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: space-between;
|
||||
margin-top: 52px;
|
||||
height: calc(~'100% - 155px');
|
||||
overflow: auto;
|
||||
.tableTitle {
|
||||
margin-bottom: 10px;
|
||||
height: 30px;
|
||||
line-height: 30px;
|
||||
position: relative;
|
||||
font-size: 13px;
|
||||
font-weight: bold;
|
||||
.tableButton {
|
||||
position: absolute;
|
||||
right: 0;
|
||||
top: 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
||||
@@ -0,0 +1,495 @@
|
||||
<template>
|
||||
<div class="phoneZczqyjStep7">
|
||||
<ProcessHeaderPhone toggle>
|
||||
<template slot="proName">政策征求意见流程</template>
|
||||
<template slot="proNode">法规认证部部长审核</template>
|
||||
</ProcessHeaderPhone>
|
||||
<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-show="active === '1'">
|
||||
<div style="flex: auto; overflow: auto;">
|
||||
<el-form
|
||||
ref="zczqyjForm"
|
||||
:model="form"
|
||||
:rules="formRules"
|
||||
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="政策编号" prop="lawsNumber" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
disabled
|
||||
v-model="form.lawsNumber"
|
||||
placeholder="请输入政策编号"
|
||||
clearable
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="政策名称" prop="lawsName" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
disabled
|
||||
v-model="form.lawsName"
|
||||
placeholder="请输入政策名称"
|
||||
clearable
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</div>
|
||||
</el-form>
|
||||
<ProcessTitle>
|
||||
<template slot="title">征求意见列表</template>
|
||||
</ProcessTitle>
|
||||
<el-table
|
||||
ref="multipleTable"
|
||||
:data="data"
|
||||
tooltip-effect="dark"
|
||||
border
|
||||
style="width: 100%; flex: auto;"
|
||||
class="drag-table"
|
||||
:default-sort = "{prop: 'chapterNumber', order: 'ascending'}"
|
||||
:header-cell-style="{background: '#E8E8E8', color: '#333333', fontSize: '16px',
|
||||
fontWeight: 'bold', height: '48px'}">
|
||||
<el-table-column
|
||||
type="index"
|
||||
label="序号"
|
||||
width="55"
|
||||
align="center">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="chapterNumber"
|
||||
align="center"
|
||||
sortable
|
||||
label="章条编号"
|
||||
width="101px">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="chapterName"
|
||||
align="center"
|
||||
width="200px"
|
||||
label="章节名称">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
align="center"
|
||||
prop="commentText"
|
||||
label="修改意见内容(包括理由或依据)">
|
||||
<el-table-column
|
||||
prop="oldText"
|
||||
align="center"
|
||||
label="修改前">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="newText"
|
||||
align="center"
|
||||
label="修改后">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="changeReason"
|
||||
align="center"
|
||||
label="修改理由">
|
||||
</el-table-column>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="reason"
|
||||
align="center"
|
||||
label="原因"
|
||||
width="200px">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="department"
|
||||
align="center"
|
||||
label="提出部门">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="responUserName"
|
||||
align="center"
|
||||
label="提出人">
|
||||
</el-table-column>
|
||||
<!-- <el-table-column-->
|
||||
<!-- prop="dealComment"-->
|
||||
<!-- align="center"-->
|
||||
<!-- label="处理意见">-->
|
||||
<!-- <template slot-scope="scope">-->
|
||||
<!-- <div>{{ stateText(scope.row.state) }}</div>-->
|
||||
<!-- </template>-->
|
||||
<!-- </el-table-column>-->
|
||||
</el-table>
|
||||
</div>
|
||||
<el-collapse accordion>
|
||||
<el-collapse-item title="审批意见">
|
||||
<div style="margin: 10px 0;">
|
||||
<el-input
|
||||
type="textarea"
|
||||
:rows="3"
|
||||
resize="none"
|
||||
placeholder="请输入意见"
|
||||
v-model="commentText">
|
||||
</el-input>
|
||||
</div>
|
||||
</el-collapse-item>
|
||||
</el-collapse>
|
||||
</div>
|
||||
<div class="content" v-show="active === '2'">
|
||||
<el-table
|
||||
height="100%"
|
||||
ref="selection"
|
||||
:data="histortData"
|
||||
tooltip-effect="dark"
|
||||
style="width: 100%"
|
||||
border
|
||||
row-key="id"
|
||||
:header-cell-style="{background: '#f8f8f9', color: '#515a6e'}">
|
||||
<el-table-column
|
||||
prop="name"
|
||||
min-width="130"
|
||||
label="任务步骤"
|
||||
align="center"
|
||||
sortable="custom"
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="assignee"
|
||||
label="任务受理人"
|
||||
min-width="130"
|
||||
align="center"
|
||||
sortable="custom"
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="createTime"
|
||||
label="创建时间"
|
||||
min-width="130"
|
||||
sortable="custom"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.createTime ? $moment(scope.row.createTime).format("YYYY-MM-DD") : "" }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="endTime"
|
||||
label="完成时间"
|
||||
min-width="130"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.endTime ? $moment(scope.row.endTime).format("YYYY-MM-DD") : "" }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="comment"
|
||||
label="流程信息"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.commentText }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="completeFlag"
|
||||
label="状态"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.endTime ? "已完成" : "未完成" }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
</div>
|
||||
<ProcessFooter
|
||||
show-submit
|
||||
:submitLoading="isSubmit"
|
||||
:saveLoading="saveLoading"
|
||||
@save="handleSave"
|
||||
@submit="handleSubmit"
|
||||
show-back
|
||||
@back="handleSubmitNo"
|
||||
approval
|
||||
submitBTNText="同意"
|
||||
show-transfer
|
||||
@transfer="handleTransfer"
|
||||
>
|
||||
</ProcessFooter>
|
||||
<Role-tree
|
||||
check-box
|
||||
is-title="转办处理人"
|
||||
:is-visible.sync="drawerModal"
|
||||
@checkedRole="checkedRole"
|
||||
></Role-tree>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { Dialog } from 'vant';
|
||||
import ProcessHeaderPhone from "process/components/ProcessHeaderPhone";
|
||||
import ProcessHeader from "../../components/ProcessHeader";
|
||||
import ProcessFooter from "../../components/ProcessFooter";
|
||||
import ProcessTitle from "../../components/ProcessTitle";
|
||||
import { inboundLiaisonDetail, processCreateStand, changeAssigneeNew } from "api/process";
|
||||
import axios from "axios";
|
||||
|
||||
|
||||
export default {
|
||||
name: "phoneZczqyjStep7",
|
||||
data() {
|
||||
return {
|
||||
drawerModal: false,
|
||||
histortData: [],
|
||||
oldData: [],
|
||||
data: [],
|
||||
commentText: "",
|
||||
taskIds: this.$route.query.taskIds,
|
||||
pId: this.$route.query.prcId,
|
||||
roleRow: {},
|
||||
nodeList: [],
|
||||
type: "",
|
||||
defaultProps: {
|
||||
children: "children",
|
||||
label: "name"
|
||||
},
|
||||
treeData: [], // 人员数据
|
||||
modalshowflag: false, // drawer开关
|
||||
drawerTitle: "", //drawer标题
|
||||
textarea: "", // 意见
|
||||
ListModel: false, // 新增编辑抽屉开关
|
||||
active: "1", // 默认显示
|
||||
isSubmit: false,
|
||||
saveLoading: false,
|
||||
form: {
|
||||
lawsNumber: '', // 政策编号
|
||||
lawsName: '', // 政策名称
|
||||
endTime: "", // 结束日期
|
||||
cname: "", // 名称
|
||||
fjList: [],
|
||||
fjListId: '',
|
||||
},
|
||||
formRules: {
|
||||
responUserList: [
|
||||
{required: true, message: "请选择责任人", trigger: "change"}
|
||||
]
|
||||
},
|
||||
json: {}
|
||||
};
|
||||
},
|
||||
components: {
|
||||
ProcessHeaderPhone,
|
||||
ProcessHeader,
|
||||
ProcessFooter,
|
||||
ProcessTitle
|
||||
},
|
||||
methods: {
|
||||
handleTransfer() {
|
||||
this.drawerModal = true
|
||||
},
|
||||
checkedRole (data) {
|
||||
changeAssigneeNew({
|
||||
taskId: this.$route.query.taskIds, // 任务id
|
||||
userId:this.$store.getters.userInfo.userId, // 委托人
|
||||
assignee: data[0].id, // 被委托人
|
||||
pId: this.$route.query.prcId, // 流程实例
|
||||
}).then(res => {
|
||||
if (res.success) {
|
||||
this.drawerModal = false
|
||||
this.$message.success('调整成功')
|
||||
this.processNum()
|
||||
this.$router.push({path:'/processCenter?tabsName=ProcessCenter'})
|
||||
} else {
|
||||
this.$message.warning(res.message)
|
||||
}
|
||||
})
|
||||
},
|
||||
// 请求转换流程图
|
||||
processNum (row) {
|
||||
axios.request({
|
||||
url: '/api/lawss/activiti/getImg?_t=' + new Date().getTime(),
|
||||
responseType: 'blob',
|
||||
method: 'get',
|
||||
params: {
|
||||
prcNum: this.$route.query.prcNum
|
||||
}
|
||||
}).then(res => {
|
||||
this.processStep = window.URL.createObjectURL(res.data)
|
||||
})
|
||||
},
|
||||
getHistoryData() {
|
||||
this.$http.get("lawss/activiti/get_list_by_instance", {
|
||||
prcNum: this.$route.query.prcNum
|
||||
}, {}, res => {
|
||||
this.histortData = res;
|
||||
}, e => {
|
||||
});
|
||||
},
|
||||
upload(row, title) {
|
||||
var params = {
|
||||
columnName: {
|
||||
chapterNumber: "章条编号",
|
||||
chapterName: "章节名称",
|
||||
commentText: "修改意见内容(包括理由或依据)",
|
||||
department: "提出部门",
|
||||
responUserName: "提出人",
|
||||
stateText: "处理意见"
|
||||
},
|
||||
dataList: []
|
||||
};
|
||||
params.dataList = JSON.parse(JSON.stringify(row));
|
||||
params.dataList.forEach(item => {
|
||||
if (item.state === "1") {
|
||||
item.stateText = "上报";
|
||||
} else if (item.state === "2") {
|
||||
item.stateText = "处理后上报";
|
||||
} else {
|
||||
item.stateText = "不上报";
|
||||
}
|
||||
});
|
||||
this.$http.downloadFile("/api/lawss/activiti/export_excel", params, title, res => {
|
||||
});
|
||||
},
|
||||
stateText(row) {
|
||||
if (row === "1") {
|
||||
return "上报";
|
||||
} else if (row === "2") {
|
||||
return "处理后上报";
|
||||
}
|
||||
},
|
||||
handleTabs(name) {
|
||||
this.active = name;
|
||||
},
|
||||
handleSave() {
|
||||
},
|
||||
handleSubmit() {
|
||||
if (this.data.length < 1) {
|
||||
this.$message.warning("请输入征求意见搞");
|
||||
} else {
|
||||
this.isSubmit = true;
|
||||
var json = this.json;
|
||||
json.actionFlag = 0;
|
||||
json.commentText = this.commentText;
|
||||
this.$http.post("lawss/activiti/completeTask", {
|
||||
json: JSON.stringify(json),
|
||||
taskId: this.taskIds,
|
||||
userId: this.$store.getters.userInfo.userId
|
||||
}, {}, res => {
|
||||
if (res.success) {
|
||||
this.$message.success("提交成功");
|
||||
this.$router.push("/processCenter");
|
||||
}
|
||||
this.isSubmit = false;
|
||||
});
|
||||
}
|
||||
},
|
||||
handleSubmitNo() {
|
||||
if (this.commentText) {
|
||||
this.isSubmit = true;
|
||||
var json = this.json;
|
||||
json.actionFlag = 1;
|
||||
json.commentText = this.commentText;
|
||||
this.$http.post("lawss/activiti/completeTask", {
|
||||
json: JSON.stringify(json),
|
||||
taskIds: this.taskIds,
|
||||
userId: this.$store.getters.userInfo.userId
|
||||
}, {}, res => {
|
||||
if (res.success) {
|
||||
this.$message.success("驳回成功");
|
||||
this.$router.push("/processCenter");
|
||||
}
|
||||
this.isSubmit = false;
|
||||
});
|
||||
} else {
|
||||
this.$message.warning("请输入反馈意见");
|
||||
}
|
||||
},
|
||||
getData() {
|
||||
return new Promise((resolve, reject) => {
|
||||
inboundLiaisonDetail({
|
||||
taskIds: this.taskIds,
|
||||
pId: this.pId
|
||||
}).then(res => {
|
||||
let data = JSON.parse(res.mesg)
|
||||
this.form.fjList = data.fjList || data.form.fjList
|
||||
this.form.fjListId = data.fjListId || data.form.fjListId
|
||||
this.form.lawsNumber = data.lawsNumber || data.form.lawsNumber
|
||||
this.form.lawsName = data.lawsName || data.form.lawsName
|
||||
this.form.endTime = data.endTime || data.form.endTime;
|
||||
this.form.cname = data.cname || data.form.cname;
|
||||
this.oldData = JSON.parse(JSON.stringify(data.info))
|
||||
var arr = []
|
||||
data.info.forEach(item => {
|
||||
if (item.state != '3') {
|
||||
arr.push(item)
|
||||
}
|
||||
})
|
||||
this.json = data
|
||||
this.data = arr
|
||||
this.oldData = data.oldinfo
|
||||
}).catch(e => {
|
||||
});
|
||||
});
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
this.getHistoryData();
|
||||
this.getData();
|
||||
}
|
||||
};
|
||||
</script>
|
||||
|
||||
<style lang="less" scoped>
|
||||
@import '~@/assets/styles/style';
|
||||
|
||||
.phoneZczqyjStep7 {
|
||||
/deep/.van-dialog__content {
|
||||
min-height: 300px;
|
||||
padding: 10px;
|
||||
}
|
||||
.prc-content-border {
|
||||
overflow: auto;
|
||||
}
|
||||
/deep/.prc-content-border .el-form-item__content {
|
||||
width: 270px;
|
||||
}
|
||||
.headerTabs {
|
||||
height: 52px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
position: absolute;
|
||||
top: 52px;
|
||||
right: 10px;
|
||||
.headerTabsItem {
|
||||
border: 1px solid #c1c1c1;
|
||||
padding: 0 5px;
|
||||
height: 30px;
|
||||
line-height: 30px;
|
||||
cursor: pointer;
|
||||
}
|
||||
.active {
|
||||
border: 1px solid #E6A23C;
|
||||
color: #fff;
|
||||
background: #E6A23C;
|
||||
}
|
||||
}
|
||||
.content {
|
||||
border-top: 1px solid #DCDFE6;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: space-between;
|
||||
margin-top: 52px;
|
||||
height: calc(~'100% - 155px');
|
||||
overflow: auto;
|
||||
.tableTitle {
|
||||
margin-bottom: 10px;
|
||||
height: 30px;
|
||||
line-height: 30px;
|
||||
position: relative;
|
||||
font-size: 13px;
|
||||
font-weight: bold;
|
||||
.tableButton {
|
||||
position: absolute;
|
||||
right: 0;
|
||||
top: 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
||||
@@ -0,0 +1,494 @@
|
||||
<template>
|
||||
<div class="phoneZczqyjStep8">
|
||||
<ProcessHeaderPhone toggle>
|
||||
<template slot="proName">政策征求意见流程</template>
|
||||
<template slot="proNode">法规认证部副总监审核</template>
|
||||
</ProcessHeaderPhone>
|
||||
<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-show="active === '1'">
|
||||
<div style="flex: auto; overflow: auto;">
|
||||
<el-form
|
||||
ref="zczqyjForm"
|
||||
:model="form"
|
||||
:rules="formRules"
|
||||
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="政策编号" prop="lawsNumber" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
disabled
|
||||
v-model="form.lawsNumber"
|
||||
placeholder="请输入政策编号"
|
||||
clearable
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="政策名称" prop="lawsName" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
disabled
|
||||
v-model="form.lawsName"
|
||||
placeholder="请输入政策名称"
|
||||
clearable
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</div>
|
||||
</el-form>
|
||||
<ProcessTitle>
|
||||
<template slot="title">征求意见列表</template>
|
||||
</ProcessTitle>
|
||||
<el-table
|
||||
ref="multipleTable"
|
||||
:data="data"
|
||||
tooltip-effect="dark"
|
||||
border
|
||||
style="width: 100%; flex: auto;"
|
||||
class="drag-table"
|
||||
:default-sort = "{prop: 'chapterNumber', order: 'ascending'}"
|
||||
:header-cell-style="{background: '#E8E8E8', color: '#333333', fontSize: '16px',
|
||||
fontWeight: 'bold', height: '48px'}">
|
||||
<el-table-column
|
||||
type="index"
|
||||
label="序号"
|
||||
width="55"
|
||||
align="center">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="chapterNumber"
|
||||
align="center"
|
||||
sortable
|
||||
label="章条编号"
|
||||
width="101px">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="chapterName"
|
||||
align="center"
|
||||
width="200px"
|
||||
label="章节名称">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
align="center"
|
||||
prop="commentText"
|
||||
label="修改意见内容(包括理由或依据)">
|
||||
<el-table-column
|
||||
prop="oldText"
|
||||
align="center"
|
||||
label="修改前">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="newText"
|
||||
align="center"
|
||||
label="修改后">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="changeReason"
|
||||
align="center"
|
||||
label="修改理由">
|
||||
</el-table-column>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="reason"
|
||||
align="center"
|
||||
label="原因"
|
||||
width="200px">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="department"
|
||||
align="center"
|
||||
label="提出部门">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="responUserName"
|
||||
align="center"
|
||||
label="提出人">
|
||||
</el-table-column>
|
||||
<!-- <el-table-column-->
|
||||
<!-- prop="dealComment"-->
|
||||
<!-- align="center"-->
|
||||
<!-- label="处理意见">-->
|
||||
<!-- <template slot-scope="scope">-->
|
||||
<!-- <div>{{ stateText(scope.row.state) }}</div>-->
|
||||
<!-- </template>-->
|
||||
<!-- </el-table-column>-->
|
||||
</el-table>
|
||||
</div>
|
||||
<el-collapse accordion>
|
||||
<el-collapse-item title="审批意见">
|
||||
<div style="margin: 10px 0;">
|
||||
<el-input
|
||||
type="textarea"
|
||||
:rows="3"
|
||||
resize="none"
|
||||
placeholder="请输入意见"
|
||||
v-model="commentText">
|
||||
</el-input>
|
||||
</div>
|
||||
</el-collapse-item>
|
||||
</el-collapse>
|
||||
</div>
|
||||
<div class="content" v-show="active === '2'">
|
||||
<el-table
|
||||
height="100%"
|
||||
ref="selection"
|
||||
:data="histortData"
|
||||
tooltip-effect="dark"
|
||||
style="width: 100%"
|
||||
border
|
||||
row-key="id"
|
||||
:header-cell-style="{background: '#f8f8f9', color: '#515a6e'}">
|
||||
<el-table-column
|
||||
prop="name"
|
||||
label="任务步骤"
|
||||
min-width="130"
|
||||
align="center"
|
||||
sortable="custom"
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="assignee"
|
||||
min-width="130"
|
||||
label="任务受理人"
|
||||
align="center"
|
||||
sortable="custom"
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="createTime"
|
||||
label="创建时间"
|
||||
min-width="130"
|
||||
sortable="custom"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.createTime ? $moment(scope.row.createTime).format("YYYY-MM-DD") : "" }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="endTime"
|
||||
label="完成时间"
|
||||
min-width="130"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.endTime ? $moment(scope.row.endTime).format("YYYY-MM-DD") : "" }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="comment"
|
||||
label="流程信息"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.commentText }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="completeFlag"
|
||||
label="状态"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.endTime ? "已完成" : "未完成" }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
</div>
|
||||
<ProcessFooter
|
||||
show-submit
|
||||
:submitLoading="isSubmit"
|
||||
:saveLoading="saveLoading"
|
||||
@save="handleSave"
|
||||
@submit="handleSubmit"
|
||||
show-back
|
||||
@back="handleSubmitNo"
|
||||
approval
|
||||
submitBTNText="同意"
|
||||
show-transfer
|
||||
@transfer="handleTransfer"
|
||||
>
|
||||
</ProcessFooter>
|
||||
<Role-tree
|
||||
check-box
|
||||
is-title="转办处理人"
|
||||
:is-visible.sync="drawerModal"
|
||||
@checkedRole="checkedRole"
|
||||
></Role-tree>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { Dialog } from 'vant';
|
||||
import ProcessHeaderPhone from "process/components/ProcessHeaderPhone";
|
||||
import ProcessHeader from "../../components/ProcessHeader";
|
||||
import ProcessFooter from "../../components/ProcessFooter";
|
||||
import ProcessTitle from "../../components/ProcessTitle";
|
||||
import { inboundLiaisonDetail, processCreateStand, changeAssigneeNew } from "api/process";
|
||||
import axios from "axios";
|
||||
|
||||
export default {
|
||||
name: "phoneZczqyjStep8",
|
||||
data() {
|
||||
return {
|
||||
drawerModal: false,
|
||||
histortData: [],
|
||||
oldData: [],
|
||||
data: [],
|
||||
commentText: "",
|
||||
taskIds: this.$route.query.taskIds,
|
||||
pId: this.$route.query.prcId,
|
||||
roleRow: {},
|
||||
nodeList: [],
|
||||
type: "",
|
||||
defaultProps: {
|
||||
children: "children",
|
||||
label: "name"
|
||||
},
|
||||
treeData: [], // 人员数据
|
||||
modalshowflag: false, // drawer开关
|
||||
drawerTitle: "", //drawer标题
|
||||
textarea: "", // 意见
|
||||
ListModel: false, // 新增编辑抽屉开关
|
||||
active: "1", // 默认显示
|
||||
isSubmit: false,
|
||||
saveLoading: false,
|
||||
form: {
|
||||
lawsNumber: '', // 政策编号
|
||||
lawsName: '', // 政策名称
|
||||
endTime: "", // 结束日期
|
||||
cname: "", // 名称
|
||||
fjList: [],
|
||||
fjListId: '',
|
||||
},
|
||||
formRules: {
|
||||
responUserList: [
|
||||
{required: true, message: "请选择责任人", trigger: "change"}
|
||||
]
|
||||
},
|
||||
json: {}
|
||||
};
|
||||
},
|
||||
components: {
|
||||
ProcessHeaderPhone,
|
||||
ProcessHeader,
|
||||
ProcessFooter,
|
||||
ProcessTitle
|
||||
},
|
||||
methods: {
|
||||
handleTransfer() {
|
||||
this.drawerModal = true
|
||||
},
|
||||
checkedRole (data) {
|
||||
changeAssigneeNew({
|
||||
taskId: this.$route.query.taskIds, // 任务id
|
||||
userId:this.$store.getters.userInfo.userId, // 委托人
|
||||
assignee: data[0].id, // 被委托人
|
||||
pId: this.$route.query.prcId, // 流程实例
|
||||
}).then(res => {
|
||||
if (res.success) {
|
||||
this.drawerModal = false
|
||||
this.$message.success('调整成功')
|
||||
this.processNum()
|
||||
this.$router.push({path:'/processCenter?tabsName=ProcessCenter'})
|
||||
} else {
|
||||
this.$message.warning(res.message)
|
||||
}
|
||||
})
|
||||
},
|
||||
// 请求转换流程图
|
||||
processNum (row) {
|
||||
axios.request({
|
||||
url: '/api/lawss/activiti/getImg?_t=' + new Date().getTime(),
|
||||
responseType: 'blob',
|
||||
method: 'get',
|
||||
params: {
|
||||
prcNum: this.$route.query.prcNum
|
||||
}
|
||||
}).then(res => {
|
||||
this.processStep = window.URL.createObjectURL(res.data)
|
||||
})
|
||||
},
|
||||
getHistoryData() {
|
||||
this.$http.get("lawss/activiti/get_list_by_instance", {
|
||||
prcNum: this.$route.query.prcNum
|
||||
}, {}, res => {
|
||||
this.histortData = res;
|
||||
}, e => {
|
||||
});
|
||||
},
|
||||
upload(row, title) {
|
||||
var params = {
|
||||
columnName: {
|
||||
chapterNumber: "章条编号",
|
||||
chapterName: "章节名称",
|
||||
commentText: "修改意见内容(包括理由或依据)",
|
||||
department: "提出部门",
|
||||
responUserName: "提出人",
|
||||
stateText: "处理意见"
|
||||
},
|
||||
dataList: []
|
||||
};
|
||||
params.dataList = JSON.parse(JSON.stringify(row));
|
||||
params.dataList.forEach(item => {
|
||||
if (item.state === "1") {
|
||||
item.stateText = "上报";
|
||||
} else if (item.state === "2") {
|
||||
item.stateText = "处理后上报";
|
||||
} else {
|
||||
item.stateText = "不上报";
|
||||
}
|
||||
});
|
||||
this.$http.downloadFile("/api/lawss/activiti/export_excel", params, title, res => {
|
||||
});
|
||||
},
|
||||
stateText(row) {
|
||||
if (row === "1") {
|
||||
return "上报";
|
||||
} else if (row === "2") {
|
||||
return "处理后上报";
|
||||
}
|
||||
},
|
||||
handleTabs(name) {
|
||||
this.active = name;
|
||||
},
|
||||
handleSave() {
|
||||
},
|
||||
handleSubmit() {
|
||||
if (this.data.length < 1) {
|
||||
this.$message.warning("请输入征求意见搞");
|
||||
} else {
|
||||
this.isSubmit = true;
|
||||
var json = this.json;
|
||||
json.actionFlag = 0;
|
||||
json.commentText = this.commentText;
|
||||
this.$http.post("lawss/activiti/completeTask", {
|
||||
json: JSON.stringify(json),
|
||||
taskId: this.taskIds,
|
||||
userId: this.$store.getters.userInfo.userId
|
||||
}, {}, res => {
|
||||
if (res.success) {
|
||||
this.$message.success("提交成功");
|
||||
this.$router.push("/processCenter");
|
||||
}
|
||||
this.isSubmit = false;
|
||||
});
|
||||
}
|
||||
},
|
||||
handleSubmitNo() {
|
||||
if (this.commentText) {
|
||||
this.isSubmit = true;
|
||||
var json = this.json;
|
||||
json.actionFlag = 1;
|
||||
json.commentText = this.commentText;
|
||||
this.$http.post("lawss/activiti/completeTask", {
|
||||
json: JSON.stringify(json),
|
||||
taskIds: this.taskIds,
|
||||
userId: this.$store.getters.userInfo.userId
|
||||
}, {}, res => {
|
||||
if (res.success) {
|
||||
this.$message.success("驳回成功");
|
||||
this.$router.push("/processCenter");
|
||||
}
|
||||
this.isSubmit = false;
|
||||
});
|
||||
} else {
|
||||
this.$message.warning("请输入反馈意见");
|
||||
}
|
||||
},
|
||||
getData() {
|
||||
return new Promise((resolve, reject) => {
|
||||
inboundLiaisonDetail({
|
||||
taskIds: this.taskIds,
|
||||
pId: this.pId
|
||||
}).then(res => {
|
||||
let data = JSON.parse(res.mesg)
|
||||
this.form.fjList = data.fjList || data.form.fjList
|
||||
this.form.fjListId = data.fjListId || data.form.fjListId
|
||||
this.form.lawsNumber = data.lawsNumber || data.form.lawsNumber
|
||||
this.form.lawsName = data.lawsName || data.form.lawsName
|
||||
this.form.endTime = data.endTime || data.form.endTime;
|
||||
this.form.cname = data.cname || data.form.cname;
|
||||
this.oldData = JSON.parse(JSON.stringify(data.info))
|
||||
var arr = []
|
||||
data.info.forEach(item => {
|
||||
if (item.state != '3') {
|
||||
arr.push(item)
|
||||
}
|
||||
})
|
||||
this.json = data
|
||||
this.data = arr
|
||||
this.oldData = data.oldinfo
|
||||
}).catch(e => {
|
||||
});
|
||||
});
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
this.getHistoryData();
|
||||
this.getData();
|
||||
}
|
||||
};
|
||||
</script>
|
||||
|
||||
<style lang="less" scoped>
|
||||
@import '~@/assets/styles/style';
|
||||
|
||||
.phoneZczqyjStep8 {
|
||||
/deep/.van-dialog__content {
|
||||
min-height: 300px;
|
||||
padding: 10px;
|
||||
}
|
||||
.prc-content-border {
|
||||
overflow: auto;
|
||||
}
|
||||
/deep/.prc-content-border .el-form-item__content {
|
||||
width: 270px;
|
||||
}
|
||||
.headerTabs {
|
||||
height: 52px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
position: absolute;
|
||||
top: 52px;
|
||||
right: 10px;
|
||||
.headerTabsItem {
|
||||
border: 1px solid #c1c1c1;
|
||||
padding: 0 5px;
|
||||
height: 30px;
|
||||
line-height: 30px;
|
||||
cursor: pointer;
|
||||
}
|
||||
.active {
|
||||
border: 1px solid #E6A23C;
|
||||
color: #fff;
|
||||
background: #E6A23C;
|
||||
}
|
||||
}
|
||||
.content {
|
||||
border-top: 1px solid #DCDFE6;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: space-between;
|
||||
margin-top: 52px;
|
||||
height: calc(~'100% - 155px');
|
||||
overflow: auto;
|
||||
.tableTitle {
|
||||
margin-bottom: 10px;
|
||||
height: 30px;
|
||||
line-height: 30px;
|
||||
position: relative;
|
||||
font-size: 13px;
|
||||
font-weight: bold;
|
||||
.tableButton {
|
||||
position: absolute;
|
||||
right: 0;
|
||||
top: 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
||||
@@ -0,0 +1,494 @@
|
||||
<template>
|
||||
<div class="phoneZczqyjStep9">
|
||||
<ProcessHeaderPhone toggle>
|
||||
<template slot="proName">政策征求意见流程</template>
|
||||
<template slot="proNode">法规认证部总监批准</template>
|
||||
</ProcessHeaderPhone>
|
||||
<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-show="active === '1'">
|
||||
<div style="flex: auto; overflow: auto;">
|
||||
<el-form
|
||||
ref="zczqyjForm"
|
||||
:model="form"
|
||||
:rules="formRules"
|
||||
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="政策编号" prop="lawsNumber" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
disabled
|
||||
v-model="form.lawsNumber"
|
||||
placeholder="请输入政策编号"
|
||||
clearable
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="政策名称" prop="lawsName" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
disabled
|
||||
v-model="form.lawsName"
|
||||
placeholder="请输入政策名称"
|
||||
clearable
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</div>
|
||||
</el-form>
|
||||
<ProcessTitle>
|
||||
<template slot="title">征求意见列表</template>
|
||||
</ProcessTitle>
|
||||
<el-table
|
||||
ref="multipleTable"
|
||||
:data="data"
|
||||
tooltip-effect="dark"
|
||||
border
|
||||
style="width: 100%; flex: auto;"
|
||||
class="drag-table"
|
||||
:default-sort = "{prop: 'chapterNumber', order: 'ascending'}"
|
||||
:header-cell-style="{background: '#E8E8E8', color: '#333333', fontSize: '16px',
|
||||
fontWeight: 'bold', height: '48px'}">
|
||||
<el-table-column
|
||||
type="index"
|
||||
label="序号"
|
||||
width="55"
|
||||
align="center">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="chapterNumber"
|
||||
align="center"
|
||||
sortable
|
||||
label="章条编号"
|
||||
width="101px">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="chapterName"
|
||||
align="center"
|
||||
width="200px"
|
||||
label="章节名称">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
align="center"
|
||||
prop="commentText"
|
||||
label="修改意见内容(包括理由或依据)">
|
||||
<el-table-column
|
||||
prop="oldText"
|
||||
align="center"
|
||||
label="修改前">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="newText"
|
||||
align="center"
|
||||
label="修改后">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="changeReason"
|
||||
align="center"
|
||||
label="修改理由">
|
||||
</el-table-column>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="reason"
|
||||
align="center"
|
||||
label="原因"
|
||||
width="200px">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="department"
|
||||
align="center"
|
||||
label="提出部门">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="responUserName"
|
||||
align="center"
|
||||
label="提出人">
|
||||
</el-table-column>
|
||||
<!-- <el-table-column-->
|
||||
<!-- prop="dealComment"-->
|
||||
<!-- align="center"-->
|
||||
<!-- label="处理意见">-->
|
||||
<!-- <template slot-scope="scope">-->
|
||||
<!-- <div>{{ stateText(scope.row.state) }}</div>-->
|
||||
<!-- </template>-->
|
||||
<!-- </el-table-column>-->
|
||||
</el-table>
|
||||
</div>
|
||||
<el-collapse accordion>
|
||||
<el-collapse-item title="审批意见">
|
||||
<div style="margin: 10px 0;">
|
||||
<el-input
|
||||
type="textarea"
|
||||
:rows="3"
|
||||
resize="none"
|
||||
placeholder="请输入意见"
|
||||
v-model="commentText">
|
||||
</el-input>
|
||||
</div>
|
||||
</el-collapse-item>
|
||||
</el-collapse>
|
||||
</div>
|
||||
<div class="content" v-show="active === '2'">
|
||||
<el-table
|
||||
height="100%"
|
||||
ref="selection"
|
||||
:data="histortData"
|
||||
tooltip-effect="dark"
|
||||
style="width: 100%"
|
||||
border
|
||||
row-key="id"
|
||||
:header-cell-style="{background: '#f8f8f9', color: '#515a6e'}">
|
||||
<el-table-column
|
||||
prop="name"
|
||||
label="任务步骤"
|
||||
align="center"
|
||||
min-width="130"
|
||||
sortable="custom"
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="assignee"
|
||||
label="任务受理人"
|
||||
align="center"
|
||||
min-width="130"
|
||||
sortable="custom"
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="createTime"
|
||||
label="创建时间"
|
||||
min-width="130"
|
||||
sortable="custom"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.createTime ? $moment(scope.row.createTime).format("YYYY-MM-DD") : "" }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="endTime"
|
||||
label="完成时间"
|
||||
min-width="130"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.endTime ? $moment(scope.row.endTime).format("YYYY-MM-DD") : "" }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="comment"
|
||||
label="流程信息"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.commentText }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="completeFlag"
|
||||
label="状态"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.endTime ? "已完成" : "未完成" }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
</div>
|
||||
<ProcessFooter
|
||||
show-submit
|
||||
:submitLoading="isSubmit"
|
||||
:saveLoading="saveLoading"
|
||||
@save="handleSave"
|
||||
@submit="handleSubmit"
|
||||
show-back
|
||||
@back="handleSubmitNo"
|
||||
approval
|
||||
submitBTNText="同意"
|
||||
show-transfer
|
||||
@transfer="handleTransfer"
|
||||
>
|
||||
</ProcessFooter>
|
||||
<Role-tree
|
||||
check-box
|
||||
is-title="转办处理人"
|
||||
:is-visible.sync="drawerModal"
|
||||
@checkedRole="checkedRole"
|
||||
></Role-tree>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { Dialog } from 'vant';
|
||||
import ProcessHeaderPhone from "process/components/ProcessHeaderPhone";
|
||||
import ProcessHeader from "../../components/ProcessHeader";
|
||||
import ProcessFooter from "../../components/ProcessFooter";
|
||||
import ProcessTitle from "../../components/ProcessTitle";
|
||||
import { inboundLiaisonDetail, processCreateStand, changeAssigneeNew } from "api/process";
|
||||
import axios from "axios";
|
||||
|
||||
export default {
|
||||
name: "phoneZczqyjStep9",
|
||||
data() {
|
||||
return {
|
||||
drawerModal: false,
|
||||
histortData: [],
|
||||
oldData: [],
|
||||
data: [],
|
||||
commentText: "",
|
||||
taskIds: this.$route.query.taskIds,
|
||||
pId: this.$route.query.prcId,
|
||||
roleRow: {},
|
||||
nodeList: [],
|
||||
type: "",
|
||||
defaultProps: {
|
||||
children: "children",
|
||||
label: "name"
|
||||
},
|
||||
treeData: [], // 人员数据
|
||||
modalshowflag: false, // drawer开关
|
||||
drawerTitle: "", //drawer标题
|
||||
textarea: "", // 意见
|
||||
ListModel: false, // 新增编辑抽屉开关
|
||||
active: "1", // 默认显示
|
||||
isSubmit: false,
|
||||
saveLoading: false,
|
||||
form: {
|
||||
lawsNumber: '', // 政策编号
|
||||
lawsName: '', // 政策名称
|
||||
endTime: "", // 结束日期
|
||||
cname: "", // 名称
|
||||
fjList: [],
|
||||
fjListId: '',
|
||||
},
|
||||
formRules: {
|
||||
responUserList: [
|
||||
{required: true, message: "请选择责任人", trigger: "change"}
|
||||
]
|
||||
},
|
||||
json: {}
|
||||
};
|
||||
},
|
||||
components: {
|
||||
ProcessHeaderPhone,
|
||||
ProcessHeader,
|
||||
ProcessFooter,
|
||||
ProcessTitle
|
||||
},
|
||||
methods: {
|
||||
handleTransfer() {
|
||||
this.drawerModal = true
|
||||
},
|
||||
checkedRole (data) {
|
||||
changeAssigneeNew({
|
||||
taskId: this.$route.query.taskIds, // 任务id
|
||||
userId:this.$store.getters.userInfo.userId, // 委托人
|
||||
assignee: data[0].id, // 被委托人
|
||||
pId: this.$route.query.prcId, // 流程实例
|
||||
}).then(res => {
|
||||
if (res.success) {
|
||||
this.drawerModal = false
|
||||
this.$message.success('调整成功')
|
||||
this.processNum()
|
||||
this.$router.push({path:'/processCenter?tabsName=ProcessCenter'})
|
||||
} else {
|
||||
this.$message.warning(res.message)
|
||||
}
|
||||
})
|
||||
},
|
||||
// 请求转换流程图
|
||||
processNum (row) {
|
||||
axios.request({
|
||||
url: '/api/lawss/activiti/getImg?_t=' + new Date().getTime(),
|
||||
responseType: 'blob',
|
||||
method: 'get',
|
||||
params: {
|
||||
prcNum: this.$route.query.prcNum
|
||||
}
|
||||
}).then(res => {
|
||||
this.processStep = window.URL.createObjectURL(res.data)
|
||||
})
|
||||
},
|
||||
getHistoryData() {
|
||||
this.$http.get("lawss/activiti/get_list_by_instance", {
|
||||
prcNum: this.$route.query.prcNum
|
||||
}, {}, res => {
|
||||
this.histortData = res;
|
||||
}, e => {
|
||||
});
|
||||
},
|
||||
upload(row, title) {
|
||||
var params = {
|
||||
columnName: {
|
||||
chapterNumber: "章条编号",
|
||||
chapterName: "章节名称",
|
||||
commentText: "修改意见内容(包括理由或依据)",
|
||||
department: "提出部门",
|
||||
responUserName: "提出人",
|
||||
stateText: "处理意见"
|
||||
},
|
||||
dataList: []
|
||||
};
|
||||
params.dataList = JSON.parse(JSON.stringify(row));
|
||||
params.dataList.forEach(item => {
|
||||
if (item.state === "1") {
|
||||
item.stateText = "上报";
|
||||
} else if (item.state === "2") {
|
||||
item.stateText = "处理后上报";
|
||||
} else {
|
||||
item.stateText = "不上报";
|
||||
}
|
||||
});
|
||||
this.$http.downloadFile("/api/lawss/activiti/export_excel", params, title, res => {
|
||||
});
|
||||
},
|
||||
stateText(row) {
|
||||
if (row === "1") {
|
||||
return "上报";
|
||||
} else if (row === "2") {
|
||||
return "处理后上报";
|
||||
}
|
||||
},
|
||||
handleTabs(name) {
|
||||
this.active = name;
|
||||
},
|
||||
handleSave() {
|
||||
},
|
||||
handleSubmit() {
|
||||
if (this.data.length < 1) {
|
||||
this.$message.warning("请输入征求意见搞");
|
||||
} else {
|
||||
this.isSubmit = true;
|
||||
var json = this.json;
|
||||
json.actionFlag = 0;
|
||||
json.commentText = this.commentText;
|
||||
this.$http.post("lawss/activiti/completeTask", {
|
||||
json: JSON.stringify(json),
|
||||
taskId: this.taskIds,
|
||||
userId: this.$store.getters.userInfo.userId
|
||||
}, {}, res => {
|
||||
if (res.success) {
|
||||
this.$message.success("提交成功");
|
||||
this.$router.push("/processCenter");
|
||||
}
|
||||
this.isSubmit = false;
|
||||
});
|
||||
}
|
||||
},
|
||||
handleSubmitNo() {
|
||||
if (this.commentText) {
|
||||
this.isSubmit = true;
|
||||
var json = this.json;
|
||||
json.actionFlag = 1;
|
||||
json.commentText = this.commentText;
|
||||
this.$http.post("lawss/activiti/completeTask", {
|
||||
json: JSON.stringify(json),
|
||||
taskIds: this.taskIds,
|
||||
userId: this.$store.getters.userInfo.userId
|
||||
}, {}, res => {
|
||||
if (res.success) {
|
||||
this.$message.success("驳回成功");
|
||||
this.$router.push("/processCenter");
|
||||
}
|
||||
this.isSubmit = false;
|
||||
});
|
||||
} else {
|
||||
this.$message.warning("请输入反馈意见");
|
||||
}
|
||||
},
|
||||
getData() {
|
||||
return new Promise((resolve, reject) => {
|
||||
inboundLiaisonDetail({
|
||||
taskIds: this.taskIds,
|
||||
pId: this.pId
|
||||
}).then(res => {
|
||||
let data = JSON.parse(res.mesg)
|
||||
this.form.fjList = data.fjList || data.form.fjList
|
||||
this.form.fjListId = data.fjListId || data.form.fjListId
|
||||
this.form.lawsNumber = data.lawsNumber || data.form.lawsNumber
|
||||
this.form.lawsName = data.lawsName || data.form.lawsName
|
||||
this.form.endTime = data.endTime || data.form.endTime;
|
||||
this.form.cname = data.cname || data.form.cname;
|
||||
this.oldData = JSON.parse(JSON.stringify(data.info))
|
||||
var arr = []
|
||||
data.info.forEach(item => {
|
||||
if (item.state != '3') {
|
||||
arr.push(item)
|
||||
}
|
||||
})
|
||||
this.json = data
|
||||
this.data = arr
|
||||
this.oldData = data.oldinfo
|
||||
}).catch(e => {
|
||||
});
|
||||
});
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
this.getHistoryData();
|
||||
this.getData();
|
||||
}
|
||||
};
|
||||
</script>
|
||||
|
||||
<style lang="less" scoped>
|
||||
@import '~@/assets/styles/style';
|
||||
|
||||
.phoneZczqyjStep9 {
|
||||
/deep/.van-dialog__content {
|
||||
min-height: 300px;
|
||||
padding: 10px;
|
||||
}
|
||||
.prc-content-border {
|
||||
overflow: auto;
|
||||
}
|
||||
/deep/.prc-content-border .el-form-item__content {
|
||||
width: 270px;
|
||||
}
|
||||
.headerTabs {
|
||||
height: 52px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
position: absolute;
|
||||
top: 52px;
|
||||
right: 10px;
|
||||
.headerTabsItem {
|
||||
border: 1px solid #c1c1c1;
|
||||
padding: 0 5px;
|
||||
height: 30px;
|
||||
line-height: 30px;
|
||||
cursor: pointer;
|
||||
}
|
||||
.active {
|
||||
border: 1px solid #E6A23C;
|
||||
color: #fff;
|
||||
background: #E6A23C;
|
||||
}
|
||||
}
|
||||
.content {
|
||||
border-top: 1px solid #DCDFE6;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: space-between;
|
||||
margin-top: 52px;
|
||||
height: calc(~'100% - 155px');
|
||||
overflow: auto;
|
||||
.tableTitle {
|
||||
margin-bottom: 10px;
|
||||
height: 30px;
|
||||
line-height: 30px;
|
||||
position: relative;
|
||||
font-size: 13px;
|
||||
font-weight: bold;
|
||||
.tableButton {
|
||||
position: absolute;
|
||||
right: 0;
|
||||
top: 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
||||
@@ -1262,7 +1262,8 @@ export default {
|
||||
});
|
||||
}).catch(() => {
|
||||
// 取消删除,清空选择
|
||||
this.selectedList = [];
|
||||
// console.log(this.selectedList)
|
||||
// this.selectedList = [];
|
||||
})
|
||||
}
|
||||
},
|
||||
|
||||
@@ -1984,6 +1984,26 @@ const routes = [
|
||||
title: '标准解读流程'
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/phoneBzjdStep5',
|
||||
name: 'phoneBzjdStep5',
|
||||
component: () => import('@/pages/processCenter/pages/phone/bzjd/step5.vue'),
|
||||
meta: {
|
||||
isBoolean: true,
|
||||
requireAuth: true,
|
||||
title: '标准解读流程'
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/phoneBzjdStep6',
|
||||
name: 'phoneBzjdStep6',
|
||||
component: () => import('@/pages/processCenter/pages/phone/bzjd/step6.vue'),
|
||||
meta: {
|
||||
isBoolean: true,
|
||||
requireAuth: true,
|
||||
title: '标准解读流程'
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/phoneBzqdfbStep4',
|
||||
name: 'phoneBzqdfbStep4',
|
||||
@@ -2054,6 +2074,36 @@ const routes = [
|
||||
title: '项目合规评估流程'
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/phoneXmqdqrStep5',
|
||||
name: 'phoneXmqdqrStep5',
|
||||
component: () => import('@/pages/processCenter/pages/phone/xmqdqr/step5.vue'),
|
||||
meta: {
|
||||
isBoolean: true,
|
||||
requireAuth: true,
|
||||
title: '项目清单确认流程'
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/phoneGrbzhxhStep3',
|
||||
name: 'phoneGrbzhxhStep3',
|
||||
component: () => import('@/pages/processCenter/pages/phone/jrbzhxh/step3.vue'),
|
||||
meta: {
|
||||
isBoolean: true,
|
||||
requireAuth: true,
|
||||
title: '加入标准化协会信息提报流程'
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/phoneGrbzhxhStep4',
|
||||
name: 'phoneGrbzhxhStep4',
|
||||
component: () => import('@/pages/processCenter/pages/phone/jrbzhxh/step4.vue'),
|
||||
meta: {
|
||||
isBoolean: true,
|
||||
requireAuth: true,
|
||||
title: '加入标准化协会信息提报流程'
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/phoneWfhxStep5',
|
||||
name: 'phoneWfhxStep5',
|
||||
@@ -2064,6 +2114,66 @@ const routes = [
|
||||
title: '未符合项整改流程'
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/phoneZczqyjStep4',
|
||||
name: 'phoneZczqyjStep4',
|
||||
component: () => import('@/pages/processCenter/pages/phone/zczqyj/step4.vue'),
|
||||
meta: {
|
||||
isBoolean: true,
|
||||
requireAuth: true,
|
||||
title: '政策征求意见流程'
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/phoneZczqyjStep5',
|
||||
name: 'phoneZczqyjStep5',
|
||||
component: () => import('@/pages/processCenter/pages/phone/zczqyj/step5.vue'),
|
||||
meta: {
|
||||
isBoolean: true,
|
||||
requireAuth: true,
|
||||
title: '政策征求意见流程'
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/phoneZczqyjStep6',
|
||||
name: 'phoneZczqyjStep6',
|
||||
component: () => import('@/pages/processCenter/pages/phone/zczqyj/step6.vue'),
|
||||
meta: {
|
||||
isBoolean: true,
|
||||
requireAuth: true,
|
||||
title: '政策征求意见流程'
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/phoneZczqyjStep7',
|
||||
name: 'phoneZczqyjStep7',
|
||||
component: () => import('@/pages/processCenter/pages/phone/zczqyj/step7.vue'),
|
||||
meta: {
|
||||
isBoolean: true,
|
||||
requireAuth: true,
|
||||
title: '政策征求意见流程'
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/phoneZczqyjStep8',
|
||||
name: 'phoneZczqyjStep8',
|
||||
component: () => import('@/pages/processCenter/pages/phone/zczqyj/step8.vue'),
|
||||
meta: {
|
||||
isBoolean: true,
|
||||
requireAuth: true,
|
||||
title: '政策征求意见流程'
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/phoneZczqyjStep9',
|
||||
name: 'phoneZczqyjStep9',
|
||||
component: () => import('@/pages/processCenter/pages/phone/zczqyj/step9.vue'),
|
||||
meta: {
|
||||
isBoolean: true,
|
||||
requireAuth: true,
|
||||
title: '政策征求意见流程'
|
||||
}
|
||||
},
|
||||
]
|
||||
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user