299 lines
		
	
	
		
			10 KiB
		
	
	
	
		
			Vue
		
	
	
	
	
	
			
		
		
	
	
			299 lines
		
	
	
		
			10 KiB
		
	
	
	
		
			Vue
		
	
	
	
	
	
<!-- 隐患上报 查看  BS006_VIEW-->
 | 
						|
<template>
 | 
						|
	<view class="page-wrap">
 | 
						|
		<view class="card">
 | 
						|
			<uni-card margin="0" :is-shadow="true">
 | 
						|
				<u--form labelPosition="left" labelWidth="auto" labelAlign="center" :model="model" ref="wForm"
 | 
						|
					errorType="border-bottom">
 | 
						|
					<u-form-item label="编码" prop="CODE" borderBottom>
 | 
						|
						<u--input disabled disabledColor="#ffffff" v-model="model.CODE" border="none" slot="right"
 | 
						|
							inputAlign="right"></u--input>
 | 
						|
					</u-form-item>
 | 
						|
					<u-form-item label="隐患上报名称" prop="NAME" borderBottom>
 | 
						|
						<u--input disabled disabledColor="#ffffff" v-model="model.NAME" border="none" slot="right"
 | 
						|
							inputAlign="right"></u--input>
 | 
						|
					</u-form-item>
 | 
						|
					<!--<u-form-item label="检查任务" prop="Nav_Check.NAME" borderBottom>
 | 
						|
						<u--input disabled disabledColor="#ffffff" v-model="model.Nav_Check.NAME" border="none"
 | 
						|
							slot="right" inputAlign="right"></u--input>
 | 
						|
					</u-form-item>-->
 | 
						|
					<u-form-item label="检查类型" prop="Nav_CheckType.NAME" borderBottom>
 | 
						|
						<u--input disabled disabledColor="#ffffff" v-model="model.Nav_CheckType.NAME" border="none"
 | 
						|
							slot="right" inputAlign="right"></u--input>
 | 
						|
					</u-form-item>
 | 
						|
					<u-form-item label="检查层级" prop="Nav_CheckTypeLevel.Nav_Enums.NAME" borderBottom>
 | 
						|
						<u--input disabled disabledColor="#ffffff" v-model="model.Nav_CheckTypeLevel.Nav_Enums.NAME"
 | 
						|
							border="none" slot="right" inputAlign="right"></u--input>
 | 
						|
					</u-form-item>
 | 
						|
					<u-form-item label="检查时间" prop="CREATE_TIME" borderBottom>
 | 
						|
						<u--input disabled disabledColor="#ffffff" v-model="model.CREATE_TIME" border="none"
 | 
						|
							slot="right" inputAlign="right"></u--input>
 | 
						|
					</u-form-item>
 | 
						|
					<view class="upload-title">附件</view>
 | 
						|
