Compare commits
	
		
			No commits in common. "b63792e74c3a71812848e08236a1f9ecaccd8760" and "cdc9a135fb70a8ac9a71a52d37e4236bd5915a22" have entirely different histories.
		
	
	
		
			b63792e74c
			...
			cdc9a135fb
		
	
		
							
								
								
									
										11
									
								
								pages.json
									
									
									
									
									
								
							
							
						
						
									
										11
									
								
								pages.json
									
									
									
									
									
								
							@ -79,17 +79,6 @@
 | 
				
			|||||||
				"navigationBarTitleText": "视频播放"
 | 
									"navigationBarTitleText": "视频播放"
 | 
				
			||||||
			}
 | 
								}
 | 
				
			||||||
		},
 | 
							},
 | 
				
			||||||
		{
 | 
					 | 
				
			||||||
			"path": "pages/apply/jobList",
 | 
					 | 
				
			||||||
			"style": {
 | 
					 | 
				
			||||||
				"navigationBarTitleText": "岗位风险"
 | 
					 | 
				
			||||||
			}
 | 
					 | 
				
			||||||
		}, {
 | 
					 | 
				
			||||||
			"path": "pages/apply/jobRiskShow",
 | 
					 | 
				
			||||||
			"style": {
 | 
					 | 
				
			||||||
				"navigationBarTitleText": "岗位风险"
 | 
					 | 
				
			||||||
			}
 | 
					 | 
				
			||||||
		},
 | 
					 | 
				
			||||||
		{
 | 
							{
 | 
				
			||||||
			"path": "pages/apply/complete",
 | 
								"path": "pages/apply/complete",
 | 
				
			||||||
			"style": {
 | 
								"style": {
 | 
				
			||||||
 | 
				
			|||||||
@ -1,499 +0,0 @@
 | 
				
			|||||||
<template>
 | 
					 | 
				
			||||||
	<view class="todo-page">
 | 
					 | 
				
			||||||
		<view class="background"></view>
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
		<view class="card">
 | 
					 | 
				
			||||||
			<u--form labelWidth="auto" :model="model" ref="wForm" class="demo-ruleForm">
 | 
					 | 
				
			||||||
				<view style="position: relative;">
 | 
					 | 
				
			||||||
					<view style="position: absolute;left: -10px;color: #3d4b70;top: -3px;">*</view>
 | 
					 | 
				
			||||||
				</view>
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
				<view style="font-size: 15px; font-weight: bold;color: #3d4b70;margin-bottom: 10px;">筛选条件</view>
 | 
					 | 
				
			||||||
				<u-form-item label="辨识部门" prop="RISK_AREA_NAME" borderBottom ref="item1" @click="handleShowSheet({title: '辨识部门'})">
 | 
					 | 
				
			||||||
					<u--input fontSize="14px" disabled disabledColor="#ffffff" v-model="(model.Nav_Department||{}).NAME" border="none" suffixIcon="arrow-right" customStyle="margin:0px;display:flex;padding:3px 9px"
 | 
					 | 
				
			||||||
						suffixIconStyle="font-size:12px"></u--input>
 | 
					 | 
				
			||||||
				</u-form-item>
 | 
					 | 
				
			||||||
				<u-form-item label="辨识岗位" prop="RISK_AREA_NAME" borderBottom ref="item1" @click="handleShowSheet({title: '辨识岗位'})">
 | 
					 | 
				
			||||||
					<u--input fontSize="14px" disabled disabledColor="#ffffff" v-model="(model.Nav_Post||{}).NAME" border="none" suffixIcon="arrow-right" customStyle="margin:0px;display:flex;padding:3px 9px"
 | 
					 | 
				
			||||||
						suffixIconStyle="font-size:12px"></u--input>
 | 
					 | 
				
			||||||
				</u-form-item>
 | 
					 | 
				
			||||||
				<u-button type="primary" text="查询" @click="filterData"></u-button>
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
			</u--form>
 | 
					 | 
				
			||||||
			<u--form labelWidth="auto" :model="model" ref="wForm" class="demo-ruleForm" style="margin-top: 20px;">
 | 
					 | 
				
			||||||
				<view style="position: relative;">
 | 
					 | 
				
			||||||
					<view style="position: absolute;left: -10px;color: #3d4b70;top: -3px;">*</view>
 | 
					 | 
				
			||||||
				</view>
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
				<view style="font-size: 15px; font-weight: bold;color: #3d4b70;margin-bottom: 10px;">岗位风险清单</view>
 | 
					 | 
				
			||||||
				<u-checkbox-group :value="checkedItems" placement="column" @change="handleCheckboxChange">
 | 
					 | 
				
			||||||
					<u-checkbox :customStyle="{marginBottom: '8px'}" label="全选" name="all">
 | 
					 | 
				
			||||||
					</u-checkbox>
 | 
					 | 
				
			||||||
					<view v-for="(item, index) in filterDatas.Nav_Librarys" :key="index" style="margin-top: 10px;">
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
						<u-checkbox :customStyle="{marginBottom: '8px'}" :key="index" :label="index+1+'.生产单元:'+item.MINE_NAME" :name="item.ID">
 | 
					 | 
				
			||||||
						</u-checkbox>
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
						<u-form-item label="辨识区域" prop="Nav_Contents.CHECKCONTENT" borderBottom>
 | 
					 | 
				
			||||||
							<u--input fontSize="14px" disabled disabledColor="#fff" v-model="item.AREA_NAME" border="none" inputAlign="right"></u--input>
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
						</u-form-item>
 | 
					 | 
				
			||||||
						<u-form-item label="风险名称" prop="HIDDEN_PLACE" borderBottom>
 | 
					 | 
				
			||||||
							<u--input fontSize="14px" disabled disabledColor="#fff" v-model="item.RISK_NAME" border="none" inputAlign="right"></u--input>
 | 
					 | 
				
			||||||
						</u-form-item>
 | 
					 | 
				
			||||||
						<u-form-item label="风险描述" prop="HIDDEN_PLACE" borderBottom>
 | 
					 | 
				
			||||||
						</u-form-item>
 | 
					 | 
				
			||||||
						<u--textarea fontSize="14px" disabled disabledColor="#fff" v-model="item.RISK_DESCRIPTION" border="none" inputAlign="right" autoHeight></u--textarea>
 | 
					 | 
				
			||||||
						<u-form-item label="风险类别" prop="HIDDEN_PLACE" borderBottom>
 | 
					 | 
				
			||||||
							<u--input fontSize="14px" disabled disabledColor="#fff" v-model="item.TYPE_NAME" border="none" inputAlign="right"></u--input>
 | 
					 | 
				
			||||||
						</u-form-item>
 | 
					 | 
				
			||||||
						<u-form-item label="风险等级" prop="HIDDEN_PLACE" borderBottom>
 | 
					 | 
				
			||||||
							<u--input fontSize="14px" disabled disabledColor="#fff" v-model="item.EVALUATE_LEVELName" border="none" inputAlign="right"></u--input>
 | 
					 | 
				
			||||||
						</u-form-item>
 | 
					 | 
				
			||||||
					</view>
 | 
					 | 
				
			||||||
				</u-checkbox-group>
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
			</u--form>
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
		</view>
 | 
					 | 
				
			||||||
		<view style="padding: 10px 16px;" class="bottom-button">
 | 
					 | 
				
			||||||
			<u-button type="primary" @click="submit" color="#3d4b70">生产岗位告知卡</u-button>
 | 
					 | 
				
			||||||
		</view>
 | 
					 | 
				
			||||||
		<query-selector :show="selectorInfo.showPopup" :defaultChecked="selectorInfo.defaultChecked" :title="selectorInfo.title" :lists="selectorInfo.dataLists" @search="handleSearch" @select="handleSelected"
 | 
					 | 
				
			||||||
			@close="selectorInfo.showPopup=false" :total="selectorInfo.totalCount" />
 | 
					 | 
				
			||||||
	</view>
 | 
					 | 
				
			||||||
</template>
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
<script>
 | 
					 | 
				
			||||||
	import {
 | 
					 | 
				
			||||||
		GetPostRiskList,
 | 
					 | 
				
			||||||
		PagedRisk
 | 
					 | 
				
			||||||
	} from '../../services/apply'
 | 
					 | 
				
			||||||
	import {
 | 
					 | 
				
			||||||
		DepartOrderPaged,
 | 
					 | 
				
			||||||
		PostOrderPaged,
 | 
					 | 
				
			||||||
		getEnum
 | 
					 | 
				
			||||||
	} from '../../services/common.js'
 | 
					 | 
				
			||||||
	import config from '../../config/common'
 | 
					 | 
				
			||||||
	import {
 | 
					 | 
				
			||||||
		initFilter,
 | 
					 | 
				
			||||||
		extendRule,
 | 
					 | 
				
			||||||
		extendFilterGroupGroupRules
 | 
					 | 
				
			||||||
	} from '../../utils/common'
 | 
					 | 
				
			||||||
	export default {
 | 
					 | 
				
			||||||
		data() {
 | 
					 | 
				
			||||||
			return {
 | 
					 | 
				
			||||||
				OrgId: '',
 | 
					 | 
				
			||||||
				pageIndex: 0,
 | 
					 | 
				
			||||||
				pageSize: 20,
 | 
					 | 
				
			||||||
				total: 0,
 | 
					 | 
				
			||||||
				baseUrl: config.uni_app_web_source_url,
 | 
					 | 
				
			||||||
				allData: [],
 | 
					 | 
				
			||||||
				// 新增选中项数组,存储选中item的唯一标识
 | 
					 | 
				
			||||||
				checkedItems: [],
 | 
					 | 
				
			||||||
				// 存储完整的选中对象(可选)
 | 
					 | 
				
			||||||
				selectedItems: [],
 | 
					 | 
				
			||||||
				filterDatas: {
 | 
					 | 
				
			||||||
					Nav_Librarys: []
 | 
					 | 
				
			||||||
				},
 | 
					 | 
				
			||||||
				model: {
 | 
					 | 
				
			||||||
					RISK_AREA_NAME: '请选择区域',
 | 
					 | 
				
			||||||
					RISK_AREA_ID: '',
 | 
					 | 
				
			||||||
					ISDOWN: '否',
 | 
					 | 
				
			||||||
					SchedulingType: '',
 | 
					 | 
				
			||||||
					COUNT_WORKER: '',
 | 
					 | 
				
			||||||
					COUNT_LEVEL: '',
 | 
					 | 
				
			||||||
					START_TIME: '',
 | 
					 | 
				
			||||||
					END_TIME: '',
 | 
					 | 
				
			||||||
					SchedulingNEXTTIME: '',
 | 
					 | 
				
			||||||
					LISTPERSON_SCHEDULING: [{
 | 
					 | 
				
			||||||
						NAME: ''
 | 
					 | 
				
			||||||
					}],
 | 
					 | 
				
			||||||
					LISTUSER_LEAVE: [{
 | 
					 | 
				
			||||||
						NAME: ''
 | 
					 | 
				
			||||||
					}],
 | 
					 | 
				
			||||||
					ListShow: []
 | 
					 | 
				
			||||||
				},
 | 
					 | 
				
			||||||
				radiolist: [{
 | 
					 | 
				
			||||||
					value: false,
 | 
					 | 
				
			||||||
					name: '否'
 | 
					 | 
				
			||||||
				}, {
 | 
					 | 
				
			||||||
					value: true,
 | 
					 | 
				
			||||||
					name: '是'
 | 
					 | 
				
			||||||
				}],
 | 
					 | 
				
			||||||
				selectorInfo: {
 | 
					 | 
				
			||||||
					showPopup: false,
 | 
					 | 
				
			||||||
					totalCount: 0,
 | 
					 | 
				
			||||||
					title: '班组名称',
 | 
					 | 
				
			||||||
					// itemData: {},
 | 
					 | 
				
			||||||
					index: 0,
 | 
					 | 
				
			||||||
					dataLists: [],
 | 
					 | 
				
			||||||
					defaultText: '',
 | 
					 | 
				
			||||||
					defaultValue: '',
 | 
					 | 
				
			||||||
					name: '',
 | 
					 | 
				
			||||||
					defaultChecked: []
 | 
					 | 
				
			||||||
				},
 | 
					 | 
				
			||||||
				enumsData: {}, // 存储所有枚举数据(键:枚举名称,值:处理后的枚举列表)
 | 
					 | 
				
			||||||
				enumsText: {} // 存储枚举文本列表(用于下拉选择等场景)
 | 
					 | 
				
			||||||
			}
 | 
					 | 
				
			||||||
		},
 | 
					 | 
				
			||||||
		onLoad(option) {
 | 
					 | 
				
			||||||
			this.OrgId = option.OrgId // 'B043B28B-BBC3-C452-6052-4FBA1457ABFA'
 | 
					 | 
				
			||||||
			// const orgId = uni.getStorageSync('orgId')
 | 
					 | 
				
			||||||
			this.fetchEnums(['SKEvaluateLevelEnum']);
 | 
					 | 
				
			||||||
		},
 | 
					 | 
				
			||||||
		// onReady() {
 | 
					 | 
				
			||||||
		// 	//如果需要兼容微信小程序,并且校验规则中含有方法等,只能通过setRules方法设置规则。
 | 
					 | 
				
			||||||
		// 	this.$refs.uForm.setRules(this.rules)
 | 
					 | 
				
			||||||
		// },
 | 
					 | 
				
			||||||
		methods: {
 | 
					 | 
				
			||||||
			async fetchEnums(enumNames) {
 | 
					 | 
				
			||||||
				try {
 | 
					 | 
				
			||||||
					// 存储所有枚举请求的Promise
 | 
					 | 
				
			||||||
					const enumPromises = enumNames.map(name => {
 | 
					 | 
				
			||||||
						return getEnum({
 | 
					 | 
				
			||||||
							name
 | 
					 | 
				
			||||||
						}).then(res => {
 | 
					 | 
				
			||||||
							// 统一处理枚举格式:添加name/code字段,便于后续映射
 | 
					 | 
				
			||||||
							return {
 | 
					 | 
				
			||||||
								enumName: name,
 | 
					 | 
				
			||||||
								data: res.Data.map(item => ({
 | 
					 | 
				
			||||||
									...item,
 | 
					 | 
				
			||||||
									name: item.NAME, // 统一显示名称字段
 | 
					 | 
				
			||||||
									code: item.ID // 统一值字段
 | 
					 | 
				
			||||||
								}))
 | 
					 | 
				
			||||||
							};
 | 
					 | 
				
			||||||
						});
 | 
					 | 
				
			||||||
					});
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
					// 等待所有枚举请求完成
 | 
					 | 
				
			||||||
					const results = await Promise.all(enumPromises);
 | 
					 | 
				
			||||||
					// 存储枚举结果到data中(键为枚举名称,值为处理后的数据)
 | 
					 | 
				
			||||||
					results.forEach(({
 | 
					 | 
				
			||||||
						enumName,
 | 
					 | 
				
			||||||
						data
 | 
					 | 
				
			||||||
					}) => {
 | 
					 | 
				
			||||||
						this.enumsData[enumName] = data;
 | 
					 | 
				
			||||||
						// 生成文本列表(如需要)
 | 
					 | 
				
			||||||
						this.enumsText[enumName] = data.map(item => item.name);
 | 
					 | 
				
			||||||
					});
 | 
					 | 
				
			||||||
					// 所有枚举获取完成后,执行loadData
 | 
					 | 
				
			||||||
					this.loadData();
 | 
					 | 
				
			||||||
				} catch (error) {
 | 
					 | 
				
			||||||
					console.error('枚举请求失败:', error);
 | 
					 | 
				
			||||||
					uni.showToast({
 | 
					 | 
				
			||||||
						title: '枚举数据加载失败',
 | 
					 | 
				
			||||||
						icon: 'none'
 | 
					 | 
				
			||||||
					});
 | 
					 | 
				
			||||||
				}
 | 
					 | 
				
			||||||
			},
 | 
					 | 
				
			||||||
			loadData() {
 | 
					 | 
				
			||||||
				const json = initFilter(this.OrgId, "", "")
 | 
					 | 
				
			||||||
				json.IgnoreDataRule = true
 | 
					 | 
				
			||||||
				GetPostRiskList(json).then(res => {
 | 
					 | 
				
			||||||
					this.allData = res.Data
 | 
					 | 
				
			||||||
					this.allData.map(item => {
 | 
					 | 
				
			||||||
						if (item.Nav_Librarys && item.Nav_Librarys.length > 0) {
 | 
					 | 
				
			||||||
							item.Nav_Librarys.map(item1 => {
 | 
					 | 
				
			||||||
								item1.EVALUATE_LEVELName = item1.EVALUATE_LEVEL !== undefined ? this.enumsData['SKEvaluateLevelEnum'].find(item => item.code === item1.EVALUATE_LEVEL).name : '';
 | 
					 | 
				
			||||||
							})
 | 
					 | 
				
			||||||
						}
 | 
					 | 
				
			||||||
					})
 | 
					 | 
				
			||||||
					// this.total = res.TotalCount
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
				})
 | 
					 | 
				
			||||||
			},
 | 
					 | 
				
			||||||
			handleCheckboxChange(e) {
 | 
					 | 
				
			||||||
				// 检查当前操作是否包含全选标识
 | 
					 | 
				
			||||||
				const hasAll = e.includes('all');
 | 
					 | 
				
			||||||
				// 获取所有可选项的ID列表
 | 
					 | 
				
			||||||
				const allIds = this.filterDatas.Nav_Librarys.map(item => item.ID);
 | 
					 | 
				
			||||||
				// 判断当前是否处于全选状态
 | 
					 | 
				
			||||||
				const isAllSelected = this.checkedItems.includes('all');
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
				if (this.checkedItems.length > e.length) {
 | 
					 | 
				
			||||||
					//取消选项
 | 
					 | 
				
			||||||
					if (hasAll) {
 | 
					 | 
				
			||||||
						//当前有全选
 | 
					 | 
				
			||||||
						if (isAllSelected) {
 | 
					 | 
				
			||||||
							//上一次有全选
 | 
					 | 
				
			||||||
							let arr = []
 | 
					 | 
				
			||||||
							const diff = this.checkedItems.filter(item => !e.includes(item));
 | 
					 | 
				
			||||||
							arr.push('all')
 | 
					 | 
				
			||||||
							arr.push(...diff)
 | 
					 | 
				
			||||||
							let arrs = []
 | 
					 | 
				
			||||||
							arrs = this.checkedItems.filter(item => !arr.includes(item));
 | 
					 | 
				
			||||||
							this.checkedItems = arrs
 | 
					 | 
				
			||||||
						} else {
 | 
					 | 
				
			||||||
							//lenth不对
 | 
					 | 
				
			||||||
						}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
					} else {
 | 
					 | 
				
			||||||
						//当前没有全选
 | 
					 | 
				
			||||||
						if (isAllSelected) {
 | 
					 | 
				
			||||||
							//取消全选
 | 
					 | 
				
			||||||
							// const remainingIds = allIds.filter(id => e.includes(id));
 | 
					 | 
				
			||||||
							this.checkedItems = [];
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
						} else {
 | 
					 | 
				
			||||||
							const diff = this.checkedItems.filter(item => !e.includes(item));
 | 
					 | 
				
			||||||
							const newArr = this.checkedItems.filter(item => item !== diff[0]);
 | 
					 | 
				
			||||||
							this.checkedItems = newArr
 | 
					 | 
				
			||||||
						}
 | 
					 | 
				
			||||||
					}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
				} else {
 | 
					 | 
				
			||||||
					//新增选项
 | 
					 | 
				
			||||||
					if (hasAll) {
 | 
					 | 
				
			||||||
						//当前有全选
 | 
					 | 
				
			||||||
						if (isAllSelected) {
 | 
					 | 
				
			||||||
							//上一次有全选 /选中其他选项 lenth不成立
 | 
					 | 
				
			||||||
						} else {
 | 
					 | 
				
			||||||
							//上一次没有全选
 | 
					 | 
				
			||||||
							// 点击全选:选中所有选项(包含全选自身)
 | 
					 | 
				
			||||||
							this.checkedItems = ['all', ...allIds];
 | 
					 | 
				
			||||||
						}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
					} else {
 | 
					 | 
				
			||||||
						//当前没有全选
 | 
					 | 
				
			||||||
						if (isAllSelected) {
 | 
					 | 
				
			||||||
							//上一次有全选 lenth不成立
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
						} else {
 | 
					 | 
				
			||||||
							const diff = e.filter(item => !this.checkedItems.includes(item));
 | 
					 | 
				
			||||||
							this.checkedItems.unshift(...diff);
 | 
					 | 
				
			||||||
							if (e.length === allIds.length && allIds.length > 0) {
 | 
					 | 
				
			||||||
								this.checkedItems.unshift('all');
 | 
					 | 
				
			||||||
							}
 | 
					 | 
				
			||||||
							// const diff = this.checkedItems.filter(item => !e.includes(item));
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
							// // 取消其他选项
 | 
					 | 
				
			||||||
							// this.checkedItems = e.filter(item => item !== 'all');
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
							// // 检查是否所有选项都被选中,如果是则自动勾选全选
 | 
					 | 
				
			||||||
							// if (this.checkedItems.length === allIds.length && allIds.length > 0) {
 | 
					 | 
				
			||||||
							// 	this.checkedItems.unshift('all');
 | 
					 | 
				
			||||||
							// }
 | 
					 | 
				
			||||||
						}
 | 
					 | 
				
			||||||
					}
 | 
					 | 
				
			||||||
				}
 | 
					 | 
				
			||||||
			},
 | 
					 | 
				
			||||||
			filterData() {
 | 
					 | 
				
			||||||
				this.allData.map(item => {
 | 
					 | 
				
			||||||
					if (item.DEPARTMENT_ID == this.model.DEPARTMENT_ID && item.POST_NAME == this.model.Nav_Post.NAME) {
 | 
					 | 
				
			||||||
						this.filterDatas = item
 | 
					 | 
				
			||||||
						console.log(this.filterDatas, 'this.filterData')
 | 
					 | 
				
			||||||
					}
 | 
					 | 
				
			||||||
				})
 | 
					 | 
				
			||||||
			},
 | 
					 | 
				
			||||||
			checkChange(e) {
 | 
					 | 
				
			||||||
				console.log(e, '888')
 | 
					 | 
				
			||||||
			},
 | 
					 | 
				
			||||||
			submit() {
 | 
					 | 
				
			||||||
				console.log(this.checkedItems, '9999')
 | 
					 | 
				
			||||||
				console.log(this.filterDatas, '9999')
 | 
					 | 
				
			||||||
				let arr = []
 | 
					 | 
				
			||||||
				this.filterDatas.Nav_Librarys.map(item => {
 | 
					 | 
				
			||||||
					this.checkedItems.map(item1 => {
 | 
					 | 
				
			||||||
						if (item.ID == item1) {
 | 
					 | 
				
			||||||
							arr.push(item)
 | 
					 | 
				
			||||||
						}
 | 
					 | 
				
			||||||
					})
 | 
					 | 
				
			||||||
				})
 | 
					 | 
				
			||||||
				console.log(arr, 'arr')
 | 
					 | 
				
			||||||
				//MEASURES_NAME处理
 | 
					 | 
				
			||||||
				const groupedData = arr.reduce((acc, item) => {
 | 
					 | 
				
			||||||
					const riskName = item.RISK_NAME;
 | 
					 | 
				
			||||||
					// 提取当前项的所有措施,并去重(避免同一项内的重复措施)
 | 
					 | 
				
			||||||
					const currentMeasures = [...new Set(
 | 
					 | 
				
			||||||
						item.Nav_Details.map(detail => detail.MEASURES_NAME)
 | 
					 | 
				
			||||||
					)];
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
					if (!acc[riskName]) {
 | 
					 | 
				
			||||||
						// 若该风险名称首次出现,初始化数组
 | 
					 | 
				
			||||||
						acc[riskName] = currentMeasures;
 | 
					 | 
				
			||||||
					} else {
 | 
					 | 
				
			||||||
						// 若已存在,合并并去重(避免不同项的重复措施)
 | 
					 | 
				
			||||||
						acc[riskName] = [...new Set([...acc[riskName], ...currentMeasures])];
 | 
					 | 
				
			||||||
					}
 | 
					 | 
				
			||||||
					return acc;
 | 
					 | 
				
			||||||
				}, {});
 | 
					 | 
				
			||||||
				//
 | 
					 | 
				
			||||||
				// 1. 按 RISK_NAME 分组,收集所有对应的 RISK_DESCRIPTION
 | 
					 | 
				
			||||||
				
 | 
					 | 
				
			||||||
				
 | 
					 | 
				
			||||||
				let newarr = {
 | 
					 | 
				
			||||||
					departName: this.filterDatas.Nav_Department ? this.filterDatas.Nav_Department.NAME : '',
 | 
					 | 
				
			||||||
					userName: this.filterDatas.USER_NAME,
 | 
					 | 
				
			||||||
					phone: this.filterDatas.PHONE,
 | 
					 | 
				
			||||||
					postName: this.filterDatas.POST_NAME,
 | 
					 | 
				
			||||||
					RISK_NAME: [...new Set(
 | 
					 | 
				
			||||||
						arr.map(item => item.RISK_NAME.trim())
 | 
					 | 
				
			||||||
					)].join(' ;'),
 | 
					 | 
				
			||||||
					EVALUATE_LEVELName: [...new Set(
 | 
					 | 
				
			||||||
						arr.map(item => item.EVALUATE_LEVELName.trim())
 | 
					 | 
				
			||||||
					)].join(' ;'),
 | 
					 | 
				
			||||||
					RISK_TYPE: [...new Set(
 | 
					 | 
				
			||||||
						arr.map(item => item.Nav_Type.NAME.trim())
 | 
					 | 
				
			||||||
					)].join(' ;'),
 | 
					 | 
				
			||||||
					RISK_DESCRIPTION: [...new Set(
 | 
					 | 
				
			||||||
						arr.map(item => item.RISK_DESCRIPTION.trim())
 | 
					 | 
				
			||||||
					)].join(' ;'),
 | 
					 | 
				
			||||||
					MEASURES_NAME: Object.entries(groupedData)
 | 
					 | 
				
			||||||
						.map(([riskName, measures], index) => {
 | 
					 | 
				
			||||||
							// 生成带序号的措施(1.xxx 2.yyy)
 | 
					 | 
				
			||||||
							const measuresList = measures
 | 
					 | 
				
			||||||
								.map((measure, mIndex) => `${mIndex + 1}.${measure}`)
 | 
					 | 
				
			||||||
								.join('\n  ');
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
							// 不同风险组之间用换行分隔(首组不加前缀换行)
 | 
					 | 
				
			||||||
							return index === 0 ?
 | 
					 | 
				
			||||||
								`${riskName}:\n  ${measuresList}` :
 | 
					 | 
				
			||||||
								`\n${riskName}:\n  ${measuresList}`;
 | 
					 | 
				
			||||||
						})
 | 
					 | 
				
			||||||
						.join(''),
 | 
					 | 
				
			||||||
					RISK_DESCRIPTION: this.handleData(arr,'RISK_DESCRIPTION'),
 | 
					 | 
				
			||||||
					EMERGENCY: this.handleData(arr,'EMERGENCY')
 | 
					 | 
				
			||||||
				}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
				console.log(newarr, 'nnnnnnnnnnnnn')
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
				uni.setStorageSync('detailData', newarr);
 | 
					 | 
				
			||||||
				uni.navigateTo({
 | 
					 | 
				
			||||||
					url: '/pages/apply/jobRiskShow'
 | 
					 | 
				
			||||||
				})
 | 
					 | 
				
			||||||
			},
 | 
					 | 
				
			||||||
			handleData(arr,namekey){
 | 
					 | 
				
			||||||
				const oneData = {};
 | 
					 | 
				
			||||||
				arr.forEach(item => {
 | 
					 | 
				
			||||||
				  const name = item.RISK_NAME;
 | 
					 | 
				
			||||||
				  const desc = item[namekey];
 | 
					 | 
				
			||||||
				  // 若该名称已存在,追加描述;否则新建键值对
 | 
					 | 
				
			||||||
				  if (oneData[name]) {
 | 
					 | 
				
			||||||
				    oneData[name].add(desc);
 | 
					 | 
				
			||||||
				  } else {
 | 
					 | 
				
			||||||
				    oneData[name] = new Set([desc]);
 | 
					 | 
				
			||||||
				  }
 | 
					 | 
				
			||||||
				});
 | 
					 | 
				
			||||||
				const resultArr = [];
 | 
					 | 
				
			||||||
				for (const [name, descList] of Object.entries(oneData)) {
 | 
					 | 
				
			||||||
				  // Set 转数组,再拼接为 “名称:描述1;描述2” 格式
 | 
					 | 
				
			||||||
				   const descStr = Array.from(descList).join(';');
 | 
					 | 
				
			||||||
				   resultArr.push(`${name}:${descStr}`);
 | 
					 | 
				
			||||||
				}
 | 
					 | 
				
			||||||
				
 | 
					 | 
				
			||||||
				// 3. 所有名称的拼接结果用 “\n” 连接,得到最终字符串
 | 
					 | 
				
			||||||
				const finalResult = resultArr.join('\n');
 | 
					 | 
				
			||||||
				return finalResult
 | 
					 | 
				
			||||||
			},
 | 
					 | 
				
			||||||
			closePicker() {
 | 
					 | 
				
			||||||
				this.comPickerInfo = {
 | 
					 | 
				
			||||||
					showSheet: false,
 | 
					 | 
				
			||||||
					columns: [],
 | 
					 | 
				
			||||||
					title: '',
 | 
					 | 
				
			||||||
					name: '',
 | 
					 | 
				
			||||||
					formIndex: undefined
 | 
					 | 
				
			||||||
				}
 | 
					 | 
				
			||||||
			},
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
			//显示组件
 | 
					 | 
				
			||||||
			handleChange() {
 | 
					 | 
				
			||||||
				this.selectorInfo.showPopup = true
 | 
					 | 
				
			||||||
				this.selectorInfo.title = '班组名称'
 | 
					 | 
				
			||||||
				this.handleSearch()
 | 
					 | 
				
			||||||
			},
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
			//数据加载
 | 
					 | 
				
			||||||
			handleSearch(val, pageIndex) {
 | 
					 | 
				
			||||||
				var p = {
 | 
					 | 
				
			||||||
					name: this.selectorInfo.name,
 | 
					 | 
				
			||||||
					title: this.selectorInfo.title,
 | 
					 | 
				
			||||||
					val: val,
 | 
					 | 
				
			||||||
					pageIndex: pageIndex
 | 
					 | 
				
			||||||
				}
 | 
					 | 
				
			||||||
				this.handleShowSheet(p)
 | 
					 | 
				
			||||||
			},
 | 
					 | 
				
			||||||
			async handleShowSheet(p) {
 | 
					 | 
				
			||||||
				uni.showLoading({
 | 
					 | 
				
			||||||
					title: '加载中...'
 | 
					 | 
				
			||||||
				})
 | 
					 | 
				
			||||||
				this.pageIndex = 0
 | 
					 | 
				
			||||||
				var defaultChecked = []
 | 
					 | 
				
			||||||
				let dataSelect = []
 | 
					 | 
				
			||||||
				const json = initFilter(this.OrgId, null, "NAME", 0, (p.pageIndex ?? 1));
 | 
					 | 
				
			||||||
				json.IgnoreDataRule = true
 | 
					 | 
				
			||||||
				json.Limit = 20
 | 
					 | 
				
			||||||
				if (p.val) {
 | 
					 | 
				
			||||||
					// extendFilterGroupGroupRules(json, 'NAME', 9, p.val)
 | 
					 | 
				
			||||||
					extendRule(json, "NAME", 9, p.val)
 | 
					 | 
				
			||||||
				}
 | 
					 | 
				
			||||||
				if (p.title == '辨识部门') {
 | 
					 | 
				
			||||||
					dataSelect = await DepartOrderPaged(json).then(res => {
 | 
					 | 
				
			||||||
						uni.hideLoading()
 | 
					 | 
				
			||||||
						this.selectorInfo.totalCount = res.TotalCount
 | 
					 | 
				
			||||||
						if (res != undefined && res.Data.length > 0) {
 | 
					 | 
				
			||||||
							for (let i = 0; i < res.Data.length; i++) {
 | 
					 | 
				
			||||||
								res.Data[i].name = res.Data[i].NAME
 | 
					 | 
				
			||||||
								res.Data[i].code = res.Data[i].CODE
 | 
					 | 
				
			||||||
							}
 | 
					 | 
				
			||||||
						}
 | 
					 | 
				
			||||||
						return res.Data
 | 
					 | 
				
			||||||
					})
 | 
					 | 
				
			||||||
				} else {
 | 
					 | 
				
			||||||
					if (this.model.DEPARTMENT_ID && this.model.DEPARTMENT_ID !== null) {
 | 
					 | 
				
			||||||
						// extendRule(json, "DEPARTMENT_ID", 1, this.model.DEPARTMENT_ID)
 | 
					 | 
				
			||||||
						json.Keyword = this.model.DEPARTMENT_ID
 | 
					 | 
				
			||||||
					}
 | 
					 | 
				
			||||||
					dataSelect = await PostOrderPaged(json).then(res => {
 | 
					 | 
				
			||||||
						uni.hideLoading()
 | 
					 | 
				
			||||||
						this.selectorInfo.totalCount = res.TotalCount
 | 
					 | 
				
			||||||
						if (res != undefined && res.Data.length > 0) {
 | 
					 | 
				
			||||||
							for (let i = 0; i < res.Data.length; i++) {
 | 
					 | 
				
			||||||
								res.Data[i].name = res.Data[i].NAME
 | 
					 | 
				
			||||||
								res.Data[i].code = res.Data[i].CODE
 | 
					 | 
				
			||||||
							}
 | 
					 | 
				
			||||||
						}
 | 
					 | 
				
			||||||
						return res.Data
 | 
					 | 
				
			||||||
					})
 | 
					 | 
				
			||||||
				}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
				if (defaultChecked == null)
 | 
					 | 
				
			||||||
					defaultChecked = []
 | 
					 | 
				
			||||||
				if (dataSelect.length) {
 | 
					 | 
				
			||||||
					this.selectorInfo = {
 | 
					 | 
				
			||||||
						totalCount: this.selectorInfo.totalCount,
 | 
					 | 
				
			||||||
						showPopup: true,
 | 
					 | 
				
			||||||
						title: p.title,
 | 
					 | 
				
			||||||
						name: p.name,
 | 
					 | 
				
			||||||
						dataLists: dataSelect,
 | 
					 | 
				
			||||||
						defaultChecked: defaultChecked
 | 
					 | 
				
			||||||
					}
 | 
					 | 
				
			||||||
				} else {
 | 
					 | 
				
			||||||
					// 暂无数据
 | 
					 | 
				
			||||||
				}
 | 
					 | 
				
			||||||
			},
 | 
					 | 
				
			||||||
			handleSelected(e) {
 | 
					 | 
				
			||||||
				this.selectorInfo.showPopup = false
 | 
					 | 
				
			||||||
				if (this.selectorInfo.title == '辨识部门') {
 | 
					 | 
				
			||||||
					this.model.Nav_Department = e
 | 
					 | 
				
			||||||
					this.model.DEPARTMENT_ID = e.ID
 | 
					 | 
				
			||||||
				} else {
 | 
					 | 
				
			||||||
					this.model.Nav_Post = e
 | 
					 | 
				
			||||||
					this.model.POST_ID = e.ID
 | 
					 | 
				
			||||||
				}
 | 
					 | 
				
			||||||
				// this.WorkerScheduling()
 | 
					 | 
				
			||||||
			}
 | 
					 | 
				
			||||||
		},
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
</script>
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
<style>
 | 
					 | 
				
			||||||
	@import url("../../style/css/newTemplate.css");
 | 
					 | 
				
			||||||
</style>
 | 
					 | 
				
			||||||
@ -1,89 +0,0 @@
 | 
				
			|||||||
<template>
 | 
					 | 
				
			||||||
	<view class="todo-page">
 | 
					 | 
				
			||||||
		<view class="background"></view>
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
		<view class="card">
 | 
					 | 
				
			||||||
			<u--form labelWidth="auto" :model="detailData" ref="wForm" class="demo-ruleForm">
 | 
					 | 
				
			||||||
				<view style="position: relative;">
 | 
					 | 
				
			||||||
					<view style="position: absolute;left: -10px;color: #3d4b70;top: -3px;">*</view>
 | 
					 | 
				
			||||||
				</view>
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
				<view style="font-size: 15px; font-weight: bold;color: #3d4b70;margin-bottom: 10px;">{{detailData.postName}}岗位安全风险告知卡</view>
 | 
					 | 
				
			||||||
				<u-form-item label="风险名称" prop="HIDDEN_PLACE" borderBottom>
 | 
					 | 
				
			||||||
				</u-form-item>
 | 
					 | 
				
			||||||
				<u--textarea fontSize="14px" disabled disabledColor="#fff" v-model="detailData.RISK_NAME" border="none" inputAlign="right" autoHeight></u--textarea>
 | 
					 | 
				
			||||||
				<u-form-item label="风险等级" prop="HIDDEN_PLACE" borderBottom>
 | 
					 | 
				
			||||||
				</u-form-item>
 | 
					 | 
				
			||||||
				<u--textarea fontSize="14px" disabled disabledColor="#fff" v-model="detailData.EVALUATE_LEVELName" border="none" inputAlign="right" autoHeight></u--textarea>
 | 
					 | 
				
			||||||
				<u-form-item label="事故后果" prop="HIDDEN_PLACE" borderBottom>
 | 
					 | 
				
			||||||
				</u-form-item>
 | 
					 | 
				
			||||||
				<u--textarea fontSize="14px" disabled disabledColor="#fff" v-model="detailData.RISK_TYPE" border="none" inputAlign="right" autoHeight></u--textarea>
 | 
					 | 
				
			||||||
				<u-form-item label="风险描述" prop="HIDDEN_PLACE" borderBottom>
 | 
					 | 
				
			||||||
				</u-form-item>
 | 
					 | 
				
			||||||
				<u--textarea fontSize="14px" disabled disabledColor="#fff" v-model="detailData.RISK_DESCRIPTION" border="none" inputAlign="right" autoHeight></u--textarea>
 | 
					 | 
				
			||||||
				<u-form-item label="安全标志" prop="HIDDEN_PLACE" borderBottom>
 | 
					 | 
				
			||||||
				</u-form-item>
 | 
					 | 
				
			||||||
				<!-- <u--textarea fontSize="14px" disabled disabledColor="#fff" v-model="detailData.RISK_DESCRIPTION" border="none" inputAlign="right" autoHeight></u--textarea> -->
 | 
					 | 
				
			||||||
				<u-form-item label="管控措施" prop="HIDDEN_PLACE" borderBottom>
 | 
					 | 
				
			||||||
				</u-form-item>
 | 
					 | 
				
			||||||
				<u--textarea fontSize="14px" disabled disabledColor="#fff" v-model="detailData.MEASURES_NAME" border="none" inputAlign="right" autoHeight></u--textarea>
 | 
					 | 
				
			||||||
				<u-form-item label="应急处置" prop="HIDDEN_PLACE" borderBottom>
 | 
					 | 
				
			||||||
				</u-form-item>
 | 
					 | 
				
			||||||
				<u--textarea fontSize="14px" disabled disabledColor="#fff" v-model="detailData.EMERGENCY" border="none" inputAlign="right" autoHeight></u--textarea>
 | 
					 | 
				
			||||||
				<u-form-item label="责任单位" prop="HIDDEN_PLACE" borderBottom>
 | 
					 | 
				
			||||||
				</u-form-item>
 | 
					 | 
				
			||||||
				<u--textarea fontSize="14px" disabled disabledColor="#fff" v-model="detailData.departName" border="none" inputAlign="right" autoHeight></u--textarea>
 | 
					 | 
				
			||||||
				<u-form-item label="责任人" prop="HIDDEN_PLACE" borderBottom>
 | 
					 | 
				
			||||||
				</u-form-item>
 | 
					 | 
				
			||||||
				<u--textarea fontSize="14px" disabled disabledColor="#fff" v-model="detailData.userName" border="none" inputAlign="right" autoHeight></u--textarea>
 | 
					 | 
				
			||||||
				<u-form-item label="联系方式" prop="HIDDEN_PLACE" borderBottom>
 | 
					 | 
				
			||||||
				</u-form-item>
 | 
					 | 
				
			||||||
				<u--textarea fontSize="14px" disabled disabledColor="#fff" v-model="detailData.phone" border="none" inputAlign="right" autoHeight></u--textarea>
 | 
					 | 
				
			||||||
			</u--form>
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
		</view>
 | 
					 | 
				
			||||||
	</view>
 | 
					 | 
				
			||||||
</template>
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
<script>
 | 
					 | 
				
			||||||
	import {
 | 
					 | 
				
			||||||
		GetPostRiskList,
 | 
					 | 
				
			||||||
		PagedRisk
 | 
					 | 
				
			||||||
	} from '../../services/apply'
 | 
					 | 
				
			||||||
	import {
 | 
					 | 
				
			||||||
		DepartOrderPaged,
 | 
					 | 
				
			||||||
		PostOrderPaged,
 | 
					 | 
				
			||||||
		getEnum
 | 
					 | 
				
			||||||
	} from '../../services/common.js'
 | 
					 | 
				
			||||||
	import config from '../../config/common'
 | 
					 | 
				
			||||||
	import {
 | 
					 | 
				
			||||||
		initFilter,
 | 
					 | 
				
			||||||
		extendRule
 | 
					 | 
				
			||||||
	} from '../../utils/common'
 | 
					 | 
				
			||||||
	export default {
 | 
					 | 
				
			||||||
		data() {
 | 
					 | 
				
			||||||
			return {
 | 
					 | 
				
			||||||
				detailData: {},
 | 
					 | 
				
			||||||
				model: {}
 | 
					 | 
				
			||||||
			}
 | 
					 | 
				
			||||||
		},
 | 
					 | 
				
			||||||
		onLoad(option) {
 | 
					 | 
				
			||||||
			this.detailData = uni.getStorageSync('detailData');
 | 
					 | 
				
			||||||
			console.log(this.detailData, 'this.detailData')
 | 
					 | 
				
			||||||
		},
 | 
					 | 
				
			||||||
		onUnload() {
 | 
					 | 
				
			||||||
			// 可选:用完删除,避免占用存储
 | 
					 | 
				
			||||||
			uni.removeStorageSync('detailData');
 | 
					 | 
				
			||||||
		},
 | 
					 | 
				
			||||||
		// onReady() {
 | 
					 | 
				
			||||||
		// 	//如果需要兼容微信小程序,并且校验规则中含有方法等,只能通过setRules方法设置规则。
 | 
					 | 
				
			||||||
		// 	this.$refs.uForm.setRules(this.rules)
 | 
					 | 
				
			||||||
		// },
 | 
					 | 
				
			||||||
		methods: {},
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
</script>
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
<style>
 | 
					 | 
				
			||||||
	@import url("../../style/css/newTemplate.css");
 | 
					 | 
				
			||||||
</style>
 | 
					 | 
				
			||||||
@ -88,13 +88,3 @@ export const PagedDangerJob = (params) => {
 | 
				
			|||||||
		data: params,
 | 
							data: params,
 | 
				
			||||||
	})
 | 
						})
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					 | 
				
			||||||
//危险作业查看
 | 
					 | 
				
			||||||
export const GetPostRiskList = (params) => {
 | 
					 | 
				
			||||||
	params.isAll=true
 | 
					 | 
				
			||||||
	return request.send({
 | 
					 | 
				
			||||||
		url: '/BI/H5Controller/GetPostRiskList',
 | 
					 | 
				
			||||||
		method: 'post',
 | 
					 | 
				
			||||||
		data: params,
 | 
					 | 
				
			||||||
	})
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
@ -36,31 +36,3 @@ export const AreaEntities = (params) => {
 | 
				
			|||||||
		data: params,
 | 
							data: params,
 | 
				
			||||||
	})
 | 
						})
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
//辨识部门
 | 
					 | 
				
			||||||
export const DepartOrderPaged = (params) => {
 | 
					 | 
				
			||||||
	params.isAll=true
 | 
					 | 
				
			||||||
	return request.send({
 | 
					 | 
				
			||||||
		url: '/BI/H5Controller/DepartOrderPaged',
 | 
					 | 
				
			||||||
		method: 'post',
 | 
					 | 
				
			||||||
		data: params,
 | 
					 | 
				
			||||||
	})
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
//辨识岗位
 | 
					 | 
				
			||||||
export const PostOrderPaged = (params) => {
 | 
					 | 
				
			||||||
	params.isAll=true
 | 
					 | 
				
			||||||
	return request.send({
 | 
					 | 
				
			||||||
		url: '/BI/H5Controller/PostOrderPaged',
 | 
					 | 
				
			||||||
		method: 'post',
 | 
					 | 
				
			||||||
		data: params,
 | 
					 | 
				
			||||||
	})
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
//辨识岗位
 | 
					 | 
				
			||||||
export const getEnum = (params) => {
 | 
					 | 
				
			||||||
	// params.isAll=true
 | 
					 | 
				
			||||||
	return request.send({
 | 
					 | 
				
			||||||
		url: '/PF/Extend/GetEnum',
 | 
					 | 
				
			||||||
		method: 'get',
 | 
					 | 
				
			||||||
		data: params,
 | 
					 | 
				
			||||||
	})
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
@ -1,152 +0,0 @@
 | 
				
			|||||||
/* .todo-page>>>.u-steps-item__line {
 | 
					 | 
				
			||||||
		width: 187.6px !important;
 | 
					 | 
				
			||||||
	} */
 | 
					 | 
				
			||||||
/* 进度条步骤少于3 */
 | 
					 | 
				
			||||||
.page-wrap {
 | 
					 | 
				
			||||||
	padding-bottom: 150px;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
.allview {
 | 
					 | 
				
			||||||
	padding: 0px 0px 180px 0px;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
.video {
 | 
					 | 
				
			||||||
	padding: 16px 16px 10px;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
.background {
 | 
					 | 
				
			||||||
	position: fixed;
 | 
					 | 
				
			||||||
	top: 0;
 | 
					 | 
				
			||||||
	left: 0;
 | 
					 | 
				
			||||||
	right: 0;
 | 
					 | 
				
			||||||
	bottom: 0;
 | 
					 | 
				
			||||||
	background: #edf1fd;
 | 
					 | 
				
			||||||
	z-index: -1;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
.richtext {
 | 
					 | 
				
			||||||
	font-size: 14px;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
.card {
 | 
					 | 
				
			||||||
	margin: 20px 16px 140px 16px;
 | 
					 | 
				
			||||||
	/* border: 1px solid #EBEEF5; */
 | 
					 | 
				
			||||||
	padding: 20px 30px 80px 30px;
 | 
					 | 
				
			||||||
	/* box-shadow: rgba(0, 0, 0, 0.08) 0px 0px 3px 1px; */
 | 
					 | 
				
			||||||
	background-color: #ffffff;
 | 
					 | 
				
			||||||
	border-radius: 10px;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
.upload-title {
 | 
					 | 
				
			||||||
	font-size: 14px;
 | 
					 | 
				
			||||||
	color: #8e8b9c;
 | 
					 | 
				
			||||||
	line-height: 22px;
 | 
					 | 
				
			||||||
	padding: 8px 0px;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
.demo-ruleForm>>>.u-form-item__body__left__content__label {
 | 
					 | 
				
			||||||
	font-size: 14px;
 | 
					 | 
				
			||||||
	color: #8e8b9c;
 | 
					 | 
				
			||||||
	/* justify-content: flex-start; */
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
.demo-ruleForm>>>.u-form-item__body__left__content__ {
 | 
					 | 
				
			||||||
	left: -11px;
 | 
					 | 
				
			||||||
	top: 0px
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
.demo-ruleForm>>>.u-textarea__field {
 | 
					 | 
				
			||||||
	font-size: 14px;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
.demo-ruleForm>>>.u-cell__title-text {
 | 
					 | 
				
			||||||
	font-size: 14px;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
.check-p>>>.u-form-item__body__right__content__slot {
 | 
					 | 
				
			||||||
	justify-content: flex-end;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
.bottom-button {
 | 
					 | 
				
			||||||
	position: fixed;
 | 
					 | 
				
			||||||
	bottom: 0;
 | 
					 | 
				
			||||||
	left: 0;
 | 
					 | 
				
			||||||
	width: 100%;
 | 
					 | 
				
			||||||
	padding: 10px 16px;
 | 
					 | 
				
			||||||
	box-sizing: border-box;
 | 
					 | 
				
			||||||
	background: #edf1fd;
 | 
					 | 
				
			||||||
	z-index: 999;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
.sub-form>>>.u-form-item__body__left__content__label {
 | 
					 | 
				
			||||||
	font-size: 14px;
 | 
					 | 
				
			||||||
	/* justify-content: flex-start; */
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
.sub-form>>>.u-textarea__field {
 | 
					 | 
				
			||||||
	font-size: 14px;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
.sub-form>>>.u-cell__title-text {
 | 
					 | 
				
			||||||
	font-size: 14px;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
.uni-collapse-item {
 | 
					 | 
				
			||||||
	box-sizing: border-box;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
.sub-form>>>.uni-collapse-item__title {
 | 
					 | 
				
			||||||
	display: flex;
 | 
					 | 
				
			||||||
	width: 100%;
 | 
					 | 
				
			||||||
	box-sizing: border-box;
 | 
					 | 
				
			||||||
	flex-direction: row;
 | 
					 | 
				
			||||||
	align-items: center;
 | 
					 | 
				
			||||||
	transition: border-bottom-color .3s;
 | 
					 | 
				
			||||||
	border-bottom: 1px solid #ebeef5;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
.sub-form>>>.uni-collapse-item__title-wrap {
 | 
					 | 
				
			||||||
	/* width: 100%; */
 | 
					 | 
				
			||||||
	flex: 1;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
.sub-form>>>.uni-collapse-item__title-box {
 | 
					 | 
				
			||||||
	padding: 0px;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
.uni-collapse-item__title-box {
 | 
					 | 
				
			||||||
	padding: 0px;
 | 
					 | 
				
			||||||
	display: flex;
 | 
					 | 
				
			||||||
	width: 100%;
 | 
					 | 
				
			||||||
	box-sizing: border-box;
 | 
					 | 
				
			||||||
	flex-direction: row;
 | 
					 | 
				
			||||||
	justify-content: space-between;
 | 
					 | 
				
			||||||
	align-items: center;
 | 
					 | 
				
			||||||
	height: 48px;
 | 
					 | 
				
			||||||
	line-height: 48px;
 | 
					 | 
				
			||||||
	background-color: #fff;
 | 
					 | 
				
			||||||
	color: #303133;
 | 
					 | 
				
			||||||
	font-size: 13px;
 | 
					 | 
				
			||||||
	font-weight: 500;
 | 
					 | 
				
			||||||
	cursor: pointer;
 | 
					 | 
				
			||||||
	outline: none;
 | 
					 | 
				
			||||||
	white-space: nowrap;
 | 
					 | 
				
			||||||
	overflow: hidden;
 | 
					 | 
				
			||||||
	text-overflow: ellipsis;
 | 
					 | 
				
			||||||
	flex: 1;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
.uni-collapse-item__title-text {
 | 
					 | 
				
			||||||
	flex: 1;
 | 
					 | 
				
			||||||
	font-size: 14px;
 | 
					 | 
				
			||||||
	white-space: nowrap;
 | 
					 | 
				
			||||||
	color: inherit;
 | 
					 | 
				
			||||||
	overflow: hidden;
 | 
					 | 
				
			||||||
	text-overflow: ellipsis;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
.right-align {
 | 
					 | 
				
			||||||
	display: flex;
 | 
					 | 
				
			||||||
	flex-wrap: wrap;
 | 
					 | 
				
			||||||
	justify-content: end;
 | 
					 | 
				
			||||||
	flex: 1;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
		Loading…
	
		Reference in New Issue
	
	Block a user