This commit is contained in:
yunkexin 2026-07-01 17:12:29 +08:00
parent f8b7372fd2
commit 4146d71b39

View File

@ -62,7 +62,7 @@
<view style="font-size: 15px; font-weight: bold;color: #3d4b70;margin-bottom: 10px;margin-top: 20px;">检查内容</view>
<uni-collapse :border="false" accordion>
<view v-for="(item, index) in model.Nav_CheckRecordDetails" :key="index">
<view v-for="(item, index) in model.Nav_CheckRecordDetails.filter(i => !i.IS_DELETED)" :key="index">
<uni-collapse-item title-border="none" :border="false">
<template v-slot:title>
<view class="uni-collapse-item__title-box">
@ -70,12 +70,12 @@
{{item.Nav_RiskArea?index+1+'.'+item.Nav_RiskArea.NAME:index+1+'.'}}
</view>
<view @click.stop>
<u-icon @click="handleDelRowBefore(index)" name="trash" color="#ff4d4f" size="21" style="margin-right: 10px;"></u-icon>
<u-icon @click="handleDelRowBefore(item)" name="trash" color="#ff4d4f" size="21" style="margin-right: 10px;"></u-icon>
</view>
</view>
</template>
<view class="content" style="padding: 0px 0px 0px 10px;">
<u-form-item required label="检查区域:" prop="CHECK_TIME" @click="handleShowSheetForArea(item,{title: '检查区域', name: 'Nav_RiskArea'})">
<u-form-item required label="检查区域:" prop="CHECK_TIME" @click="handleShowSheet({title: '检查区域', name: 'Nav_RiskArea',itemData:item})">
<u--input disabled v-if="item.Nav_RiskArea" v-model="item.Nav_RiskArea.NAME" disabledColor="#ffffff" placeholder="请选择检查区域" border="none" inputAlign="right" fontSize="14px">
</u--input>
@ -88,7 +88,7 @@
<view class="tag-view" v-if="item.Nav_CheckRecordDetailUsers">
<uni-tag class="tag" v-for="(i, k) in item.Nav_CheckRecordDetailUsers.filter(i => !i.IS_DELETED)" :key="k" :inverted="true" :text="i.Nav_User.NAME" type="primary" />
</view>
<u-form-item required label="检查内容:" prop="CHECK_TIME" @click="handleShowSheetForArea(item,{title: '检查内容', name: 'Nav_Contents'})">
<u-form-item required label="检查内容:" prop="CHECK_TIME" @click="handleShowSheet({title: '检查内容', name: 'Nav_Contents',itemData:item})">
<u-icon style="margin-left: 4px;" slot="right" name="arrow-down" size="12">
</u-icon>
</u-form-item>
@ -99,20 +99,20 @@
<u-icon style="margin-left: 4px;" name="arrow-down" size="12">
</u-icon>
</u-form-item>
<u-form-item label="隐患描述:" prop="CHECK_TIME" @click="handleShowSheetForArea(item,{title: '隐患描述', name: 'Nav_Question'})">
<u-form-item label="隐患描述:" prop="CHECK_TIME" @click="handleShowSheet({title: '隐患描述', name: 'Nav_Question',itemData:item})">
<u-icon style="margin-left: 4px;" slot="right" name="arrow-down" size="12">
</u-icon>
</u-form-item>
<view v-if="item.Nav_Question" style="display: flex;flex-direction: row;justify-content: center;align-items: center;">
<u-textarea v-model="(item.Nav_Question||{}).DESCREPTION" disabled placeholder="请选择隐患描述">
</u-textarea>
<u-icon style="margin-left: 10px;" name="trash" color="#ff4d4f" size="20" @click="handleDelQuestion(index)">
<u-icon style="margin-left: 10px;" name="trash" color="#ff4d4f" size="20" @click="handleDelQuestion(item)">
</u-icon>
</view>
<view v-else style="display: flex;flex-direction: row;justify-content: center;align-items: center;">
<u-textarea disabled placeholder="请选择隐患描述">
</u-textarea>
<u-icon style="margin-left: 10px;" name="trash" color="#ff4d4f" size="20" @click="handleDelQuestion(index)">
<u-icon style="margin-left: 10px;" name="trash" color="#ff4d4f" size="20" @click="handleDelQuestion(item)">
</u-icon>
</view>
<u-form-item label="隐患等级" prop="HIDDEN_LEVEL" @click="handleChange('SKHiddenLevel',item)" border-bottom>
@ -133,7 +133,7 @@
<full-upload v-model="item.Nav_CheckRecordDetailFiles" :isShowBtn='true' :listProp='listPropUpload' :listPropVal='listPropValUpload'></full-upload>
<u-form-item label="备注" prop="HIDDEN_PLACE" border-bottom>
</u-form-item>
<u-textarea v-model="item.REMARK" placeholder="请填写备注">
<u-textarea v-model="item.REMARK" placeholder="请填写备注">
</u-textarea>
</view>
@ -506,14 +506,14 @@
})
},
handleDelQuestion(index) {
this.model.Nav_CheckRecordDetails[index].Nav_Question = {}
this.model.Nav_CheckRecordDetails[index].CHECK_QUESTION_ID = ''
handleDelQuestion(item) {
item.Nav_Question = {}
item.CHECK_QUESTION_ID = ''
this.$forceUpdate()
},
handleDelRowBefore(index) {
this.nowIndex = index
this.showDelModalIndex = index
handleDelRowBefore(item) {
item.IS_DELETED = true
this.$forceUpdate()
},
confirmDel() {
@ -567,15 +567,6 @@
}
},
handleShowSheetForArea(item, todo) {
const validDetails = this.model.Nav_CheckRecordDetails.filter(i => !i.IS_DELETED);
const index = validDetails.indexOf(item);
this.handleShowSheet({
title: todo.title,
name: todo.name,
index: index
});
},
async handleShowSheet(p) {
const orgId = uni.getStorageSync('orgId')
@ -630,9 +621,8 @@
if (p.val) {
extendRule(json, 'DESCREPTION', 9, p.val);
}
let data = this.model.Nav_CheckRecordDetails[p.index]
if (data.CHECK_CONTENTS_ID && data.CHECK_CONTENTS_ID !== '') {
extendRule(json, 'CHECK_CONTENTS_ID', 1, data.CHECK_CONTENTS_ID);
if (p.itemData.CHECK_CONTENTS_ID && p.itemData.CHECK_CONTENTS_ID !== '') {
extendRule(json, 'CHECK_CONTENTS_ID', 1, p.itemData.CHECK_CONTENTS_ID);
}
json.Sort = 'DESCREPTION'
dataSelect = await GetHiddenScripList(json).then(res => {
@ -679,26 +669,23 @@
handleSelected(e) {
this.selectorInfo.showPopup = false
const validDetails = this.model.Nav_CheckRecordDetails.filter(i => !i.IS_DELETED);
const index = this.selectorInfo.index;
const realIndex = this.model.Nav_CheckRecordDetails.findIndex(item => item === validDetails[index]);
if (this.selectorInfo.name == 'Nav_RiskArea') {
this.model.Nav_CheckRecordDetails[realIndex].Nav_RiskArea = e;
this.model.Nav_CheckRecordDetails[realIndex].RISK_AREA_ID = e.ID;
this.selectorInfo.itemData.Nav_RiskArea = e;
this.selectorInfo.itemData.RISK_AREA_ID = e.ID;
} else if (this.selectorInfo.name == 'Nav_Contents') {
this.model.Nav_CheckRecordDetails[realIndex].Nav_Contents = e;
this.model.Nav_CheckRecordDetails[realIndex].CHECK_CONTENTS_ID = e.ID;
this.selectorInfo.itemData.Nav_Contents = e;
this.selectorInfo.itemData.CHECK_CONTENTS_ID = e.ID;
} else if (this.selectorInfo.name == 'Nav_Question') {
this.model.Nav_CheckRecordDetails[realIndex].Nav_Question = e;
this.model.Nav_CheckRecordDetails[realIndex].CHECK_QUESTION_ID = e.ID;
this.model.Nav_CheckRecordDetails[realIndex].HIDDEN_LEVEL = e.QUESTION_LEVEL
this.model.Nav_CheckRecordDetails[realIndex].HIDDEN_LEVELName = this.enumsData['SKHiddenLevel'].find(item1 => item1.code === e.QUESTION_LEVEL).name;
this.selectorInfo.itemData.Nav_Question = e;
this.selectorInfo.itemData.CHECK_QUESTION_ID = e.ID;
this.selectorInfo.itemData.HIDDEN_LEVEL = e.QUESTION_LEVEL
this.selectorInfo.itemData.HIDDEN_LEVELName = this.enumsData['SKHiddenLevel'].find(item1 => item1.code === e.QUESTION_LEVEL).name;
}
},
submit() {
for (let item of this.model.Nav_CheckRecordDetails) {
for (let item of this.model.Nav_CheckRecordDetails.filter(i => !i.IS_DELETED)) {
if (!item.Nav_CheckRecordDetailUsers || item.Nav_CheckRecordDetailUsers.length == 0) {
uni.showToast({
title: '请选择检查人员',