<!--					<u-album :urls="model.attachments" singleSize="70" keyName="src"></u-album>-->
 | 
						|
					<full-upload v-model="model.Nav_Files" :isShowBtn='false'></full-upload>
 | 
						|
				</u--form>
 | 
						|
			</uni-card>
 | 
						|
		</view>
 | 
						|
		<u-sticky offset-top="20">
 | 
						|
			<view class="sub-form">
 | 
						|
				<view class="sub-form-wrap">
 | 
						|
					<u-form labelPosition="left" labelWidth="auto" labelAlign="center" errorType="border-bottom" :borderBottom="false"
 | 
						|
						ref="sForm">
 | 
						|
						<u-collapse accordion>
 | 
						|
							<uni-card style="margin-bottom: 16px;" margin="0" spacing="0" :is-shadow="false"
 | 
						|
								v-for="(item, index) in model.Nav_ListRiskSubmitContent" :name="index">
 | 
						|
								<u-collapse-item title-border="none" :show-arrow="false" :border="false">
 | 
						|
									<view slot="title" class="collapse-title">
 | 
						|
										<view class="down">
 | 
						|
											<uni-icons type="bottom"></uni-icons>
 | 
						|
										</view>
 | 
						|
										<view class="text">{{index + 1 + '. ' +item.CHECKCONTENT}}</view>
 | 
						|
									</view>
 | 
						|
									<u-form-item label="检查区域" prop="Nav_RiskArea.NAME" borderBottom>
 | 
						|
										<u--input disabled disabledColor="#ffffff" v-model="item.Nav_RiskArea.NAME"
 | 
						|
											border="none" inputAlign="right"></u--input>
 | 
						|
									</u-form-item>
 | 
						|
									<view class="label-title">检查内容</view>
 | 
						|
									<u-form-item prop="DESCREPTION" borderBottom>
 | 
						|
										<u--textarea disabled autoHeight v-model="item.DESCREPTION" placeholder="检查内容"
 | 
						|
											border="surround"></u--textarea>
 | 
						|
									</u-form-item>
 | 
						|
 | 
						|
									<u-form-item label="问题等级" prop="QUESTION_LEVEL_SHOW" borderBottom>
 | 
						|
										<u--input disabled disabledColor="#ffffff" v-model="item.QUESTION_LEVEL_SHOW"
 | 
						|
											border="none" inputAlign="right"></u--input>
 | 
						|
									</u-form-item>
 | 
						|
									<view class="label-title">整改建议与措施</view>
 | 
						|
									<u-form-item prop="DEMAND" borderBottom>
 | 
						|
										<u--textarea disabled autoHeight v-model="item.DEMAND" placeholder="整改建议与措施"
 | 
						|
											border="surround"></u--textarea>
 | 
						|
									</u-form-item>
 | 
						|
									<u-form-item label="隐患原因" prop="listCheckDetailReason" borderBottom>
 | 
						|
										<u--input disabledColor="#ffffff" v-model="item.listCheckDetailReason"
 | 
						|
											border="none" inputAlign="right"></u--input>
 | 
						|
									</u-form-item>
 | 
						|
									<u-form-item label="隐患地点" prop="ADDRESS" borderBottom>
 | 
						|
										<u--input disabledColor="#ffffff" v-model="item.ADDRESS" border="none"
 | 
						|
											inputAlign="right"></u--input>
 | 
						|
									</u-form-item>
 | 
						|
									<u-form-item label="整改期限" prop="LastDateUser" borderBottom>
 | 
						|
										<u--input v-model="item.LastDateUser" disabledColor="#fff" placeholder="请选择整改期限"
 | 
						|
											border="none" inputAlign="right"></u--input>
 | 
						|
									</u-form-item>
 | 
						|
									<u-form-item label="整改实施单位" prop="Nav_DepartmentDeal.NAME" borderBottom>
 | 
						|
										<u--input disabledColor="#fff" v-model="item.Nav_DepartmentDeal.NAME"
 | 
						|
											border="none" inputAlign="right"></u--input>
 | 
						|
									</u-form-item>
 | 
						|
									<u-form-item label="整改责任人" prop="Nav_UserDeal.NAME" borderBottom>
 | 
						|
										<u--input disabledColor="#fff" :value="item.responsibler" border="none"
 | 
						|
											inputAlign="right"></u--input>
 | 
						|
									</u-form-item>
 | 
						|
									<u-form-item label="验收人" prop="Nav_UserCheck.NAME" :borderBottom="false">
 | 
						|
										<u--input disabledColor="#fff" :value="item.accepter" border="none"
 | 
						|
											inputAlign="right"></u--input>
 | 
						|
									</u-form-item>
 | 
						|
								</u-collapse-item>
 | 
						|
							</uni-card>
 | 
						|
						</u-collapse>
 | 
						|
					</u-form>
 | 
						|
				</view>
 | 
						|
			</view>
 | 
						|
		</u-sticky>
 | 
						|
		<audit-process :show="showAudit" @close="handleCloseAudit" :dataSource="auditData" />
 | 
						|
	</view>
 | 
						|
</template>
 | 
						|
 | 
						|
