|  | @@ -4,63 +4,81 @@
 | 
	
		
			
				|  |  |  			<uni-section :title="(type==='add'?'新增':'编辑') +'企业' " type="line"></uni-section>
 | 
	
		
			
				|  |  |  			<view class="form-wrap" >
 | 
	
		
			
				|  |  |  				<uni-forms ref="form" label-position="top" :rules="rules" :model="form" :label-width="300">
 | 
	
		
			
				|  |  | -					<uni-forms-item label="企业名称" name="entName"  required>
 | 
	
		
			
				|  |  | -						<uni-easyinput v-model="form.entName" placeholder="请输入企业名称"  />
 | 
	
		
			
				|  |  | -					</uni-forms-item>	
 | 
	
		
			
				|  |  | -					<uni-forms-item label="隐患分类" name="entCatId" required>
 | 
	
		
			
				|  |  | -						<uni-data-select  v-model="form.entCatId" :localdata="entCats" placeholder="请选择企业分类" :clear="false"></uni-data-select>
 | 
	
		
			
				|  |  | -					</uni-forms-item>
 | 
	
		
			
				|  |  | -					<uni-forms-item label="隐患等级" name="dangerLevel" required>
 | 
	
		
			
				|  |  | -						<uni-data-select  v-model="form.dangerLevel" :localdata="dangerLevelOptions" placeholder="请选择隐患等级" :clear="false"></uni-data-select>
 | 
	
		
			
				|  |  | -					</uni-forms-item>
 | 
	
		
			
				|  |  | -					<uni-forms-item label="统一信用编码">
 | 
	
		
			
				|  |  | -						<uni-easyinput v-model="form.entUscc" placeholder="请输入统一信用编码"  />
 | 
	
		
			
				|  |  | -					</uni-forms-item>
 | 
	
		
			
				|  |  | -					<uni-forms-item label="法定代表人">
 | 
	
		
			
				|  |  | -						<uni-easyinput v-model="form.entLegalRepresentative" placeholder="请输入法定代表人"  />
 | 
	
		
			
				|  |  | -					</uni-forms-item>	
 | 
	
		
			
				|  |  | -					<uni-forms-item label="隐患描述">
 | 
	
		
			
				|  |  | -						<uni-easyinput type="textarea" :maxlength="300"
 | 
	
		
			
				|  |  | -						 v-model="form.dangerDesc" autoHeight 
 | 
	
		
			
				|  |  | -						placeholder="请输入隐患描述"></uni-easyinput>
 | 
	
		
			
				|  |  | -						<view class="word-limit">{{form.dangerDesc.length||0}}/300</view>
 | 
	
		
			
				|  |  | -					</uni-forms-item>									
 | 
	
		
			
				|  |  | -					<uni-forms-item label="生产经营地址">
 | 
	
		
			
				|  |  | -						<uni-easyinput v-model="form.entAddress" placeholder="请输入生产经营地址"  />
 | 
	
		
			
				|  |  | -					</uni-forms-item>								
 | 
	
		
			
				|  |  | -					<uni-forms-item label="负责人">
 | 
	
		
			
				|  |  | -						<uni-easyinput v-model="form.charger" placeholder="请输入负责人"  />
 | 
	
		
			
				|  |  | -					</uni-forms-item>													
 | 
	
		
			
				|  |  | -					<uni-forms-item label="负责人电话">
 | 
	
		
			
				|  |  | -						<uni-easyinput v-model="form.chargerPhone" type="number" placeholder="请输入负责人电话"  />
 | 
	
		
			
				|  |  | -					</uni-forms-item>														
 | 
	
		
			
				|  |  | -					<uni-forms-item label="安全负责人">
 | 
	
		
			
				|  |  | -						<uni-easyinput v-model="form.safetyManager" placeholder="请输入安全负责人"  />
 | 
	
		
			
				|  |  | -					</uni-forms-item>	
 | 
	
		
			
				|  |  | -					<uni-forms-item label="安全负责人电话">
 | 
	
		
			
				|  |  | -						<uni-easyinput v-model="form.safetyManagerPhone" type="number" placeholder="请输入安全负责人电话"  />
 | 
	
		
			
				|  |  | -					</uni-forms-item>																		
 | 
	
		
			
				|  |  | -					<uni-forms-item label="从业人员数量">
 | 
	
		
			
				|  |  | -						<uni-easyinput v-model="form.staffNum" type="number" placeholder="请输入从业人员数量"  />
 | 
	
		
			
				|  |  | -					</uni-forms-item>																						
 | 
	
		
			
				|  |  | -					<uni-forms-item label="特种作业人员数量">
 | 
	
		
			
				|  |  | -						<uni-easyinput v-model="form.staffSpecialNum" type="number" placeholder="请输入特种作业人员数量"  />
 | 
	
		
			
				|  |  | -					</uni-forms-item>	
 | 
	
		
			
				|  |  | -					<uni-forms-item label="专职安全生产管理人员数量">
 | 
	
		
			
				|  |  | -						<uni-easyinput v-model="form.staffSafetyNum" type="number" placeholder="请输入专职安全生产管理人员数量"  />
 | 
	
		
			
				|  |  | -					</uni-forms-item>																													
 | 
	
		
			
				|  |  | -					<uni-forms-item label="注册安全工程师人员数">
 | 
	
		
			
				|  |  | -						<uni-easyinput v-model="form.staffCertifiedEngineerNum" type="number" placeholder="请输入注册安全工程师人员数"  />
 | 
	
		
			
				|  |  | -					</uni-forms-item>																																																			
 | 
	
		
			
				|  |  | -					<uni-forms-item label="安全标准化等级">
 | 
	
		
			
				|  |  | -						<uni-data-select  v-model="form.safetyStandardLevel" :localdata="standardLevelOptions" placeholder="请选择企业分类" :clear="false"></uni-data-select>
 | 
	
		
			
				|  |  | -					</uni-forms-item>	
 | 
	
		
			
				|  |  | -					<uni-forms-item label="安全许可证号码">
 | 
	
		
			
				|  |  | -						<uni-easyinput v-model="form.staffSafetyNum" placeholder="请输入安全许可证号码"  />
 | 
	
		
			
				|  |  | -					</uni-forms-item>	
 | 
	
		
			
				|  |  | -					<uni-forms-item label="是否重点企业">
 | 
	
		
			
				|  |  | -						<uni-data-checkbox v-model="form.isMajor" :localdata="isMajors" />
 | 
	
		
			
				|  |  | -					</uni-forms-item>																																																																									
 | 
	
		
			
				|  |  | +					<uni-forms-item  label ="企业/单位名称" >
 | 
	
		
			
				|  |  | +						<uni-data-select  v-model="form.entId" :localdata="entCats" placeholder="请选择企业/单位名称" :clear="false"></uni-data-select>
 | 
	
		
			
				|  |  | +					</uni-forms-item>		
 | 
	
		
			
				|  |  | +					<uni-card padding="0" margin="5px 0">
 | 
	
		
			
				|  |  | +						<uni-forms-item  label ="隐患标题">
 | 
	
		
			
				|  |  | +							<uni-easyinput v-model="form.dangerTitle" placeholder="请输入隐患标题"  />
 | 
	
		
			
				|  |  | +						</uni-forms-item>	
 | 
	
		
			
				|  |  | +						<uni-forms-item  label ="隐患分类" >
 | 
	
		
			
				|  |  | +							<uni-data-select  v-model="form.dangerCatId" :localdata="dangerCats" placeholder="请选择隐患分类" :clear="false"></uni-data-select>
 | 
	
		
			
				|  |  | +						</uni-forms-item>	
 | 
	
		
			
				|  |  | +						<uni-forms-item  label ="隐患等级" >
 | 
	
		
			
				|  |  | +							<uni-data-select  v-model="form.dangerLevel" :localdata="dangerLevelOptions" placeholder="请选择隐患等级" :clear="false"></uni-data-select>
 | 
	
		
			
				|  |  | +						</uni-forms-item>																									
 | 
	
		
			
				|  |  | +						<uni-forms-item  label ="发生位置">
 | 
	
		
			
				|  |  | +							<uni-easyinput v-model="form.dangerLocation" placeholder="请输入发生位置"  />
 | 
	
		
			
				|  |  | +						</uni-forms-item>						
 | 
	
		
			
				|  |  | +						<uni-forms-item label="隐患描述">
 | 
	
		
			
				|  |  | +							<uni-easyinput type="textarea" :maxlength="300"
 | 
	
		
			
				|  |  | +							 v-model="form.dangerDesc" autoHeight 
 | 
	
		
			
				|  |  | +							placeholder="请输入隐患描述"></uni-easyinput>
 | 
	
		
			
				|  |  | +							<view class="word-limit">{{form.dangerDesc.length||0}}/300</view>
 | 
	
		
			
				|  |  | +						</uni-forms-item>	
 | 
	
		
			
				|  |  | +						<uni-forms-item label ="登记时间">
 | 
	
		
			
				|  |  | +							<uni-datetime-picker type="date" v-model="form.submitTime" placeholder="请选择登记时间"  />
 | 
	
		
			
				|  |  | +						</uni-forms-item>
 | 
	
		
			
				|  |  | +					</uni-card>
 | 
	
		
			
				|  |  | +					<uni-card padding="0" margin="5px 0">
 | 
	
		
			
				|  |  | +						<uni-forms-item label ="整改期限">
 | 
	
		
			
				|  |  | +							<uni-datetime-picker type="date" v-model="form.dangerDeadLine" placeholder="请选择整改期限"  />
 | 
	
		
			
				|  |  | +						</uni-forms-item>
 | 
	
		
			
				|  |  | +						<uni-forms-item label="整改类型">
 | 
	
		
			
				|  |  | +							<uni-data-checkbox 
 | 
	
		
			
				|  |  | +							v-model="form.rectifyCat" 
 | 
	
		
			
				|  |  | +							:localdata="[{ value: 1, text: '自行整改' },{ value: 2, text: '外协整改' }]"  />
 | 
	
		
			
				|  |  | +						</uni-forms-item>					
 | 
	
		
			
				|  |  | +						<uni-forms-item label="整改说明">
 | 
	
		
			
				|  |  | +							<uni-easyinput type="textarea" :maxlength="300"
 | 
	
		
			
				|  |  | +							 v-model="form.rectifyRemark" autoHeight 
 | 
	
		
			
				|  |  | +							placeholder="请输入整改说明"></uni-easyinput>
 | 
	
		
			
				|  |  | +							<view class="word-limit">{{form.rectifyRemark.length||0}}/300</view>
 | 
	
		
			
				|  |  | +						</uni-forms-item>																																																																									
 | 
	
		
			
				|  |  | +						<uni-forms-item label ="整改完成时间">
 | 
	
		
			
				|  |  | +							<uni-datetime-picker type="date" v-model="form.rectifyTime" placeholder="请选择整改完成时间"  />
 | 
	
		
			
				|  |  | +						</uni-forms-item>
 | 
	
		
			
				|  |  | +					</uni-card>
 | 
	
		
			
				|  |  | +					<uni-card padding="0" margin="5px 0">
 | 
	
		
			
				|  |  | +						<uni-forms-item label="验收说明">
 | 
	
		
			
				|  |  | +							<uni-easyinput type="textarea" :maxlength="300"
 | 
	
		
			
				|  |  | +							 v-model="form.acceptRemark" autoHeight 
 | 
	
		
			
				|  |  | +							placeholder="请输入验收说明"></uni-easyinput>
 | 
	
		
			
				|  |  | +							<view class="word-limit">{{form.acceptRemark.length||0}}/300</view>
 | 
	
		
			
				|  |  | +						</uni-forms-item>																																																																									
 | 
	
		
			
				|  |  | +						<uni-forms-item label ="验收完成时间">
 | 
	
		
			
				|  |  | +							<uni-datetime-picker type="date" v-model="form.acceptTime" placeholder="请选择验收完成时间"  />
 | 
	
		
			
				|  |  | +						</uni-forms-item>
 | 
	
		
			
				|  |  | +					</uni-card>																																							
 | 
	
		
			
				|  |  | +					<uni-forms-item label="附件">
 | 
	
		
			
				|  |  | +						<view class="attachbox">
 | 
	
		
			
				|  |  | +							<view class="attach"  v-for="(attach, index) in form.attachList" :key="index" 
 | 
	
		
			
				|  |  | +								@click="preview(form.attachList)" 
 | 
	
		
			
				|  |  | +								@longpress="delAttach(index)">
 | 
	
		
			
				|  |  | +								<image :src="attach.attachUrl"></image>
 | 
	
		
			
				|  |  | +							</view>
 | 
	
		
			
				|  |  | +							<view class="attach">
 | 
	
		
			
				|  |  | +								<view class="handle" @click="uploadAttach">
 | 
	
		
			
				|  |  | +									<uni-icons type="plusempty" size="40" color="#999999"></uni-icons>
 | 
	
		
			
				|  |  | +								</view>
 | 
	
		
			
				|  |  | +							</view>
 | 
	
		
			
				|  |  | +						</view>
 | 
	
		
			
				|  |  | +					</uni-forms-item>																					
 | 
	
		
			
				|  |  | +					<uni-forms-item label="是否关闭">
 | 
	
		
			
				|  |  | +						<uni-data-checkbox 
 | 
	
		
			
				|  |  | +						v-model="form.status" 
 | 
	
		
			
				|  |  | +						:localdata="[{ value: 0, text: '未整改' },{ value: 1, text: '已整改完成' }]"  />
 | 
	
		
			
				|  |  | +					</uni-forms-item>																																																																																																																																																																							
 | 
	
		
			
				|  |  |  				</uni-forms>
 | 
	
		
			
				|  |  |  				<view class="handle-container">
 | 
	
		
			
				|  |  |  					<button class="save" type="primary" @click="onSubmit">保存</button>
 | 
	
	
		
			
				|  | @@ -72,7 +90,8 @@
 | 
	
		
			
				|  |  |  </template>
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  <script>
 | 
	
		
			
				|  |  | -	import dangerApi from '@/api/industry.js'
 | 
	
		
			
				|  |  | +	import dangerApi from '@/api/danger.js'
 | 
	
		
			
				|  |  | +	import { upload } from '@/api/upload.js'	
 | 
	
		
			
				|  |  |  	export default{
 | 
	
		
			
				|  |  |  		name:"CreateDanger",
 | 
	
		
			
				|  |  |  		computed:{
 | 
	
	
		
			
				|  | @@ -81,11 +100,21 @@
 | 
	
		
			
				|  |  |  				if(!entCats)return []
 | 
	
		
			
				|  |  |  				return entCats.map(item=>{
 | 
	
		
			
				|  |  |  					return{
 | 
	
		
			
				|  |  | -						value:item.entCatId,
 | 
	
		
			
				|  |  | -						text:item.entCatTitle
 | 
	
		
			
				|  |  | +						value:item.entId,
 | 
	
		
			
				|  |  | +						text:item.entName
 | 
	
		
			
				|  |  |  					}
 | 
	
		
			
				|  |  |  				})
 | 
	
		
			
				|  |  | -			}						
 | 
	
		
			
				|  |  | +			},
 | 
	
		
			
				|  |  | +			dangerCats(){
 | 
	
		
			
				|  |  | +				let dangerCats=uni.getStorageSync('dangerCats')
 | 
	
		
			
				|  |  | +				if(!dangerCats)return []
 | 
	
		
			
				|  |  | +				return dangerCats.map(item=>{
 | 
	
		
			
				|  |  | +					return{
 | 
	
		
			
				|  |  | +						value:item.dangerCatId,
 | 
	
		
			
				|  |  | +						text:item.dangerCatTitle
 | 
	
		
			
				|  |  | +					}
 | 
	
		
			
				|  |  | +				})
 | 
	
		
			
				|  |  | +			},						
 | 
	
		
			
				|  |  |  		},
 | 
	
		
			
				|  |  |  		data(){
 | 
	
		
			
				|  |  |  			return{
 | 
	
	
		
			
				|  | @@ -118,12 +147,8 @@
 | 
	
		
			
				|  |  |  				  { value: 4, text: '较小' }
 | 
	
		
			
				|  |  |  				],
 | 
	
		
			
				|  |  |  				statusOptions:[
 | 
	
		
			
				|  |  | -				  { value: 0, text: '处理中' },
 | 
	
		
			
				|  |  | -				  { value: 1, text: '已整改' }
 | 
	
		
			
				|  |  | -				],
 | 
	
		
			
				|  |  | -				isMajors:[
 | 
	
		
			
				|  |  | -					{value:1,text:'是'},
 | 
	
		
			
				|  |  | -					{value:0,text:'否'},
 | 
	
		
			
				|  |  | +				  { value: 0, text: '未整改' },
 | 
	
		
			
				|  |  | +				  { value: 1, text: '已整改完成' }
 | 
	
		
			
				|  |  |  				],
 | 
	
		
			
				|  |  |  				form:{
 | 
	
		
			
				|  |  |  					entId: undefined,
 | 
	
	
		
			
				|  | @@ -195,11 +220,57 @@
 | 
	
		
			
				|  |  |  					})
 | 
	
		
			
				|  |  |  				})
 | 
	
		
			
				|  |  |  			},
 | 
	
		
			
				|  |  | +			preview(urls=[]){
 | 
	
		
			
				|  |  | +				if(urls.length>0){
 | 
	
		
			
				|  |  | +					urls=urls.map(item=>item.attachUrl);
 | 
	
		
			
				|  |  | +					uni.previewImage({
 | 
	
		
			
				|  |  | +						urls
 | 
	
		
			
				|  |  | +					})	
 | 
	
		
			
				|  |  | +				}
 | 
	
		
			
				|  |  | +			},
 | 
	
		
			
				|  |  | +			delAttach(idx){
 | 
	
		
			
				|  |  | +				const self=this;
 | 
	
		
			
				|  |  | +				uni.showModal({
 | 
	
		
			
				|  |  | +					title: '提示',
 | 
	
		
			
				|  |  | +					content: '是否确定删除',
 | 
	
		
			
				|  |  | +					success: function (res) {
 | 
	
		
			
				|  |  | +						if (res.confirm) {
 | 
	
		
			
				|  |  | +							self.form.attachList=self.form.attachList.filter((item,index)=>index!==idx);				
 | 
	
		
			
				|  |  | +						}
 | 
	
		
			
				|  |  | +					}
 | 
	
		
			
				|  |  | +				});				
 | 
	
		
			
				|  |  | +			},
 | 
	
		
			
				|  |  | +			uploadAttach(){
 | 
	
		
			
				|  |  | +				const self=this;
 | 
	
		
			
				|  |  | +				uni.chooseImage({
 | 
	
		
			
				|  |  | +					count: 1,
 | 
	
		
			
				|  |  | +					sizeType: ['original', 'compressed'],
 | 
	
		
			
				|  |  | +					sourceType: ['album',"camera"], //从相册选择
 | 
	
		
			
				|  |  | +					success:(res)=>{
 | 
	
		
			
				|  |  | +						let filePath=res.tempFilePaths[0]
 | 
	
		
			
				|  |  | +						upload({filePath}).then((resq)=>{
 | 
	
		
			
				|  |  | +							var fileResq=JSON.parse(resq)							
 | 
	
		
			
				|  |  | +							let file={
 | 
	
		
			
				|  |  | +								"attachId": fileResq.data.fileId,
 | 
	
		
			
				|  |  | +								"attachName": fileResq.data.fileTitle,
 | 
	
		
			
				|  |  | +								"attachExt": fileResq.data.fileExt,
 | 
	
		
			
				|  |  | +								"attachUrl": fileResq.data.fileUrl,
 | 
	
		
			
				|  |  | +								"attachIcon": fileResq.data.fileIcon
 | 
	
		
			
				|  |  | +							}
 | 
	
		
			
				|  |  | +							self.form.attachList.push(file);
 | 
	
		
			
				|  |  | +						})
 | 
	
		
			
				|  |  | +					}
 | 
	
		
			
				|  |  | +				});	
 | 
	
		
			
				|  |  | +			},
 | 
	
		
			
				|  |  |  			show({type,item}){
 | 
	
		
			
				|  |  |  				this.resetForm()
 | 
	
		
			
				|  |  | -				this.form={...this.form,...item}
 | 
	
		
			
				|  |  |  				this.type=type
 | 
	
		
			
				|  |  |  				this.$refs.drawer.open()
 | 
	
		
			
				|  |  | +				if(type==='edit'){
 | 
	
		
			
				|  |  | +					dangerApi.getById(item.dangerId).then((res)=>{
 | 
	
		
			
				|  |  | +						this.form={...res.data}
 | 
	
		
			
				|  |  | +					})
 | 
	
		
			
				|  |  | +				}
 | 
	
		
			
				|  |  |  			},
 | 
	
		
			
				|  |  |  			close(){
 | 
	
		
			
				|  |  |  				this.$refs.drawer.close()
 | 
	
	
		
			
				|  | @@ -213,7 +284,7 @@
 | 
	
		
			
				|  |  |  		padding: 20rpx;
 | 
	
		
			
				|  |  |  		box-sizing: border-box;
 | 
	
		
			
				|  |  |  		.form-wrap{
 | 
	
		
			
				|  |  | -			padding:40rpx;
 | 
	
		
			
				|  |  | +			padding:40rpx 20rpx;
 | 
	
		
			
				|  |  |  			.handle-container{
 | 
	
		
			
				|  |  |  				display: flex;
 | 
	
		
			
				|  |  |  				justify-content: center;
 | 
	
	
		
			
				|  | @@ -234,6 +305,28 @@
 | 
	
		
			
				|  |  |  				color: #999;
 | 
	
		
			
				|  |  |  				font-size: 26rpx;
 | 
	
		
			
				|  |  |  			}
 | 
	
		
			
				|  |  | +			.attachbox{
 | 
	
		
			
				|  |  | +				display: flex;
 | 
	
		
			
				|  |  | +				flex-wrap: wrap;
 | 
	
		
			
				|  |  | +				.attach{
 | 
	
		
			
				|  |  | +					padding: 16rpx 18rpx;
 | 
	
		
			
				|  |  | +					image,.handle{
 | 
	
		
			
				|  |  | +						display: block;
 | 
	
		
			
				|  |  | +						width: 100rpx;
 | 
	
		
			
				|  |  | +						height: 100rpx;
 | 
	
		
			
				|  |  | +						box-shadow: rgba(0,0,0,0.6);	
 | 
	
		
			
				|  |  | +						border: 1rpx solid #ccc;	
 | 
	
		
			
				|  |  | +						border-radius: 10px;
 | 
	
		
			
				|  |  | +						overflow: hidden;	
 | 
	
		
			
				|  |  | +						box-sizing: border-box;
 | 
	
		
			
				|  |  | +					}
 | 
	
		
			
				|  |  | +					.handle{
 | 
	
		
			
				|  |  | +						display: flex;
 | 
	
		
			
				|  |  | +						justify-content: center;
 | 
	
		
			
				|  |  | +						align-items: center;
 | 
	
		
			
				|  |  | +					}
 | 
	
		
			
				|  |  | +				}
 | 
	
		
			
				|  |  | +			}
 | 
	
		
			
				|  |  |  		}
 | 
	
		
			
				|  |  |  	}
 | 
	
		
			
				|  |  |  </style>
 |