qa-regulatory-gwj-app/pages/mine/promise/detail.vue

115 lines
3.3 KiB
Vue
Raw Normal View History

2023-11-07 10:08:37 +08:00
<template>
<view class="content">
<view class="card">
<view class="title">{{ info.TYPE === '0' ? '安全生产承诺书' : '安全生产责任状' }}</view>
<view v-if="info.TYPE === '0'">{{ info.COVERPEOPLE }}</view>
<view class="text">{{ info.TEXT }}</view>
<view class="collateral">
<view v-for="(item,index) in info.DETAIL" :key="index" class="item">
{{ item.value }}
</view>
</view>
<view class="text">
<view v-if="info.TYPE === '0'">
若违反上述承诺和未履行安全生产职责或发生责任事故的接受政府或公司事故调查组做出的处罚决定
</view>
<view v-if="info.TYPE === '0'">
承诺期限自{{ info.PROMISE_TERM_START }}{{ info.PROMISE_TERM_END }}
</view>
<view v-if="info.TYPE === '1'">
若未履行安全生产职责或发生生产安全事故的接受公司或政府事故调查组做出的处罚
</view>
<view v-if="info.TYPE === '1'">
责任期限自{{ info.PROMISE_TERM_START }}{{ info.PROMISE_TERM_END }}
</view>
</view>
<view class="footer">
<view v-if="info.TYPE === '0'" class="hairdresser">()</view>
<view v-if="info.TYPE === '1'" class="hairdresser">
<view class="promiser">发状人{{ info.COVERPEOPLE }}</view>
<view class="time">{{ info.CREATTIME.substring(0,10) }}</view>
</view>
<view class="respondent">
<view class="promiser">
<text>
{{ info.TYPE === '0' ? '主要负责人签字' : '受状人' }}
</text>
<u--image :showLoading="true" :src="$store.state.filePath + info.FILEPATH"
width="200upx" height="100px" mode="scaleToFill"></u--image>
</view>
<view class="time">
{{ info.SIGNTIME && info.SIGNTIME.substring(0,10) }}
</view>
</view>
</view>
</view>
</view>
</template>
<script>
import {getPromiseView, setPromiseIsRead} from "../../../api";
export default {
data() {
return {
info: {},
}
},
onLoad(option) {
this.getData(option.PROMISE_ID, option.PROMISEPEOPLE_ID, option.TYPE)
},
methods:{
async getData(PROMISE_ID, PROMISEPEOPLE_ID, TYPE) {
if(TYPE === '2') await setPromiseIsRead({PROMISEPEOPLE_ID})
let resData = await getPromiseView({
PROMISE_ID,
PROMISEPEOPLE_ID,
})
const DETAIL = resData.promistDetail.map(item => ({ value: item.COLLATERAL, id: item.PROMISEDETAIL_ID }))
this.info = {
...resData.varList,
...resData.people,
DETAIL,
COVERPEOPLE: resData.coverpeople[0].USERNAME,
}
},
}
}
</script>
<style scoped lang="scss">
.title {
text-align: center;
font-size: 40upx;
font-weight: bold;
}
.text {
text-indent: 60upx;
letter-spacing: 4upx;
text-align: justify;
}
.collateral {
text-indent: 60upx;
letter-spacing: 4upx;
text-align: justify;
}
.respondent, .hairdresser {
margin-top: 60upx;
text-align: right;
.promiser {
display: flex;
align-items: flex-end;
justify-content: flex-end;
}
.time {
text-align: right;
margin-top: 30upx;
margin-left: 110upx;
}
}
</style>