<script>
 | 
						|
	import {
 | 
						|
		guid,
 | 
						|
		initFilter,
 | 
						|
		extendRule,
 | 
						|
		extendInclude,
 | 
						|
		extendGroupRule,
 | 
						|
		initFilterGroup,
 | 
						|
		extendFilterGroup,
 | 
						|
		extendFilterGroupGroupRules
 | 
						|
	} from '../../../../utils/common'
 | 
						|
 | 
						|
	import {
 | 
						|
		GetBS006,
 | 
						|
		getLoadAuditData
 | 
						|
	} from '../../../../services/apply/subPages/BS/riskSubmit'
 | 
						|
	import config from '../../../../config/common'
 | 
						|
 | 
						|
	export default {
 | 
						|
		data() {
 | 
						|
			return {
 | 
						|
				sourceUrl: config.uni_app_web_source_url,
 | 
						|
				tableKey: '0',
 | 
						|
				TaskID: '',
 | 
						|
				model: {
 | 
						|
					ID: '',
 | 
						|
					TaskID: '',
 | 
						|
					Nav_Check: {
 | 
						|
						NAME: ''
 | 
						|
					},
 | 
						|
					Nav_CheckType: {
 | 
						|
						NAME: ''
 | 
						|
					},
 | 
						|
					Nav_CheckTypeLevel: {
 | 
						|
						Nav_Enums: {
 | 
						|
							NAME: ''
 | 
						|
						}
 | 
						|
					},
 | 
						|
					Nav_Files: [],
 | 
						|
					attachments: [], // 附件
 | 
						|
					Nav_ListRiskSubmitContent: [{
 | 
						|
						Nav_Department: {
 | 
						|
							NAME: ''
 | 
						|
						},
 | 
						|
						LastDateUser: null,
 | 
						|
						departmentName: '',
 | 
						|
						userChecker: '',
 | 
						|
						userDetailer: '',
 | 
						|
						Nav_Files: [],
 | 
						|
						Nav_ListRiskQuestionReason: [{
 | 
						|
							Nav_RiskReason: {
 | 
						|
								NAME: ''
 | 
						|
							}
 | 
						|
						}],
 | 
						|
						listCheckDetailReason: '',
 | 
						|
						accepter: '', // 验收人
 | 
						|
						responsibler: '', // 整改责任人
 | 
						|
						Nav_RiskArea: {
 | 
						|
							NAME: ''
 | 
						|
						},
 | 
						|
						Nav_DepartmentDeal: {
 | 
						|
							NAME: ''
 | 
						|
						},
 | 
						|
						Nav_UserCheck: {
 | 
						|
							NAME: ''
 | 
						|
						},
 | 
						|
						Nav_UserDeal: {
 | 
						|
							NAME: ''
 | 
						|
						}
 | 
						|
					}]
 | 
						|
				},
 | 
						|
				isLoadOK: false,
 | 
						|
				lists: [],
 | 
						|
				auditData: [],
 | 
						|
				showAudit: false
 | 
						|
			}
 | 
						|
		},
 | 
						|
		onLoad(option) {
 | 
						|
			this.model.ID = option.ID
 | 
						|
			this.loadData()
 | 
						|
 | 
						|
		},
 | 
						|
		methods: {
 | 
						|
			loadData() {
 | 
						|
				const orgId = uni.getStorageSync('orgId')
 | 
						|
				const json = initFilter(orgId, "", "CODE", 1)
 | 
						|
				extendRule(json, 'ID', 1, this.model.ID);
 | 
						|
				extendInclude(json, 'Nav_Check');
 | 
						|
				extendInclude(json, 'Nav_CheckType');
 | 
						|
				extendInclude(json, 'Nav_CheckTypeLevel.Nav_Enums');
 | 
						|
				extendInclude(json, 'Nav_ListRiskSubmitContent');
 | 
						|
				extendInclude(json, 'Nav_ListRiskSubmitContent.Nav_SafeCheckDetail');
 | 
						|
				extendInclude(json, 'Nav_ListRiskSubmitContent.Nav_CheckMain');
 | 
						|
				extendInclude(json, 'Nav_ListRiskSubmitContent.Nav_Question');
 | 
						|
				extendInclude(json, 'Nav_ListRiskSubmitContent.Nav_CheckMain.Nav_CheckProject');
 | 
						|
				extendInclude(json, 'Nav_ListRiskSubmitContent.Nav_UserDeal');
 | 
						|
				extendInclude(json, 'Nav_ListRiskSubmitContent.Nav_UserCheck');
 | 
						|
				extendInclude(json, 'Nav_ListRiskSubmitContent.Nav_Department');
 | 
						|
				extendInclude(json, 'Nav_ListRiskSubmitContent.Nav_DepartmentDeal');
 | 
						|
				extendInclude(json, 'Nav_ListRiskSubmitContent.Nav_ListRiskQuestionReason.Nav_RiskReason');
 | 
						|
				extendInclude(json, 'Nav_Files.Nav_ImgFile.Nav_File');
 | 
						|
				json.IgnoreDataRule = true
 | 
						|
				GetBS006(json).then(res => {
 | 
						|
					this.model = res
 | 
						|
					if (this.model.Nav_ListRiskSubmitContent != null && this.model.Nav_ListRiskSubmitContent
 | 
						|
						.length > 0) {
 | 
						|
						let reasons = ''
 | 
						|
						this.model.Nav_ListRiskSubmitContent.forEach(e => {
 | 
						|
							reasons = ''
 | 
						|
							if (e.Nav_ListRiskQuestionReason != null && e.Nav_ListRiskQuestionReason
 | 
						|
								.length > 0) {
 | 
						|
								e.Nav_ListRiskQuestionReason.forEach(er => {
 | 
						|
									reasons += er.Nav_RiskReason.NAME
 | 
						|
								})
 | 
						|
							}
 | 
						|
							e.listCheckDetailReason = reasons
 | 
						|
 | 
						|
							e.accepter = e.Nav_UserCheck?.NAME || ''
 | 
						|
							e.responsibler = e.Nav_UserDeal?.NAME || ''
 | 
						|
						})
 | 
						|
					}
 | 
						|
					if (this.model.Nav_Files && this.model.Nav_Files.length) {
 | 
						|
						this.model.attachments = this.model.Nav_Files
 | 
						|
							.filter(i => !!i.Nav_ImgFile?.Nav_File)
 | 
						|
							.map(o => {
 | 
						|
								return {
 | 
						|
									...o.Nav_ImgFile.Nav_File,
 | 
						|
									src: this.sourceUrl + o.Nav_ImgFile.Nav_File.FILE_PATH
 | 
						|
								}
 | 
						|
							})
 | 
						|
					}
 | 
						|
					this.isLoadOK = true
 | 
						|
				})
 | 
						|
			},
 | 
						|
			loadAuditData() {
 | 
						|
				const orgId = uni.getStorageSync('orgId')
 | 
						|
				// const json = initFilter(orgId, "8ca253be-2f46-7e21-b8a7-ccc1000271d8", "CODE", 1)
 | 
						|
				const json = initFilter(orgId, this.model.ID, "CODE", 1)
 | 
						|
				json.Parameter2 = "T_BS_RISK_SUBMIT_NOTICE,RISK_SUBMIT_ID"
 | 
						|
				return new Promise((resolve, reject) => {
 | 
						|
					getLoadAuditData(json).then(res => {
 | 
						|
						if (res) {
 | 
						|
							if (res && res[0].Nav_ApproveDetails.length > 0) {
 | 
						|
								resolve(res)
 | 
						|
							}
 | 
						|
						} else {
 | 
						|
							uni.showToast({
 | 
						|
								title: '暂无审批数据',
 | 
						|
								icon: 'none'
 | 
						|
							})
 | 
						|
						}
 | 
						|
					}).catch(err => {
 | 
						|
						reject(err)
 | 
						|
					})
 | 
						|
				})
 | 
						|
			},
 | 
						|
			handleCloseAudit() {
 | 
						|
				this.showAudit = false
 | 
						|
			}
 | 
						|
		},
 | 
						|
		computed: {},
 | 
						|
		async onNavigationBarButtonTap() {
 | 
						|
			const res = await this.loadAuditData()
 | 
						|
			if (res) {
 | 
						|
				this.auditData = res
 | 
						|
				this.showAudit = true
 | 
						|
			}
 | 
						|
		}
 | 
						|
	}
 | 
						|
</script>
 | 
						|
 | 
						|
 | 
						|
<style scoped>
 | 
						|
	@import url("../../../../style/css/editTemplate.css");
 | 
						|
	.collapse-title {
 | 
						|
		display: flex;
 | 
						|
		justify-content: space-between;
 | 
						|
		align-items: center;
 | 
						|
		width: 100%;
 | 
						|
	}
 | 
						|
	.collapse-title .down {
 | 
						|
		width: 20px;
 | 
						|
		flex: 0 0 auto;
 | 
						|
	}
 | 
						|
	.collapse-title .text {
 | 
						|
		white-space: nowrap;
 | 
						|
		text-overflow: ellipsis;
 | 
						|
		overflow: hidden;
 | 
						|
		flex: 1;
 | 
						|
		width: calc(100% - 60px);
 | 
						|
	}
 | 
						|
</style>
 |