枚举统一更改

This commit is contained in:
yunkexin 2026-03-11 14:39:29 +08:00
parent 7446923eb0
commit 6fbec55fd3
53 changed files with 1126 additions and 2604 deletions

View File

@ -75,8 +75,8 @@
</view> </view>
<u-collapse :border="false" accordion> <u-collapse :border="false" accordion>
<uni-card margin="0" spacing="0" :is-shadow="false" v-for="(item, index) in model.Nav_Users.filter(i => !i.IS_DELETED)"> <uni-card margin="0" spacing="0" :is-shadow="false" v-for="(item, index) in model.Nav_Users.filter(i => !i.IS_DELETED)">
<u-form-item :label="(index+1)+'. '+item['Nav_User'].NAME+' - '+item['USER_SHIFT_STATUSName']" prop="Nav_User.NAME" @click="handleChangeUser(item)" > <u-form-item :label="(index+1)+'. '+item['Nav_User'].NAME+' - '+item['USER_SHIFT_STATUSName']" prop="Nav_User.NAME" @click="handleChangeUser(item)">
<view slot="right" class="row-action" v-if="ORG_ID=='8b3c41aa-51b1-7ce9-1879-248a038c1b5c'"> <view slot="right" class="row-action" v-if="ORG_ID=='8b3c41aa-51b1-7ce9-1879-248a038c1b5c'">
<view class="action" @click.stop> <view class="action" @click.stop>
<u-icon @click="handleDelPersonRowBefore(index, item)" class="icon" name="trash" color="#ff4d4f" size="21"></u-icon> <u-icon @click="handleDelPersonRowBefore(index, item)" class="icon" name="trash" color="#ff4d4f" size="21"></u-icon>
</view> </view>
@ -109,7 +109,8 @@
extendRule, extendRule,
guid, guid,
initFilter, initFilter,
initFilterGroup initFilterGroup,
transformData
} from '../../../../utils/common' } from '../../../../utils/common'
import { import {
getRequest, getRequest,
@ -117,7 +118,8 @@
import config from '../../../../config/common' import config from '../../../../config/common'
import { import {
getEnum, getEnum,
getUserLists getUserLists,
GetEnumAnyOrder
} from '../../../../services/common'; } from '../../../../services/common';
export default { export default {
@ -241,45 +243,18 @@
} }
}, },
methods: { methods: {
async fetchEnums(enumNames) { fetchEnums(enumNames) {
try { var dataParm = {
// Promise 'name': enumNames.join('|')
const enumPromises = enumNames.map(name => {
return getEnum({
name
}).then(res => {
// name/code便
return {
enumName: name,
data: res.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'
});
} }
GetEnumAnyOrder(dataParm).then(res => {
let newd = transformData(res, enumNames)
this.enumsData = newd[0];
//
this.enumsText = newd[1]
this.loadData();
})
}, },
changeSwitch(e) { changeSwitch(e) {
this.model.IS_HANDOVER = e; this.model.IS_HANDOVER = e;
@ -365,7 +340,7 @@
this.showPopup = true; this.showPopup = true;
this.handleSearchUser('init'); this.handleSearchUser('init');
} }
}, },
handleDelPersonRowBefore(index, item) { handleDelPersonRowBefore(index, item) {
if (item.USER_ID == "") { if (item.USER_ID == "") {

View File

@ -219,7 +219,8 @@
extendIgnoreDataRule, extendIgnoreDataRule,
guid, guid,
initFilter, initFilter,
initFilterGroup initFilterGroup,
transformData
} from '../../../../utils/common' } from '../../../../utils/common'
import { import {
FMProductionUnit, FMProductionUnit,
@ -250,7 +251,8 @@
import stepTitle from '@/components/custom/step-title.vue' import stepTitle from '@/components/custom/step-title.vue'
import swipeActionItem from '../../../../uni_modules/uview-ui/libs/config/props/swipeActionItem'; import swipeActionItem from '../../../../uni_modules/uview-ui/libs/config/props/swipeActionItem';
import { import {
getEnum getEnum,
GetEnumAnyOrder
} from '../../../../services/common'; } from '../../../../services/common';
export default { export default {
components: { components: {
@ -401,45 +403,17 @@
this.fetchEnums(['SKEvaluateLevelEnum', 'FOJobStepEnum']); this.fetchEnums(['SKEvaluateLevelEnum', 'FOJobStepEnum']);
}, },
methods: { methods: {
async fetchEnums(enumNames) { fetchEnums(enumNames) {
try { var dataParm = {
// Promise 'name': enumNames.join('|')
const enumPromises = enumNames.map(name => {
return getEnum({
name
}).then(res => {
// name/code便
return {
enumName: name,
data: res.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'
});
} }
GetEnumAnyOrder(dataParm).then(res => {
let newd = transformData(res, enumNames)
this.enumsData = newd[0];
//
this.enumsText = newd[1]
this.loadData();
})
}, },
loadData() { loadData() {
if (this.ID == undefined || this.ID == '') { if (this.ID == undefined || this.ID == '') {
@ -807,8 +781,8 @@
// this.selectorInfo.defaultChecked = [] // this.selectorInfo.defaultChecked = []
this.model.Nav_Risks.forEach(e => { this.model.Nav_Risks.forEach(e => {
defaultChecked.push({ defaultChecked.push({
ID:e.ENTERPRISE_LIBRARY_ID, ID: e.ENTERPRISE_LIBRARY_ID,
NAME:e.RISK_NAME NAME: e.RISK_NAME
}) })
}) })
} else { } else {
@ -958,8 +932,8 @@
delete this.modelEdit.Nav_ProductionUnit delete this.modelEdit.Nav_ProductionUnit
delete this.modelEdit.Nav_SafeUser delete this.modelEdit.Nav_SafeUser
delete this.modelEdit.Nav_Type delete this.modelEdit.Nav_Type
if(this.model.Nav_Risks&&this.model.Nav_Risks.length>0){ if (this.model.Nav_Risks && this.model.Nav_Risks.length > 0) {
this.model.Nav_Risks.map(item=>{ this.model.Nav_Risks.map(item => {
delete item.Nav_Risk delete item.Nav_Risk
}) })
} }

View File

@ -169,7 +169,7 @@
<u--textarea disabled v-model="item.CONTENT" border="surround"></u--textarea> <u--textarea disabled v-model="item.CONTENT" border="surround"></u--textarea>
<view v-if="model.STATUS==30"> <view v-if="model.STATUS==30">
<u-form-item label="是否确认:" prop="Nav_User.NAME" borderBottom> <u-form-item label="是否确认:" prop="Nav_User.NAME" borderBottom>
<u-switch v-model="item.IS_CONFIRM_NEW" size="18" disabled slot="right"></u-switch> <u-switch v-model="item.IS_CONFIRM_NEW" size="18" disabled slot="right"></u-switch>
</u-form-item> </u-form-item>
<view class="upload-title">附件</view> <view class="upload-title">附件</view>
<full-upload v-model="item.Nav_DetailFiles" :isShowBtn='false'></full-upload> <full-upload v-model="item.Nav_DetailFiles" :isShowBtn='false'></full-upload>
@ -188,10 +188,10 @@
<view style="position: relative;"> <view style="position: relative;">
<view style="position: absolute;left: -10px;color: #3d4b70;top: -3px;">*</view> <view style="position: absolute;left: -10px;color: #3d4b70;top: -3px;">*</view>
</view> </view>
<view style="font-size: 15px; font-weight: bold;color: #3d4b70;margin-bottom: 10px;">基本信息</view> <view style="font-size: 15px; font-weight: bold;color: #3d4b70;margin-bottom: 10px;">基本信息</view>
<view v-if="model.STATUS==30"> <view v-if="model.STATUS==30">
<u-form-item label="动火作业现场条件验收情况:" prop="Nav_User.NAME" borderBottom> <u-form-item label="动火作业现场条件验收情况:" prop="Nav_User.NAME" borderBottom>
<u--input disabledColor="#fff" v-model="model.COMPLETED_CONDITION" disabled fontSize="14px" customStyle="margin:0px;display:flex;padding:3px 0px" border="none" inputAlign="right"> <u--input disabledColor="#fff" v-model="model.COMPLETED_CONDITION" disabled fontSize="14px" customStyle="margin:0px;display:flex;padding:3px 0px" border="none" inputAlign="right">
@ -223,7 +223,7 @@
</u-form-item> </u-form-item>
<image style="width: 150px;height: 60px;" :src="imgurl+model.Nav_DispatchUser.FILE_PATH" v-if='model.DISPATCH_DEAL_STATUS== 1'> <image style="width: 150px;height: 60px;" :src="imgurl+model.Nav_DispatchUser.FILE_PATH" v-if='model.DISPATCH_DEAL_STATUS== 1'>
</image> </image>
</view> </view>
<view v-if="model.FIRE_STATUS>15"> <view v-if="model.FIRE_STATUS>15">
<u-form-item label="动火作业完工验收情况:" prop="Nav_User.NAME" borderBottom> <u-form-item label="动火作业完工验收情况:" prop="Nav_User.NAME" borderBottom>
@ -252,7 +252,7 @@
</u-form-item> </u-form-item>
<image style="width: 150px;height: 60px;" :src="imgurl+model.Nav_SafeUser.FILE_PATH" v-if='model.SAFE_DEAL_FINISH_STATUS== 1'> <image style="width: 150px;height: 60px;" :src="imgurl+model.Nav_SafeUser.FILE_PATH" v-if='model.SAFE_DEAL_FINISH_STATUS== 1'>
</image> </image>
</view> </view>
</u--form> </u--form>
@ -260,7 +260,7 @@
<audit-process :show="showAudit" @close="handleCloseAudit" :dataSource="auditData" /> <audit-process :show="showAudit" @close="handleCloseAudit" :dataSource="auditData" />
<check-action v-if="isLoadOK && tableKey === '1'&&isAudit==='true' " :okApi="okApi" :refuseApi="refuseApi" :dataSource="$store.state.auditModel"></check-action> <check-action v-if="isLoadOK && tableKey === '1'&&isAudit==='true' " :okApi="okApi" :refuseApi="refuseApi" :dataSource="$store.state.auditModel"></check-action>
<view class="bottom-button"> <view class="bottom-button">
<u-button type="primary" class="bottom" v-if="isLoadOK&&tableKey==='1'&&!isAudit" @click="onTableBtnAgree" color="#3d4b70" >审阅</u-button> <u-button type="primary" class="bottom" v-if="isLoadOK&&tableKey==='1'&&!isAudit" @click="onTableBtnAgree" color="#3d4b70">审阅</u-button>
<!-- <button type="primary" class="bottom" v-if='isLoadOK&&tableKey==1' @click="onTableBtnAgree">签到</button> --> <!-- <button type="primary" class="bottom" v-if='isLoadOK&&tableKey==1' @click="onTableBtnAgree">签到</button> -->
</view> </view>
</view> </view>
@ -270,7 +270,8 @@
import { import {
initFilter, initFilter,
extendRule, extendRule,
extendInclude extendInclude,
transformData
} from '../../../../utils/common' } from '../../../../utils/common'
import { import {
@ -281,7 +282,8 @@
import color from '../../../../uni_modules/uview-ui/libs/config/color' import color from '../../../../uni_modules/uview-ui/libs/config/color'
import config from '../../../../config/common' import config from '../../../../config/common'
import { import {
getEnum getEnum,
GetEnumAnyOrder
} from '../../../../services/common'; } from '../../../../services/common';
export default { export default {
@ -328,13 +330,13 @@
Nav_Risks: [], Nav_Risks: [],
Nav_Details: [], Nav_Details: [],
Nav_Files: [], Nav_Files: [],
Nav_FireFiles:[], Nav_FireFiles: [],
Nav_MonitorFiles:[], Nav_MonitorFiles: [],
Nav_DispatchUser:{ Nav_DispatchUser: {
NAME: '' NAME: ''
}, },
}, },
listPropUpload: ['PRE_SHIFT_MEETING_RECORD_ID'], listPropUpload: ['PRE_SHIFT_MEETING_RECORD_ID'],
listPropValUpload: [], listPropValUpload: [],
@ -363,49 +365,22 @@
...this.$store.state.auditModel, ...this.$store.state.auditModel,
TaskID: option.taskID ? option.taskID : '' TaskID: option.taskID ? option.taskID : ''
} }
this.fetchEnums(['HMOperationTaskAuditEnum', 'SKEvaluateLevelEnum', 'FOJobStepEnum','FOYesOrNoEnum']); this.fetchEnums(['HMOperationTaskAuditEnum', 'SKEvaluateLevelEnum', 'FOJobStepEnum', 'FOYesOrNoEnum']);
}, },
methods: { methods: {
async fetchEnums(enumNames) { fetchEnums(enumNames) {
try { var dataParm = {
// Promise 'name': enumNames.join('|')
const enumPromises = enumNames.map(name => { }
return getEnum({ GetEnumAnyOrder(dataParm).then(res => {
name let newd = transformData(res, enumNames)
}).then(res => { this.enumsData = newd[0];
// name/code便 //
return { this.enumsText = newd[1]
enumName: name,
data: res.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(); this.loadData();
this.loadAuditData() this.loadAuditData()
} catch (error) { })
console.error('枚举请求失败:', error);
uni.showToast({
title: '枚举数据加载失败',
icon: 'none'
});
}
}, },
loadData() { loadData() {
const orgId = uni.getStorageSync('orgId') const orgId = uni.getStorageSync('orgId')

View File

@ -150,7 +150,8 @@
extendIgnoreDataRule, extendIgnoreDataRule,
guid, guid,
initFilter, initFilter,
initFilterGroup initFilterGroup,
transformData
} from '../../../../utils/common' } from '../../../../utils/common'
import { import {
FMProductionUnit, FMProductionUnit,
@ -181,7 +182,8 @@
import stepTitle from '@/components/custom/step-title.vue' import stepTitle from '@/components/custom/step-title.vue'
import swipeActionItem from '../../../../uni_modules/uview-ui/libs/config/props/swipeActionItem'; import swipeActionItem from '../../../../uni_modules/uview-ui/libs/config/props/swipeActionItem';
import { import {
getEnum getEnum,
GetEnumAnyOrder
} from '../../../../services/common'; } from '../../../../services/common';
export default { export default {
components: { components: {
@ -335,45 +337,18 @@
this.fetchEnums(['FOYesOrNoEnum', 'FOJobStepEnum']); this.fetchEnums(['FOYesOrNoEnum', 'FOJobStepEnum']);
}, },
methods: { methods: {
async fetchEnums(enumNames) { fetchEnums(enumNames) {
try { var dataParm = {
// Promise 'name': enumNames.join('|')
const enumPromises = enumNames.map(name => {
return getEnum({
name
}).then(res => {
// name/code便
return {
enumName: name,
data: res.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'
});
} }
GetEnumAnyOrder(dataParm).then(res => {
let newd = transformData(res, enumNames)
this.enumsData = newd[0];
//
this.enumsText = newd[1]
this.loadData();
})
}, },
loadData() { loadData() {
if (this.ID == undefined || this.ID == '') { if (this.ID == undefined || this.ID == '') {
@ -427,11 +402,11 @@
}) })
} }
}, },
changeConfirm(e,item){ changeConfirm(e, item) {
item.IS_CONFIRM_NEW =e item.IS_CONFIRM_NEW = e
}, },
stepAdd() { stepAdd() {
const isBlank = (value) => { const isBlank = (value) => {
return typeof value !== 'string' || value.trim() === ''; return typeof value !== 'string' || value.trim() === '';
}; };

View File

@ -112,7 +112,8 @@
extendIgnoreDataRule, extendIgnoreDataRule,
guid, guid,
initFilter, initFilter,
initFilterGroup initFilterGroup,
transformData
} from '../../../../utils/common' } from '../../../../utils/common'
import { import {
FMProductionUnit, FMProductionUnit,
@ -143,7 +144,8 @@
import stepTitle from '@/components/custom/step-title.vue' import stepTitle from '@/components/custom/step-title.vue'
import swipeActionItem from '../../../../uni_modules/uview-ui/libs/config/props/swipeActionItem'; import swipeActionItem from '../../../../uni_modules/uview-ui/libs/config/props/swipeActionItem';
import { import {
getEnum getEnum,
GetEnumAnyOrder
} from '../../../../services/common'; } from '../../../../services/common';
export default { export default {
components: { components: {
@ -294,45 +296,17 @@
this.fetchEnums(['SKEvaluateLevelEnum', 'FOJobStepEnum', 'FOYesOrNoEnum']); this.fetchEnums(['SKEvaluateLevelEnum', 'FOJobStepEnum', 'FOYesOrNoEnum']);
}, },
methods: { methods: {
async fetchEnums(enumNames) { fetchEnums(enumNames) {
try { var dataParm = {
// Promise 'name': enumNames.join('|')
const enumPromises = enumNames.map(name => {
return getEnum({
name
}).then(res => {
// name/code便
return {
enumName: name,
data: res.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'
});
} }
GetEnumAnyOrder(dataParm).then(res => {
let newd = transformData(res, enumNames)
this.enumsData = newd[0];
//
this.enumsText = newd[1]
this.loadData();
})
}, },
loadData() { loadData() {
if (this.ID == undefined || this.ID == '') { if (this.ID == undefined || this.ID == '') {

View File

@ -6,8 +6,7 @@
<text>{{dateFilterTxt}}</text> <text>{{dateFilterTxt}}</text>
<u-icon size="14" style="margin-left: 4px;" name="arrow-down"></u-icon> <u-icon size="14" style="margin-left: 4px;" name="arrow-down"></u-icon>
</view> </view>
<uni-search-bar class="search-bar" radius="100" :value="keyword" @confirm="handleSearch" <uni-search-bar class="search-bar" radius="100" :value="keyword" @confirm="handleSearch" @cancel="handleCancelSearch" @clear="handleCancelSearch" placeholder="搜索"></uni-search-bar>
@cancel="handleCancelSearch" @clear="handleCancelSearch" placeholder="搜索"></uni-search-bar>
<view class="filter filter-status" @click="handleShowPicker({title: '状态', name: 'status'})"> <view class="filter filter-status" @click="handleShowPicker({title: '状态', name: 'status'})">
<text>{{statusFilterTxt}}</text> <text>{{statusFilterTxt}}</text>
<u-icon size="14" style="margin-left: 4px;" name="arrow-down"></u-icon> <u-icon size="14" style="margin-left: 4px;" name="arrow-down"></u-icon>
@ -34,8 +33,7 @@
</u-empty> </u-empty>
</view> </view>
</view> </view>
<u-picker :show="comPickerInfo.showPicker" :columns="comPickerInfo.columns" @confirm="onConfirmPicker" <u-picker :show="comPickerInfo.showPicker" :columns="comPickerInfo.columns" @confirm="onConfirmPicker" :defaultIndex="[0]" @cancel="closePicker"></u-picker>
:defaultIndex="[0]" @cancel="closePicker"></u-picker>
</view> </view>
</template> </template>
@ -46,10 +44,12 @@
import { import {
extendInclude, extendInclude,
extendRule, extendRule,
initFilter initFilter,
transformData
} from '../../../../utils/common' } from '../../../../utils/common'
import { import {
getEnum getEnum,
GetEnumAnyOrder
} from '../../../../services/common'; } from '../../../../services/common';
export default { export default {
@ -85,45 +85,17 @@
handleCancelSearch() { handleCancelSearch() {
this.keyword = '' this.keyword = ''
}, },
async fetchEnums(enumNames) { fetchEnums(enumNames) {
try { var dataParm = {
// Promise 'name': enumNames.join('|')
const enumPromises = enumNames.map(name => {
return getEnum({
name
}).then(res => {
// name/code便
return {
enumName: name,
data: res.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'
});
} }
GetEnumAnyOrder(dataParm).then(res => {
let newd = transformData(res, enumNames)
this.enumsData = newd[0];
//
this.enumsText = newd[1]
this.loadData();
})
}, },
loadData() { loadData() {
const orgId = uni.getStorageSync('orgId') const orgId = uni.getStorageSync('orgId')
@ -152,7 +124,7 @@
return { return {
...i, ...i,
title: i.LEVEL + i.Nav_LiableUser.NAME + "-辨识任务", title: i.LEVEL + i.Nav_LiableUser.NAME + "-辨识任务",
STATUS: i.STATUS!==undefined?this.enumsData['FOPreMeetingStatusEnum'].find(item => item.code === i.STATUS).name:'' STATUS: i.STATUS !== undefined ? this.enumsData['FOPreMeetingStatusEnum'].find(item => item.code === i.STATUS).name : ''
} }
}) })
if (this.pageIndex !== 1) { if (this.pageIndex !== 1) {
@ -179,7 +151,7 @@
this.enumsText['FOPreMeetingStatusEnum'].map(item => { this.enumsText['FOPreMeetingStatusEnum'].map(item => {
arr.push(item) arr.push(item)
}) })
column =arr column = arr
} }
this.comPickerInfo = { this.comPickerInfo = {
showPicker: true, showPicker: true,
@ -207,13 +179,13 @@
} }
} }
if (this.comPickerInfo.name === 'status') { if (this.comPickerInfo.name === 'status') {
if(e.indexs[0] ==0 ){ if (e.indexs[0] == 0) {
this.filterStatus=null this.filterStatus = null
}else{ } else {
this.filterStatus = this.enumsData['FOPreMeetingStatusEnum'][e.indexs[0]-1].code this.filterStatus = this.enumsData['FOPreMeetingStatusEnum'][e.indexs[0] - 1].code
} }
this.statusFilterTxt = e.value[0] this.statusFilterTxt = e.value[0]
} }
this.closePicker() this.closePicker()
}, },

View File

@ -35,7 +35,7 @@
<text class="label">截止时间</text> <text class="label">截止时间</text>
<text class="value">{{item.END_TIME}}</text> <text class="value">{{item.END_TIME}}</text>
</view> </view>
<view class="field"> <view class="field">
<text class="label">状态</text> <text class="label">状态</text>
<text class="status">{{item.STATUS}}</text> <text class="status">{{item.STATUS}}</text>
@ -59,10 +59,12 @@
import { import {
extendInclude, extendInclude,
extendRule, extendRule,
initFilter initFilter,
transformData
} from '../../../../utils/common' } from '../../../../utils/common'
import { import {
getEnum getEnum,
GetEnumAnyOrder
} from '../../../../services/common'; } from '../../../../services/common';
export default { export default {
@ -90,45 +92,17 @@
this.fetchEnums(['SESafeSurveyStatus']); this.fetchEnums(['SESafeSurveyStatus']);
}, },
methods: { methods: {
async fetchEnums(enumNames) { fetchEnums(enumNames) {
try { var dataParm = {
// Promise 'name': enumNames.join('|')
const enumPromises = enumNames.map(name => {
return getEnum({
name
}).then(res => {
// name/code便
return {
enumName: name,
data: res.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'
});
} }
GetEnumAnyOrder(dataParm).then(res => {
let newd = transformData(res, enumNames)
this.enumsData = newd[0];
//
this.enumsText = newd[1]
this.loadData();
})
}, },
handleSearch(obj) { handleSearch(obj) {
this.keyword = obj.value this.keyword = obj.value

View File

@ -35,7 +35,7 @@
<text class="label">截止时间</text> <text class="label">截止时间</text>
<text class="value">{{item.END_TIME}}</text> <text class="value">{{item.END_TIME}}</text>
</view> </view>
<view class="field"> <view class="field">
<text class="label">状态</text> <text class="label">状态</text>
<text class="status">{{item.STATUS}}</text> <text class="status">{{item.STATUS}}</text>
@ -59,10 +59,12 @@
import { import {
extendInclude, extendInclude,
extendRule, extendRule,
initFilter initFilter,
transformData
} from '../../../../utils/common' } from '../../../../utils/common'
import { import {
getEnum getEnum,
GetEnumAnyOrder
} from '../../../../services/common'; } from '../../../../services/common';
export default { export default {
@ -90,45 +92,17 @@
this.fetchEnums(['SETrainSurveyStatus']); this.fetchEnums(['SETrainSurveyStatus']);
}, },
methods: { methods: {
async fetchEnums(enumNames) { fetchEnums(enumNames) {
try { var dataParm = {
// Promise 'name': enumNames.join('|')
const enumPromises = enumNames.map(name => {
return getEnum({
name
}).then(res => {
// name/code便
return {
enumName: name,
data: res.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'
});
} }
GetEnumAnyOrder(dataParm).then(res => {
let newd = transformData(res, enumNames)
this.enumsData = newd[0];
//
this.enumsText = newd[1]
this.loadData();
})
}, },
handleSearch(obj) { handleSearch(obj) {
this.keyword = obj.value this.keyword = obj.value

View File

@ -3,90 +3,66 @@
<view class="card"> <view class="card">
<view class="background"></view> <view class="background"></view>
<view> <view>
<u--form labelPosition="left" labelWidth="auto" labelAlign="center" :model="model" :rules="rules" <u--form labelPosition="left" labelWidth="auto" labelAlign="center" :model="model" :rules="rules" ref="wForm" errorType="border-bottom" class="demo-ruleForm">
ref="wForm" errorType="border-bottom" class="demo-ruleForm">
<u-form-item required label="培训名称" prop="NAME" borderBottom> <u-form-item required label="培训名称" prop="NAME" borderBottom>
<u--input v-model="model.NAME" border="none" slot="right" inputAlign="right" fontSize="14px" <u--input v-model="model.NAME" border="none" slot="right" inputAlign="right" fontSize="14px" placeholder="请输入培训名称"></u--input>
placeholder="请输入培训名称"></u--input>
</u-form-item> </u-form-item>
<u-form-item required label="培训类型" prop="Nav_TrainType.NAME" borderBottom <u-form-item required label="培训类型" prop="Nav_TrainType.NAME" borderBottom @click="handleChange('Nav_TrainType','')">
@click="handleChange('Nav_TrainType','')"> <u--input v-if="model.Nav_TrainType" v-model="model.Nav_TrainType.NAME" placeholder="请选择培训类型" border="none" inputAlign="right" disabled disabledColor="#fff" fontSize="14px"></u--input>
<u--input v-if="model.Nav_TrainType" v-model="model.Nav_TrainType.NAME" placeholder="请选择培训类型"
border="none" inputAlign="right" disabled disabledColor="#fff" fontSize="14px"></u--input>
<u-icon style="margin-left: 4px;" slot="right" name="arrow-down" size="12"> <u-icon style="margin-left: 4px;" slot="right" name="arrow-down" size="12">
</u-icon> </u-icon>
</u-form-item> </u-form-item>
<u-form-item label="培训性质" prop="IN_OUT_SHOW" borderBottom <u-form-item label="培训性质" prop="IN_OUT_SHOW" borderBottom @click="handleShowSheet({title: '培训性质', name: 'TrainInOut'})">
@click="handleShowSheet({title: '培训性质', name: 'TrainInOut'})"> <u--input :value="model.IN_OUT_SHOW" placeholder="请选择培训性质" border="none" inputAlign="right" disabled disabledColor="#fff" fontSize="14px"></u--input>
<u--input :value="model.IN_OUT_SHOW" placeholder="请选择培训性质" border="none" inputAlign="right"
disabled disabledColor="#fff" fontSize="14px"></u--input>
<u-icon style="margin-left: 4px;" slot="right" name="arrow-down" size="12"></u-icon> <u-icon style="margin-left: 4px;" slot="right" name="arrow-down" size="12"></u-icon>
</u-form-item> </u-form-item>
<u-form-item required label="培训级别" prop="LEVEL_SHOW" borderBottom <u-form-item required label="培训级别" prop="LEVEL_SHOW" borderBottom @click="handleShowSheet({title: '层级', name: 'FMDepartmentType'})">
@click="handleShowSheet({title: '层级', name: 'FMDepartmentType'})"> <u--input :value="model.LEVEL_SHOW" placeholder="请选择层级" border="none" inputAlign="right" disabled disabledColor="#fff" fontSize="14px"></u--input>
<u--input :value="model.LEVEL_SHOW" placeholder="请选择层级" border="none" inputAlign="right"
disabled disabledColor="#fff" fontSize="14px"></u--input>
<u-icon style="margin-left: 4px;" slot="right" name="arrow-down" size="12"></u-icon> <u-icon style="margin-left: 4px;" slot="right" name="arrow-down" size="12"></u-icon>
</u-form-item> </u-form-item>
<u-form-item label="开始时间" required prop="TRAIN_START_TIME" borderBottom <u-form-item label="开始时间" required prop="TRAIN_START_TIME" borderBottom @click="showCheckDate({ name: 'TRAIN_START_TIME'})">
@click="showCheckDate({ name: 'TRAIN_START_TIME'})"> <u--input disabledColor="#fff" v-model="model.TRAIN_START_TIME" disabled placeholder="请选择开始时间" suffixIcon="arrow-down" suffixIconStyle="font-size:12px" fontSize="14px" border="none"
<u--input disabledColor="#fff" v-model="model.TRAIN_START_TIME" disabled placeholder="请选择开始时间"
suffixIcon="arrow-down" suffixIconStyle="font-size:12px" fontSize="14px" border="none"
customStyle="margin:0px;display:flex;padding:3px 0px" inputAlign="right"> customStyle="margin:0px;display:flex;padding:3px 0px" inputAlign="right">
</u--input> </u--input>
</u-form-item> </u-form-item>
<u-form-item label="结束时间" required prop="TRAIN_END_TIME" borderBottom <u-form-item label="结束时间" required prop="TRAIN_END_TIME" borderBottom @click="showCheckDate({name: 'TRAIN_END_TIME'})">
@click="showCheckDate({name: 'TRAIN_END_TIME'})"> <u--input disabledColor="#fff" v-model="model.TRAIN_END_TIME" disabled placeholder="请选择结束时间" suffixIcon="arrow-down" suffixIconStyle="font-size:12px" fontSize="14px" border="none"
<u--input disabledColor="#fff" v-model="model.TRAIN_END_TIME" disabled placeholder="请选择结束时间"
suffixIcon="arrow-down" suffixIconStyle="font-size:12px" fontSize="14px" border="none"
inputAlign="right" customStyle="margin:0px;display:flex;padding:3px 0px"> inputAlign="right" customStyle="margin:0px;display:flex;padding:3px 0px">
</u--input> </u--input>
</u-form-item> </u-form-item>
<u-form-item required label="培训地点" prop="TRAIN_ADDR" borderBottom> <u-form-item required label="培训地点" prop="TRAIN_ADDR" borderBottom>
<u--input v-model="model.TRAIN_ADDR" border="none" slot="right" inputAlign="right" <u--input v-model="model.TRAIN_ADDR" border="none" slot="right" inputAlign="right" fontSize="14px" placeholder="请填写培训地点"></u--input>
fontSize="14px" placeholder="请填写培训地点"></u--input>
</u-form-item> </u-form-item>
<u-form-item required label="培训学时" prop="HOURS" borderBottom> <u-form-item required label="培训学时" prop="HOURS" borderBottom>
<u--input v-model="model.HOURS" type="number" border="none" slot="right" placeholder="请填写培训学时" <u--input v-model="model.HOURS" type="number" border="none" slot="right" placeholder="请填写培训学时" inputAlign="right" fontSize="14px"></u--input>
inputAlign="right" fontSize="14px"></u--input>
</u-form-item> </u-form-item>
<u-form-item required label="培训老师" prop="Nav_UserTeacher.NAME" borderBottom <u-form-item required label="培训老师" prop="Nav_UserTeacher.NAME" borderBottom @click="handleChange('Nav_UserTeacher','')">
@click="handleChange('Nav_UserTeacher','')"> <u--input v-model="(model.Nav_UserTeacher||{}).NAME" border="none" placeholder="请选择培训老师" inputAlign="right" fontSize="14px"></u--input>
<u--input v-model="(model.Nav_UserTeacher||{}).NAME" border="none" placeholder="请选择培训老师"
inputAlign="right" fontSize="14px"></u--input>
<u-icon style="margin-left: 4px;" slot="right" name="arrow-down" size="12"> <u-icon style="margin-left: 4px;" slot="right" name="arrow-down" size="12">
</u-icon> </u-icon>
</u-form-item> </u-form-item>
<u-form-item required label="培训形式" prop="TRAINTYPE_SHOW" borderBottom <u-form-item required label="培训形式" prop="TRAINTYPE_SHOW" borderBottom @click="handleShowSheet({title: '培训形式', name: 'TrainType'})">
@click="handleShowSheet({title: '培训形式', name: 'TrainType'})"> <u--input v-model="model.TRAINTYPE_SHOW" placeholder="请选择培训形式" border="none" inputAlign="right" disabled disabledColor="#fff" fontSize="14px"></u--input>
<u--input v-model="model.TRAINTYPE_SHOW" placeholder="请选择培训形式" border="none" inputAlign="right"
disabled disabledColor="#fff" fontSize="14px"></u--input>
<u-icon style="margin-left: 4px;" slot="right" name="arrow-down" size="12"></u-icon> <u-icon style="margin-left: 4px;" slot="right" name="arrow-down" size="12"></u-icon>
</u-form-item> </u-form-item>
<u-form-item required label="考核方式" prop="CHECKTYPE_SHOW" borderBottom <u-form-item required label="考核方式" prop="CHECKTYPE_SHOW" borderBottom @click="handleShowSheet({title: '培训形式', name: 'PlanCheckType'})">
@click="handleShowSheet({title: '培训形式', name: 'PlanCheckType'})"> <u--input v-model="model.CHECKTYPE_SHOW" placeholder="请选择考核方式" border="none" inputAlign="right" disabled disabledColor="#fff" fontSize="14px"></u--input>
<u--input v-model="model.CHECKTYPE_SHOW" placeholder="请选择考核方式" border="none" inputAlign="right"
disabled disabledColor="#fff" fontSize="14px"></u--input>
<u-icon style="margin-left: 4px;" slot="right" name="arrow-down" size="12"> <u-icon style="margin-left: 4px;" slot="right" name="arrow-down" size="12">
</u-icon> </u-icon>
</u-form-item> </u-form-item>
<u-form-item class="custom-form-item" label="培训课件" prop="DetailPost" borderBottom <u-form-item class="custom-form-item" label="培训课件" prop="DetailPost" borderBottom @click="handleQuerySelect({ formIndex: 'Nav_ListCour', isMultiple: true})">
@click="handleQuerySelect({ formIndex: 'Nav_ListCour', isMultiple: true})">
<view slot="right" class="custom-form-item-right"> <view slot="right" class="custom-form-item-right">
<view class="multi"> <view class="multi">
<u--text v-for="(i, k) in model.Nav_ListCour" :key="k" class="item" <u--text v-for="(i, k) in model.Nav_ListCour" :key="k" class="item" :text="k + 1 + '. ' + i.Nav_Cour.NAME" :size="14"></u--text>
:text="k + 1 + '. ' + i.Nav_Cour.NAME" :size="14"></u--text>
</view> </view>
<u-icon class="icon" name="arrow-down" size="12"> <u-icon class="icon" name="arrow-down" size="12">
</u-icon> </u-icon>
</view> </view>
</u-form-item> </u-form-item>
<u-form-item class="custom-form-item" label="培训内容" prop="DetailPost" borderBottom <u-form-item class="custom-form-item" label="培训内容" prop="DetailPost" borderBottom @click="handleQuerySelect({ formIndex: 'Nav_TrainContentList', isMultiple: true})">
@click="handleQuerySelect({ formIndex: 'Nav_TrainContentList', isMultiple: true})">
<view slot="right" class="custom-form-item-right"> <view slot="right" class="custom-form-item-right">
<view class="multi"> <view class="multi">
<u--text v-for="(i, k) in model.Nav_TrainContentList" :key="k" class="item" <u--text v-for="(i, k) in model.Nav_TrainContentList" :key="k" class="item" :text="k + 1 + '. ' + i.Nav_Point.NAME" :size="14"></u--text>
:text="k + 1 + '. ' + i.Nav_Point.NAME" :size="14"></u--text>
</view> </view>
<u-icon class="icon" name="arrow-down" size="12"> <u-icon class="icon" name="arrow-down" size="12">
</u-icon> </u-icon>
@ -95,56 +71,41 @@
<u-form-item label="培训安排及要求" prop="TRAIN_PLAN" borderBottom> <u-form-item label="培训安排及要求" prop="TRAIN_PLAN" borderBottom>
</u-form-item> </u-form-item>
<u--textarea required v-model="model.TRAIN_PLAN" border="surround"></u--textarea> <u--textarea required v-model="model.TRAIN_PLAN" border="surround"></u--textarea>
<u-form-item label="是否需要培训效果评估" prop="NEED_EVALUATION" borderBottom <u-form-item label="是否需要培训效果评估" prop="NEED_EVALUATION" borderBottom @click="handleShowSheet({title: '是否需要培训效果评估', name: 'SETrainNeedSuvey'})">
@click="handleShowSheet({title: '是否需要培训效果评估', name: 'SETrainNeedSuvey'})"> <u--input :value="model.NEED_EVALUATION_SHOW" placeholder="请选择" border="none" inputAlign="right" disabled disabledColor="#fff"></u--input>
<u--input :value="model.NEED_EVALUATION_SHOW" placeholder="请选择" border="none" inputAlign="right"
disabled disabledColor="#fff"></u--input>
<u-icon style="margin-left: 4px;" slot="right" name="arrow-down" size="12"></u-icon> <u-icon style="margin-left: 4px;" slot="right" name="arrow-down" size="12"></u-icon>
</u-form-item> </u-form-item>
<u-form-item label="是否触发培训记录" prop="CREATE_NOTIFY_RECORD" borderBottom> <u-form-item label="是否触发培训记录" prop="CREATE_NOTIFY_RECORD" borderBottom>
<u-switch inactiveColor="rgb(230, 230, 230)" size="24" space="4" <u-switch inactiveColor="rgb(230, 230, 230)" size="24" space="4" v-model="model.CREATE_NOTIFY_RECORD" @change="changeSwitch" border="none" slot="right" inputAlign="right"></u-switch>
v-model="model.CREATE_NOTIFY_RECORD" @change="changeSwitch" border="none" slot="right"
inputAlign="right"></u-switch>
</u-form-item> </u-form-item>
<u-form-item required label="记录人员" prop="Nav_RecordUser.NAME" borderBottom <u-form-item required label="记录人员" prop="Nav_RecordUser.NAME" borderBottom @click="handleChange('Nav_RecordUser','')">
@click="handleChange('Nav_RecordUser','')"> <u--input v-if="model.Nav_RecordUser" v-model="model.Nav_RecordUser.NAME" placeholder="记录人员" border="none" inputAlign="right" disabled disabledColor="#fff"></u--input>
<u--input v-if="model.Nav_RecordUser" v-model="model.Nav_RecordUser.NAME" placeholder="记录人员"
border="none" inputAlign="right" disabled disabledColor="#fff"></u--input>
<u-icon style="margin-left: 4px;" slot="right" name="arrow-down" size="12"> <u-icon style="margin-left: 4px;" slot="right" name="arrow-down" size="12">
</u-icon> </u-icon>
</u-form-item> </u-form-item>
<view class="upload-title">附件</view> <view class="upload-title">附件</view>
<full-upload v-model="model.Nav_Files" :isShowBtn='true' :listProp='listPropUpload' <full-upload v-model="model.Nav_Files" :isShowBtn='true' :listProp='listPropUpload' :listPropVal='listPropValUpload'></full-upload>
:listPropVal='listPropValUpload'></full-upload>
<u-form-item required label="培训人员"> <u-form-item required label="培训人员">
<u-icon name="man-add" @click="handleShowUserSelector()" size="24" color="#3d9cff" <u-icon name="man-add" @click="handleShowUserSelector()" size="24" color="#3d9cff" slot="right"></u-icon>
slot="right"></u-icon>
</u-form-item> </u-form-item>
<!-- <view v-show="!!model.Nav_TrainUserList.length" class="tag-view"> <!-- <view v-show="!!model.Nav_TrainUserList.length" class="tag-view">
<uni-tag class="tag" v-for="(i, k) in model.Nav_TrainUserList.filter(i => !i.IS_DELETED)" <uni-tag class="tag" v-for="(i, k) in model.Nav_TrainUserList.filter(i => !i.IS_DELETED)"
:key="k" :inverted="true" :text="i.NAME" type="primary" /> :key="k" :inverted="true" :text="i.NAME" type="primary" />
</view> --> </view> -->
<view v-show="!!model.Nav_TrainUserList.length" class="tag-view"> <view v-show="!!model.Nav_TrainUserList.length" class="tag-view">
<uni-tag class="tag" v-for="(i, k) in model.Nav_TrainUserList.filter(i => !i.IS_DELETED)" <uni-tag class="tag" v-for="(i, k) in model.Nav_TrainUserList.filter(i => !i.IS_DELETED)" :key="k" :inverted="true" :text="i.Nav_User.NAME" type="primary" />
:key="k" :inverted="true" :text="i.Nav_User.NAME" type="primary" />
</view> </view>
</u--form> </u--form>
</view> </view>
</view> </view>
<query-selector :show="showPopup" :lists="Lists" @close="handleClosePopup" @search="handleSearch" <query-selector :show="showPopup" :lists="Lists" @close="handleClosePopup" @search="handleSearch" @select="handleSelected" />
@select="handleSelected" /> <u-picker :show="comPickerInfo.showSheet" :columns="comPickerInfo.columns" @confirm="onConfirmPicker" :defaultIndex="[0]" @close="closePicker" @cancel="closePicker" keyName="NAME"></u-picker>
<u-picker :show="comPickerInfo.showSheet" :columns="comPickerInfo.columns" @confirm="onConfirmPicker"
:defaultIndex="[0]" @close="closePicker" @cancel="closePicker" keyName="NAME"></u-picker>
<view class="bottom-button"> <view class="bottom-button">
</view> </view>
<u-datetime-picker :show="dateTimePickerInfo.showCheckDate" mode="datetime" <u-datetime-picker :show="dateTimePickerInfo.showCheckDate" mode="datetime" v-model='dateTimePickerInfo.defaultDateTime' :formatter="formatter" @confirm="handleCheckDate"
v-model='dateTimePickerInfo.defaultDateTime' :formatter="formatter" @confirm="handleCheckDate" @close="dateTimePickerInfo.showCheckDate = false;" @cancel="dateTimePickerInfo.showCheckDate = false;"></u-datetime-picker>
@close="dateTimePickerInfo.showCheckDate = false;" <query-selector :multiple="qsCom.isMultiple" :total="curTotal" :show="qsCom.show" :lists="qsCom.lists" @close="onCloseQS" @search="onSearchQS" @select="onSelectedQS" :defaultChecked="qsCom.defaultChecked" />
@cancel="dateTimePickerInfo.showCheckDate = false;"></u-datetime-picker> <people-selector :defaultChecked="peopleSelectOption.defaultChecked" :show="peopleSelectOption.showSelector" @select="handleSelectorPeople" @close="peopleSelectOption.showSelector = false">
<query-selector :multiple="qsCom.isMultiple" :total="curTotal" :show="qsCom.show" :lists="qsCom.lists"
@close="onCloseQS" @search="onSearchQS" @select="onSelectedQS" :defaultChecked="qsCom.defaultChecked" />
<people-selector :defaultChecked="peopleSelectOption.defaultChecked" :show="peopleSelectOption.showSelector"
@select="handleSelectorPeople" @close="peopleSelectOption.showSelector = false">
</people-selector> </people-selector>
<view class="bottom-button"> <view class="bottom-button">
<u-button type="primary" @click="submit" color="#3d4b70">提交</u-button> <u-button type="primary" @click="submit" color="#3d4b70">提交</u-button>
@ -161,13 +122,15 @@
extendRule, extendRule,
guid, guid,
initFilter, initFilter,
initFilterGroup initFilterGroup,
transformData
} from '../../../../utils/common' } from '../../../../utils/common'
import { import {
getRequest, getRequest,
} from '../../../../services/apply/FOServices/FOServices'; } from '../../../../services/apply/FOServices/FOServices';
import { import {
getEnum getEnum,
GetEnumAnyOrder
} from '../../../../services/common'; } from '../../../../services/common';
export default { export default {
data() { data() {
@ -305,37 +268,16 @@
}, },
methods: { methods: {
async fetchEnums(enumNames) { fetchEnums(enumNames) {
try {
// Promise
const enumPromises = enumNames.map(name => {
return getEnum({
name
}).then(res => {
// name/code便
return {
enumName: name,
data: res.map(item => ({
...item,
name: item.NAME, //
code: item.ID //
}))
};
});
});
// var dataParm = {
const results = await Promise.all(enumPromises); 'name': enumNames.join('|')
// data }
results.forEach(({ GetEnumAnyOrder(dataParm).then(res => {
enumName, let newd = transformData(res, enumNames)
data this.enumsData = newd[0];
}) => { //
this.enumsData[enumName] = data; this.enumsText = newd[1]
//
this.enumsText[enumName] = data.map(item => item.name);
});
// loadData
if (this.isAdd != 1) { if (this.isAdd != 1) {
this.loadData(); this.loadData();
} else { } else {
@ -345,13 +287,7 @@
this.model.IN_OUT_SHOW = this.enumsData['TrainInOut'][0].name this.model.IN_OUT_SHOW = this.enumsData['TrainInOut'][0].name
this.model.IN_OUT = this.enumsData['TrainInOut'][0].code this.model.IN_OUT = this.enumsData['TrainInOut'][0].code
} }
} catch (error) { })
console.error('枚举请求失败:', error);
uni.showToast({
title: '枚举数据加载失败',
icon: 'none'
});
}
}, },
changeSwitch(e) { changeSwitch(e) {
this.model.CREATE_NOTIFY_RECORD = e; this.model.CREATE_NOTIFY_RECORD = e;
@ -482,9 +418,9 @@
}) })
} else if (opt.formIndex == 'Nav_ListCour') { } else if (opt.formIndex == 'Nav_ListCour') {
if (this.model.Nav_ListCour != null && this.model.Nav_ListCour.length > 0) if (this.model.Nav_ListCour != null && this.model.Nav_ListCour.length > 0)
this.model.Nav_ListCour.forEach(e => { this.model.Nav_ListCour.forEach(e => {
defaultChecked.push(e.Nav_Cour) defaultChecked.push(e.Nav_Cour)
}) })
} }
if (column && column.length) { if (column && column.length) {
this.qsCom = { this.qsCom = {

View File

@ -62,10 +62,12 @@
import { import {
extendInclude, extendInclude,
extendRule, extendRule,
initFilter initFilter,
transformData
} from '../../../../utils/common' } from '../../../../utils/common'
import { import {
getEnum getEnum,
GetEnumAnyOrder
} from '../../../../services/common'; } from '../../../../services/common';
export default { export default {
@ -90,48 +92,20 @@
} }
}, },
onLoad() { onLoad() {
this.fetchEnums(['SETrainNotifyStatus','PlanCheckType']); this.fetchEnums(['SETrainNotifyStatus', 'PlanCheckType']);
}, },
methods: { methods: {
async fetchEnums(enumNames) { fetchEnums(enumNames) {
try { var dataParm = {
// Promise 'name': enumNames.join('|')
const enumPromises = enumNames.map(name => {
return getEnum({
name
}).then(res => {
// name/code便
return {
enumName: name,
data: res.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'
});
} }
GetEnumAnyOrder(dataParm).then(res => {
let newd = transformData(res, enumNames)
this.enumsData = newd[0];
//
this.enumsText = newd[1]
this.loadData();
})
}, },
handleSearch(obj) { handleSearch(obj) {
this.keyword = obj.value this.keyword = obj.value
@ -162,7 +136,7 @@
...i, ...i,
title: i.NAME, title: i.NAME,
STATUS: i.STATUS !== undefined ? this.enumsData['SETrainNotifyStatus'].find(item => item.code === i.STATUS)?.name : '', STATUS: i.STATUS !== undefined ? this.enumsData['SETrainNotifyStatus'].find(item => item.code === i.STATUS)?.name : '',
CHECKTYPE_SHOW :i.CHECKTYPE !== undefined ? this.enumsData['PlanCheckType'].find(item => item.code === i.CHECKTYPE)?.name : '' CHECKTYPE_SHOW: i.CHECKTYPE !== undefined ? this.enumsData['PlanCheckType'].find(item => item.code === i.CHECKTYPE)?.name : ''
} }
}) })
@ -186,10 +160,10 @@
if (p.name === 'status') { if (p.name === 'status') {
let arr = [] let arr = []
arr.push('全部') arr.push('全部')
this.enumsText['SETrainNotifyStatus'].map(item=>{ this.enumsText['SETrainNotifyStatus'].map(item => {
arr.push(item) arr.push(item)
}) })
column =arr column = arr
} }
this.comPickerInfo = { this.comPickerInfo = {
showPicker: true, showPicker: true,
@ -220,7 +194,7 @@
if (e.value[0] == '全部') { if (e.value[0] == '全部') {
this.filterStatus = null this.filterStatus = null
} else { } else {
this.filterStatus = this.enumsData['SETrainNotifyStatus'][e.indexs[0]-1].code this.filterStatus = this.enumsData['SETrainNotifyStatus'][e.indexs[0] - 1].code
} }
this.statusFilterTxt = e.value[0] this.statusFilterTxt = e.value[0]
} }

View File

@ -3,64 +3,48 @@
<view class="card"> <view class="card">
<view class="background"></view> <view class="background"></view>
<view> <view>
<u--form labelPosition="left" labelWidth="auto" labelAlign="center" :model="model" <u--form labelPosition="left" labelWidth="auto" labelAlign="center" :model="model" class="demo-ruleForm">
class="demo-ruleForm">
<u-form-item label="培训名称:" prop="NAME" borderBottom> <u-form-item label="培训名称:" prop="NAME" borderBottom>
<u--input v-model="model.NAME" border="none" slot="right" inputAlign="right" disabled <u--input v-model="model.NAME" border="none" slot="right" inputAlign="right" disabled disabledColor="#ffffff" fontSize="14px"></u--input>
disabledColor="#ffffff" fontSize="14px"></u--input>
</u-form-item> </u-form-item>
<u-form-item label="编号:" prop="CODE" borderBottom> <u-form-item label="编号:" prop="CODE" borderBottom>
<u--input v-model="model.CODE" border="none" slot="right" inputAlign="right" disabled <u--input v-model="model.CODE" border="none" slot="right" inputAlign="right" disabled disabledColor="#ffffff" fontSize="14px"></u--input>
disabledColor="#ffffff" fontSize="14px"></u--input>
</u-form-item> </u-form-item>
<u-form-item label="发起时间:" prop="LAUNCH_TIME" borderBottom> <u-form-item label="发起时间:" prop="LAUNCH_TIME" borderBottom>
<u--input v-model="model.LAUNCH_TIME" border="none" slot="right" inputAlign="right" disabled <u--input v-model="model.LAUNCH_TIME" border="none" slot="right" inputAlign="right" disabled disabledColor="#ffffff" fontSize="14px"></u--input>
disabledColor="#ffffff" fontSize="14px"></u--input>
</u-form-item> </u-form-item>
<u-form-item label="发起部门:" prop="Nav_LaunchDepartment.NAME" borderBottom> <u-form-item label="发起部门:" prop="Nav_LaunchDepartment.NAME" borderBottom>
<u--input v-if="model.Nav_LaunchDepartment" v-model="model.Nav_LaunchDepartment.NAME" <u--input v-if="model.Nav_LaunchDepartment" v-model="model.Nav_LaunchDepartment.NAME" border="none" slot="right" inputAlign="right" disabled disabledColor="#ffffff" fontSize="14px"></u--input>
border="none" slot="right" inputAlign="right" disabled disabledColor="#ffffff"
fontSize="14px"></u--input>
</u-form-item> </u-form-item>
<u-form-item label="发起人员:" prop="Nav_LaunchUser.NAME" borderBottom> <u-form-item label="发起人员:" prop="Nav_LaunchUser.NAME" borderBottom>
<u--input v-if="model.Nav_LaunchUser" v-model="model.Nav_LaunchUser.NAME" border="none" <u--input v-if="model.Nav_LaunchUser" v-model="model.Nav_LaunchUser.NAME" border="none" slot="right" inputAlign="right" disabled disabledColor="#ffffff" fontSize="14px"></u--input>
slot="right" inputAlign="right" disabled disabledColor="#ffffff" fontSize="14px"></u--input>
</u-form-item> </u-form-item>
<u-form-item label="培训类型:" prop="Nav_LaunchUser.NAME" borderBottom> <u-form-item label="培训类型:" prop="Nav_LaunchUser.NAME" borderBottom>
<u--input v-if="model.Nav_TrainType" v-model="model.Nav_TrainType.NAME" border="none" <u--input v-if="model.Nav_TrainType" v-model="model.Nav_TrainType.NAME" border="none" slot="right" inputAlign="right" disabled disabledColor="#ffffff" fontSize="14px"></u--input>
slot="right" inputAlign="right" disabled disabledColor="#ffffff" fontSize="14px"></u--input>
</u-form-item> </u-form-item>
<u-form-item label="培训级别:" prop="LEVEL" borderBottom> <u-form-item label="培训级别:" prop="LEVEL" borderBottom>
<u--input v-model="model.LEVEL_SHOW" border="none" slot="right" inputAlign="right" disabled <u--input v-model="model.LEVEL_SHOW" border="none" slot="right" inputAlign="right" disabled disabledColor="#ffffff" fontSize="14px"></u--input>
disabledColor="#ffffff" fontSize="14px"></u--input>
</u-form-item> </u-form-item>
<u-form-item label="开始时间:" prop="TRAIN_START_TIME" borderBottom> <u-form-item label="开始时间:" prop="TRAIN_START_TIME" borderBottom>
<u--input v-model="model.TRAIN_START_TIME" border="none" inputAlign="right" disabled <u--input v-model="model.TRAIN_START_TIME" border="none" inputAlign="right" disabled disabledColor="#ffffff" fontSize="14px"></u--input>
disabledColor="#ffffff" fontSize="14px"></u--input>
</u-form-item> </u-form-item>
<u-form-item label="结束时间:" prop="TRAIN_END_TIME" borderBottom> <u-form-item label="结束时间:" prop="TRAIN_END_TIME" borderBottom>
<u--input v-model="model.TRAIN_END_TIME" border="none" inputAlign="right" disabled <u--input v-model="model.TRAIN_END_TIME" border="none" inputAlign="right" disabled disabledColor="#ffffff" fontSize="14px"></u--input>
disabledColor="#ffffff" fontSize="14px"></u--input>
</u-form-item> </u-form-item>
<u-form-item label="培训地点:" prop="TRAIN_ADDR" borderBottom> <u-form-item label="培训地点:" prop="TRAIN_ADDR" borderBottom>
<u--input v-model="model.TRAIN_ADDR" border="none" slot="right" inputAlign="right" disabled <u--input v-model="model.TRAIN_ADDR" border="none" slot="right" inputAlign="right" disabled disabledColor="#ffffff" fontSize="14px"></u--input>
disabledColor="#ffffff" fontSize="14px"></u--input>
</u-form-item> </u-form-item>
<u-form-item label="培训学时:" prop="HOURS" borderBottom> <u-form-item label="培训学时:" prop="HOURS" borderBottom>
<u--input v-model="model.HOURS" border="none" slot="right" inputAlign="right" disabled <u--input v-model="model.HOURS" border="none" slot="right" inputAlign="right" disabled disabledColor="#ffffff" fontSize="14px"></u--input>
disabledColor="#ffffff" fontSize="14px"></u--input>
</u-form-item> </u-form-item>
<u-form-item label="培训老师:" prop="TRAIN_TEACHER" borderBottom> <u-form-item label="培训老师:" prop="TRAIN_TEACHER" borderBottom>
<u--input v-model="(model.Nav_UserTeacher||{}).NAME" border="none" slot="right" <u--input v-model="(model.Nav_UserTeacher||{}).NAME" border="none" slot="right" inputAlign="right" disabled disabledColor="#ffffff" fontSize="14px"></u--input>
inputAlign="right" disabled disabledColor="#ffffff" fontSize="14px"></u--input>
</u-form-item> </u-form-item>
<u-form-item label="培训形式:" prop="" borderBottom> <u-form-item label="培训形式:" prop="" borderBottom>
<u--input v-model="model.TRAINTYPE_SHOW" border="none" inputAlign="right" disabled <u--input v-model="model.TRAINTYPE_SHOW" border="none" inputAlign="right" disabled disabledColor="#ffffff" fontSize="14px"></u--input>
disabledColor="#ffffff" fontSize="14px"></u--input>
</u-form-item> </u-form-item>
<u-form-item label="考核方式:" prop="Nav_TrainCheckType.NAME" borderBottom> <u-form-item label="考核方式:" prop="Nav_TrainCheckType.NAME" borderBottom>
<u--input v-model="model.CHECKTYPE_SHOW" border="none" slot="right" inputAlign="right" disabled <u--input v-model="model.CHECKTYPE_SHOW" border="none" slot="right" inputAlign="right" disabled disabledColor="#ffffff" fontSize="14px"></u--input>
disabledColor="#ffffff" fontSize="14px"></u--input>
</u-form-item> </u-form-item>
<u-form-item label="培训课件:" prop='model.Nav_ListCour_Show' borderBottom> <u-form-item label="培训课件:" prop='model.Nav_ListCour_Show' borderBottom>
</u-form-item> </u-form-item>
@ -75,8 +59,7 @@
</u-form-item> </u-form-item>
<rich-text v-html="model.users" border="none" disabled style="font-size: 14px;"></rich-text> <rich-text v-html="model.users" border="none" disabled style="font-size: 14px;"></rich-text>
<view class="upload-title">附件</view> <view class="upload-title">附件</view>
<full-upload v-model="model.Nav_Files" :listProp='listPropUpload' :listPropVal='listPropValUpload' <full-upload v-model="model.Nav_Files" :listProp='listPropUpload' :listPropVal='listPropValUpload' :isShowBtn="false"></full-upload>
:isShowBtn="false"></full-upload>
</u--form> </u--form>
</view> </view>
@ -87,10 +70,8 @@
<u--textarea height='3em' v-model="LEAVE_REASON" placeholder="请输入请假理由"></u--textarea> <u--textarea height='3em' v-model="LEAVE_REASON" placeholder="请输入请假理由"></u--textarea>
</view> </view>
<view class="buttons"> <view class="buttons">
<u-button type="primary" color="#3d4b70" class="btn first-btn" @click="onChargeUserAgree(1)" <u-button type="primary" color="#3d4b70" class="btn first-btn" @click="onChargeUserAgree(1)" text="参加"></u-button>
text="参加"></u-button> <u-button color="#3d4b70" :plain="true" type="warning" @click="onChargeUserAgree(2)" text="请假"></u-button>
<u-button color="#3d4b70" :plain="true" type="warning" @click="onChargeUserAgree(2)"
text="请假"></u-button>
</view> </view>
</view> </view>
</u--form> </u--form>
@ -104,7 +85,8 @@
initFilter, initFilter,
extendRule, extendRule,
extendInclude, extendInclude,
getArryPropShow getArryPropShow,
transformData
} from '../../../../utils/common' } from '../../../../utils/common'
import { import {
getRequest, getRequest,
@ -113,7 +95,8 @@
import color from '../../../../uni_modules/uview-ui/libs/config/color' import color from '../../../../uni_modules/uview-ui/libs/config/color'
import config from '../../../../config/common' import config from '../../../../config/common'
import { import {
getEnum getEnum,
GetEnumAnyOrder
} from '../../../../services/common'; } from '../../../../services/common';
export default { export default {
data() { data() {
@ -139,45 +122,17 @@
this.fetchEnums(['TrainType', 'PlanCheckType', 'FMDepartmentType', 'TrainInOut', 'SETrainNeedSuvey']); this.fetchEnums(['TrainType', 'PlanCheckType', 'FMDepartmentType', 'TrainInOut', 'SETrainNeedSuvey']);
}, },
methods: { methods: {
async fetchEnums(enumNames) { fetchEnums(enumNames) {
try { var dataParm = {
// Promise 'name': enumNames.join('|')
const enumPromises = enumNames.map(name => {
return getEnum({
name
}).then(res => {
// name/code便
return {
enumName: name,
data: res.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'
});
} }
GetEnumAnyOrder(dataParm).then(res => {
let newd = transformData(res, enumNames)
this.enumsData = newd[0];
//
this.enumsText = newd[1]
this.loadData();
})
}, },
loadData() { loadData() {
const json = initFilter(this.orgId, "", "CODE", 1) const json = initFilter(this.orgId, "", "CODE", 1)

View File

@ -3,61 +3,44 @@
<view class="card"> <view class="card">
<view class="background"></view> <view class="background"></view>
<view> <view>
<u--form labelPosition="left" labelWidth="auto" labelAlign="center" :model="model" :rules="rules" <u--form labelPosition="left" labelWidth="auto" labelAlign="center" :model="model" :rules="rules" ref="wForm" errorType="border-bottom" class="demo-ruleForm">
ref="wForm" errorType="border-bottom" class="demo-ruleForm">
<u-form-item required label="培训名称:" prop="Nav_Notify.NAME" borderBottom> <u-form-item required label="培训名称:" prop="Nav_Notify.NAME" borderBottom>
<u--input v-if="model.Nav_Notify" v-model="model.Nav_Notify.NAME" border="none" slot="right" <u--input v-if="model.Nav_Notify" v-model="model.Nav_Notify.NAME" border="none" slot="right" inputAlign="right" disabled disabledColor="#fff" fontSize="14px"></u--input>
inputAlign="right" disabled disabledColor="#fff" fontSize="14px"></u--input>
</u-form-item> </u-form-item>
<u-form-item label="培训类型:" prop="Nav_TrainType.NAME" borderBottom> <u-form-item label="培训类型:" prop="Nav_TrainType.NAME" borderBottom>
<u--input v-if="model.Nav_Notify" v-model="model.Nav_Notify.Nav_TrainType.NAME" <u--input v-if="model.Nav_Notify" v-model="model.Nav_Notify.Nav_TrainType.NAME" placeholder="培训类型" border="none" inputAlign="right" disabled disabledColor="#fff" fontSize="14px"></u--input>
placeholder="培训类型" border="none" inputAlign="right" disabled disabledColor="#fff"
fontSize="14px"></u--input>
</u-icon> </u-icon>
</u-form-item> </u-form-item>
<u-form-item label="培训级别:" prop="LEVEL" borderBottom> <u-form-item label="培训级别:" prop="LEVEL" borderBottom>
<u--input v-if="model.Nav_Notify" :value="model.Nav_Notify.LEVEL_SHOW" border="none" <u--input v-if="model.Nav_Notify" :value="model.Nav_Notify.LEVEL_SHOW" border="none" inputAlign="right" disabled disabledColor="#fff" fontSize="14px"></u--input>
inputAlign="right" disabled disabledColor="#fff" fontSize="14px"></u--input>
</u-form-item> </u-form-item>
<u-form-item label="组织部门:" prop="LEVEL" borderBottom> <u-form-item label="组织部门:" prop="LEVEL" borderBottom>
<u--input v-if="model.Nav_Notify" :value="model.Nav_Notify.Nav_LaunchDepartment.NAME" <u--input v-if="model.Nav_Notify" :value="model.Nav_Notify.Nav_LaunchDepartment.NAME" border="none" inputAlign="right" disabled disabledColor="#fff" fontSize="14px"></u--input>
border="none" inputAlign="right" disabled disabledColor="#fff" fontSize="14px"></u--input>
</u-form-item> </u-form-item>
<u-form-item label="开始时间" required prop="Nav_Notify.TRAIN_START_TIME" <u-form-item label="开始时间" required prop="Nav_Notify.TRAIN_START_TIME" @click="showCheckDate({ name: 'TRAIN_START_TIME'})" borderBottom>
@click="showCheckDate({ name: 'TRAIN_START_TIME'})" borderBottom> <u--input v-if="model.Nav_Notify" disabledColor="#fff" v-model="model.Nav_Notify.TRAIN_START_TIME" disabled placeholder="请选择开始时间" suffixIcon="arrow-down" suffixIconStyle="font-size:12px"
<u--input v-if="model.Nav_Notify" disabledColor="#fff" fontSize="14px" border="none" customStyle="margin:0px;display:flex;padding:3px 0px" inputAlign="right">
v-model="model.Nav_Notify.TRAIN_START_TIME" disabled placeholder="请选择开始时间"
suffixIcon="arrow-down" suffixIconStyle="font-size:12px" fontSize="14px" border="none"
customStyle="margin:0px;display:flex;padding:3px 0px" inputAlign="right">
</u--input> </u--input>
</u-form-item> </u-form-item>
<u-form-item label="结束时间" required prop="Nav_Notify.TRAIN_END_TIME" <u-form-item label="结束时间" required prop="Nav_Notify.TRAIN_END_TIME" @click="showCheckDate({name: 'TRAIN_END_TIME'})" borderBottom>
@click="showCheckDate({name: 'TRAIN_END_TIME'})" borderBottom> <u--input v-if="model.Nav_Notify" disabledColor="#fff" v-model="model.Nav_Notify.TRAIN_END_TIME" border="none" disabled placeholder="请选择结束时间" suffixIcon="arrow-down"
<u--input v-if="model.Nav_Notify" disabledColor="#fff" v-model="model.Nav_Notify.TRAIN_END_TIME" suffixIconStyle="font-size:12px" fontSize="14px" customStyle="margin:0px;display:flex;padding:3px 0px" inputAlign="right">
border="none" disabled placeholder="请选择结束时间" suffixIcon="arrow-down"
suffixIconStyle="font-size:12px" fontSize="14px"
customStyle="margin:0px;display:flex;padding:3px 0px" inputAlign="right">
</u--input> </u--input>
</u-form-item> </u-form-item>
<u-form-item label="培训地点:" prop="TRAIN_ADDR" borderBottom> <u-form-item label="培训地点:" prop="TRAIN_ADDR" borderBottom>
<u--input v-if="model.Nav_Notify" v-model="model.Nav_Notify.TRAIN_ADDR" border="none" <u--input v-if="model.Nav_Notify" v-model="model.Nav_Notify.TRAIN_ADDR" border="none" slot="right" inputAlign="right" fontSize="14px"></u--input>
slot="right" inputAlign="right" fontSize="14px"></u--input>
</u-form-item> </u-form-item>
<u-form-item label="培训学时:" prop="HOURS" borderBottom> <u-form-item label="培训学时:" prop="HOURS" borderBottom>
<u--input v-if="model.Nav_Notify" v-model="model.Nav_Notify.HOURS" type="number" border="none" <u--input v-if="model.Nav_Notify" v-model="model.Nav_Notify.HOURS" type="number" border="none" slot="right" inputAlign="right" fontSize="14px"></u--input>
slot="right" inputAlign="right" fontSize="14px"></u--input>
</u-form-item> </u-form-item>
<u-form-item label="培训老师:" prop="TRAIN_TEACHER" borderBottom> <u-form-item label="培训老师:" prop="TRAIN_TEACHER" borderBottom>
<u--input v-if="model.Nav_Notify" v-model="model.Nav_Notify.TRAIN_TEACHER" border="none" <u--input v-if="model.Nav_Notify" v-model="model.Nav_Notify.TRAIN_TEACHER" border="none" slot="right" inputAlign="right" fontSize="14px"></u--input>
slot="right" inputAlign="right" fontSize="14px"></u--input>
</u-form-item> </u-form-item>
<u-form-item label="培训形式:" prop="TRAIN_MODEL" borderBottom> <u-form-item label="培训形式:" prop="TRAIN_MODEL" borderBottom>
<u--input v-if="model.Nav_Notify" :value="model.Nav_Notify.TRAINTYPE_SHOW" border="none" <u--input v-if="model.Nav_Notify" :value="model.Nav_Notify.TRAINTYPE_SHOW" border="none" inputAlign="right" disabled disabledColor="#fff" fontSize="14px"></u--input>
inputAlign="right" disabled disabledColor="#fff" fontSize="14px"></u--input>
</u-form-item> </u-form-item>
<u-form-item label="考核方式:" prop="Nav_TrainCheckType.NAME" borderBottom> <u-form-item label="考核方式:" prop="Nav_TrainCheckType.NAME" borderBottom>
<u--input v-if="model.Nav_Notify" v-model="model.Nav_Notify.CHECKTYPE_SHOW" border="none" <u--input v-if="model.Nav_Notify" v-model="model.Nav_Notify.CHECKTYPE_SHOW" border="none" inputAlign="right" disabled disabledColor="#fff" fontSize="14px"></u--input>
inputAlign="right" disabled disabledColor="#fff" fontSize="14px"></u--input>
</u-form-item> </u-form-item>
<u-form-item class="custom-form-item" label="培训课件:" prop="Nav_ListCour_Show" :borderBottom="false"> <u-form-item class="custom-form-item" label="培训课件:" prop="Nav_ListCour_Show" :borderBottom="false">
</u-form-item> </u-form-item>
@ -66,58 +49,45 @@
</u-form-item> </u-form-item>
<u-textarea v-html="model.Nav_TrainContentList_SHOW" style="font-size: 14px;"></u-textarea> <u-textarea v-html="model.Nav_TrainContentList_SHOW" style="font-size: 14px;"></u-textarea>
<view class="upload-title">附件</view> <view class="upload-title">附件</view>
<full-upload v-model="model.Nav_Files" :isShowBtn='true' :listProp='listPropUpload' <full-upload v-model="model.Nav_Files" :isShowBtn='true' :listProp='listPropUpload' :listPropVal='listPropValUpload'></full-upload>
:listPropVal='listPropValUpload'></full-upload>
</u--form> </u--form>
</view> </view>
</view> </view>
<u-sticky offset-top="20"> <u-sticky offset-top="20">
<view class="sub-form"> <view class="sub-form">
<view class="sub-form-wrap"> <view class="sub-form-wrap">
<u--form labelPosition="left" labelWidth="auto" labelAlign="center" errorType="border-bottom" <u--form labelPosition="left" labelWidth="auto" labelAlign="center" errorType="border-bottom" ref="sForm">
ref="sForm">
<!-- 线上考核 只有参与与否是可以编辑的 <!-- 线上考核 只有参与与否是可以编辑的
线下考核 需要填写 是否合格 成绩 考卷等 --> 线下考核 需要填写 是否合格 成绩 考卷等 -->
<view v-if="model.Nav_Notify.CHECKTYPE==56||model.Nav_Notify.CHECKTYPE==81" <view v-if="model.Nav_Notify.CHECKTYPE==56||model.Nav_Notify.CHECKTYPE==81" style="margin-bottom: 16px;" v-for="(item, index) in model.Nav_Users">
style="margin-bottom: 16px;" v-for="(item, index) in model.Nav_Users">
<!-- 状态 STATUS SETrainRecordUserStatusEnum 考核结果 EXAMINATION_RESULTS SEExaminationResultsEnum 分数 SCORE 附件 Nav_Files --> <!-- 状态 STATUS SETrainRecordUserStatusEnum 考核结果 EXAMINATION_RESULTS SEExaminationResultsEnum 分数 SCORE 附件 Nav_Files -->
<!-- 参与 = 0, 请假 = 1, 缺席 = 2, item.Nav_User.STATUS==1?'请假':(item.Nav_User.STATUS==2:'缺席':'参与')--> <!-- 参与 = 0, 请假 = 1, 缺席 = 2, item.Nav_User.STATUS==1?'请假':(item.Nav_User.STATUS==2:'缺席':'参与')-->
<uni-card style="margin-bottom: 16px;" margin="0" spacing="0" :is-shadow="false"> <uni-card style="margin-bottom: 16px;" margin="0" spacing="0" :is-shadow="false">
<uni-collapse-item :title="(index+1)+'. '+ item.Nav_User.NAME +''+item.STATUS_SHOW+''" <uni-collapse-item :title="(index+1)+'. '+ item.Nav_User.NAME +''+item.STATUS_SHOW+''" name="1">
name="1"> <u-form-item required label="参加状态" prop="STATUS" borderBottom @click="handleShowSheet({title: '参加状态选择', name: 'STATUS',itemData:item})">
<u-form-item required label="参加状态" prop="STATUS" borderBottom <u--input v-model="item.STATUS_SHOW" placeholder="请选择参加状态" border="none" inputAlign="right" disabled disabledColor="#fff" fontSize="14px"></u--input>
@click="handleShowSheet({title: '参加状态选择', name: 'STATUS',itemData:item})">
<u--input v-model="item.STATUS_SHOW" placeholder="请选择参加状态" border="none"
inputAlign="right" disabled disabledColor="#fff" fontSize="14px"></u--input>
<u-icon style="margin-left: 4px;" slot="right" name="arrow-down" size="12"> <u-icon style="margin-left: 4px;" slot="right" name="arrow-down" size="12">
</u-icon> </u-icon>
</u-form-item> </u-form-item>
<u-form-item required label="考核结果" prop="EXAMINATION_RESULTS" borderBottom <u-form-item required label="考核结果" prop="EXAMINATION_RESULTS" borderBottom @click="handleShowSheet({title: '考核结果选择', name: 'EXAMINATION_RESULTS',itemData:item})">
@click="handleShowSheet({title: '考核结果选择', name: 'EXAMINATION_RESULTS',itemData:item})"> <u--input v-model="item.EXAMINATION_RESULTS_SHOW" placeholder="请选择考核结果" border="none" inputAlign="right" disabled disabledColor="#fff" fontSize="14px"></u--input>
<u--input v-model="item.EXAMINATION_RESULTS_SHOW" placeholder="请选择考核结果"
border="none" inputAlign="right" disabled disabledColor="#fff"
fontSize="14px"></u--input>
<u-icon style="margin-left: 4px;" slot="right" name="arrow-down" size="12"> <u-icon style="margin-left: 4px;" slot="right" name="arrow-down" size="12">
</u-icon> </u-icon>
</u-form-item> </u-form-item>
<u-form-item label="分数" prop="SCORE" borderBottom> <u-form-item label="分数" prop="SCORE" borderBottom>
<u--input disabledColor="#fff" v-model="item.SCORE" border="none" <u--input disabledColor="#fff" v-model="item.SCORE" border="none" inputAlign="right"></u--input>
inputAlign="right"></u--input>
</u-form-item> </u-form-item>
<view class="upload-title">附件</view> <view class="upload-title">附件</view>
<full-upload v-model="item.Nav_Files" :isShowBtn='true' <full-upload v-model="item.Nav_Files" :isShowBtn='true' :listProp='listSubPropUpload' :listPropVal='item.listSubPropValUpload'></full-upload>
:listProp='listSubPropUpload'
:listPropVal='item.listSubPropValUpload'></full-upload>
</uni-collapse-item> </uni-collapse-item>
</uni-card> </uni-card>
</view> </view>
<uni-collapse v-else :border="false" accordion> <uni-collapse v-else :border="false" accordion>
<u-form-item :label="(index+1)+'. '+ item.Nav_User.NAME"> <u-form-item :label="(index+1)+'. '+ item.Nav_User.NAME">
<u-subsection activeColor="#0eacf5" mode="subsection" :list="list" <u-subsection activeColor="#0eacf5" mode="subsection" :list="list" :current="item.STATUS" @change="sectionChange($event,item)"></u-subsection>
:current="item.STATUS" @change="sectionChange($event,item)"></u-subsection>
</u-form-item> </u-form-item>
</uni-collapse> </uni-collapse>
@ -127,20 +97,16 @@
</u-sticky> </u-sticky>
<!-- <query-selector :show="showPopup" :lists="Lists" @close="handleClosePopup" @search="handleSearch" <!-- <query-selector :show="showPopup" :lists="Lists" @close="handleClosePopup" @search="handleSearch"
@select="handleSelected" /> --> @select="handleSelected" /> -->
<u-picker :show="comPickerInfo.showSheet" :columns="comPickerInfo.columns" @confirm="onConfirmPicker" <u-picker :show="comPickerInfo.showSheet" :columns="comPickerInfo.columns" @confirm="onConfirmPicker" @close="closePicker" @cancel="closePicker" keyName="NAME"></u-picker>
@close="closePicker" @cancel="closePicker" keyName="NAME"></u-picker> <u-datetime-picker :show="dateTimePickerInfo.showCheckDate" mode="datetime" v-model='dateTimePickerInfo.defaultDateTime' :formatter="formatter" @confirm="handleCheckDate"
<u-datetime-picker :show="dateTimePickerInfo.showCheckDate" mode="datetime" @close="dateTimePickerInfo.showCheckDate = false;" @cancel="dateTimePickerInfo.showCheckDate = false;"></u-datetime-picker>
v-model='dateTimePickerInfo.defaultDateTime' :formatter="formatter" @confirm="handleCheckDate"
@close="dateTimePickerInfo.showCheckDate = false;"
@cancel="dateTimePickerInfo.showCheckDate = false;"></u-datetime-picker>
<!-- <!--
<query-selector :show="selectorInfo.showPopup" :defaultChecked="selectorInfo.defaultChecked" <query-selector :show="selectorInfo.showPopup" :defaultChecked="selectorInfo.defaultChecked"
:title="selectorInfo.title" :lists="selectorInfo.dataLists" @search="handleSearch" @select="handleSelected" :title="selectorInfo.title" :lists="selectorInfo.dataLists" @search="handleSearch" @select="handleSelected"
@close="selectorInfo.showPopup=false" :total="selectorInfo.totalCount" /> --> @close="selectorInfo.showPopup=false" :total="selectorInfo.totalCount" /> -->
<u-picker :show="selectorInfo.showPopup" :columns="selectorInfo.dataLists" @confirm="onConfirmPicker" <u-picker :show="selectorInfo.showPopup" :columns="selectorInfo.dataLists" @confirm="onConfirmPicker" :defaultIndex="[0]" @close="closePicker" @cancel="closePicker" keyName="NAME"></u-picker>
:defaultIndex="[0]" @close="closePicker" @cancel="closePicker" keyName="NAME"></u-picker>
<view class="bottom-button"> <view class="bottom-button">
<u-button type="primary" @click="submit" color="#3d4b70">提交</u-button> <u-button type="primary" @click="submit" color="#3d4b70">提交</u-button>
@ -158,7 +124,8 @@
guid, guid,
initFilter, initFilter,
initFilterGroup, initFilterGroup,
getArryPropShow getArryPropShow,
transformData
} from '../../../../utils/common' } from '../../../../utils/common'
import { import {
getRequest, getRequest,
@ -244,60 +211,17 @@
]); ]);
}, },
methods: { methods: {
async fetchEnums(enumNames) { fetchEnums(enumNames) {
try { var dataParm = {
// // Promise 'name': enumNames.join('|')
// const enumPromises = enumNames.map(name => {
// return getEnum({
// name
// }).then(res => {
// // name/code便
// return {
// enumName: name,
// data: res.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();
GetEnumAnyOrder({
name: 'TrainType|PlanCheckType|FMDepartmentType|SETrainRecordUserStatusEnum|SEExaminationResultsEnum'
}).then(res => {
res.forEach((e, index) => {
var dataTemp = e.map(sube => ({
...sube,
name: sube.NAME, //
code: sube.ID //
}));
this.enumsData[enumNames[index]] = dataTemp
this.enumsText[enumNames[index]] = dataTemp.map(item => item.name);
})
this.loadData();
})
} catch (error) {
console.error('枚举请求失败:', error);
uni.showToast({
title: '枚举数据加载失败',
icon: 'none'
});
} }
GetEnumAnyOrder(dataParm).then(res => {
let newd = transformData(res, enumNames)
this.enumsData = newd[0];
//
this.enumsText = newd[1]
this.loadData();
})
}, },
sectionChange(index, item) { sectionChange(index, item) {
item.STATUS = index; item.STATUS = index;

View File

@ -62,10 +62,12 @@
import { import {
extendInclude, extendInclude,
extendRule, extendRule,
initFilter initFilter,
transformData
} from '../../../../utils/common' } from '../../../../utils/common'
import { import {
getEnum getEnum,
GetEnumAnyOrder
} from '../../../../services/common'; } from '../../../../services/common';
@ -94,45 +96,17 @@
this.fetchEnums(['SETrainRecordStatus', 'PlanCheckType']); this.fetchEnums(['SETrainRecordStatus', 'PlanCheckType']);
}, },
methods: { methods: {
async fetchEnums(enumNames) { fetchEnums(enumNames) {
try { var dataParm = {
// Promise 'name': enumNames.join('|')
const enumPromises = enumNames.map(name => {
return getEnum({
name
}).then(res => {
// name/code便
return {
enumName: name,
data: res.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'
});
} }
GetEnumAnyOrder(dataParm).then(res => {
let newd = transformData(res, enumNames)
this.enumsData = newd[0];
//
this.enumsText = newd[1]
this.loadData();
})
}, },
handleSearch(obj) { handleSearch(obj) {
this.keyword = obj.value this.keyword = obj.value
@ -198,10 +172,10 @@
if (p.name === 'status') { if (p.name === 'status') {
let arr = [] let arr = []
arr.push('全部') arr.push('全部')
this.enumsText['SETrainRecordStatus'].map(item=>{ this.enumsText['SETrainRecordStatus'].map(item => {
arr.push(item) arr.push(item)
}) })
column =arr column = arr
} }
this.comPickerInfo = { this.comPickerInfo = {
showPicker: true, showPicker: true,
@ -232,7 +206,7 @@
if (e.value[0] == '全部') { if (e.value[0] == '全部') {
this.filterStatus = null this.filterStatus = null
} else { } else {
this.filterStatus = this.enumsData['SETrainRecordStatus'][e.indexs[0]-1].code this.filterStatus = this.enumsData['SETrainRecordStatus'][e.indexs[0] - 1].code
} }
this.statusFilterTxt = e.value[0] this.statusFilterTxt = e.value[0]

View File

@ -3,52 +3,39 @@
<view class="card"> <view class="card">
<view class="background"></view> <view class="background"></view>
<view> <view>
<u--form labelPosition="left" labelWidth="auto" labelAlign="center" :model="model" <u--form labelPosition="left" labelWidth="auto" labelAlign="center" :model="model" class="demo-ruleForm">
class="demo-ruleForm">
<u-form-item label="培训名称:" prop="NAME" borderBottom> <u-form-item label="培训名称:" prop="NAME" borderBottom>
<u--input v-if="model.Nav_Notify" v-model="model.Nav_Notify.NAME" border="none" slot="right" <u--input v-if="model.Nav_Notify" v-model="model.Nav_Notify.NAME" border="none" slot="right" inputAlign="right" disabled disabledColor="#ffffff" fontSize="14px"></u--input>
inputAlign="right" disabled disabledColor="#ffffff" fontSize="14px"></u--input>
</u-form-item> </u-form-item>
<u-form-item label="培训编号:" prop="CODE" borderBottom> <u-form-item label="培训编号:" prop="CODE" borderBottom>
<u--input v-if="model.Nav_Notify" v-model="model.Nav_Notify.CODE" border="none" slot="right" <u--input v-if="model.Nav_Notify" v-model="model.Nav_Notify.CODE" border="none" slot="right" inputAlign="right" disabled disabledColor="#ffffff" fontSize="14px"></u--input>
inputAlign="right" disabled disabledColor="#ffffff" fontSize="14px"></u--input>
</u-form-item> </u-form-item>
<u-form-item label="培训类型:" prop="Nav_LaunchUser.NAME" borderBottom> <u-form-item label="培训类型:" prop="Nav_LaunchUser.NAME" borderBottom>
<u--input v-if="model.Nav_Notify" v-model="model.Nav_Notify.Nav_TrainType.NAME" border="none" <u--input v-if="model.Nav_Notify" v-model="model.Nav_Notify.Nav_TrainType.NAME" border="none" slot="right" inputAlign="right" disabled disabledColor="#ffffff" fontSize="14px"></u--input>
slot="right" inputAlign="right" disabled disabledColor="#ffffff" fontSize="14px"></u--input>
</u-form-item> </u-form-item>
<u-form-item label="培训级别:" prop="LEVEL" borderBottom> <u-form-item label="培训级别:" prop="LEVEL" borderBottom>
<u--input v-if="model.Nav_Notify" v-model="model.Nav_Notify.LEVEL_SHOW" border="none" <u--input v-if="model.Nav_Notify" v-model="model.Nav_Notify.LEVEL_SHOW" border="none" slot="right" inputAlign="right" disabled disabledColor="#ffffff" fontSize="14px"></u--input>
slot="right" inputAlign="right" disabled disabledColor="#ffffff" fontSize="14px"></u--input>
</u-form-item> </u-form-item>
<u-form-item label="组织部门:" prop="Nav_Notify.Nav_LaunchDepartment.NAME" borderBottom> <u-form-item label="组织部门:" prop="Nav_Notify.Nav_LaunchDepartment.NAME" borderBottom>
<u--input v-if="model.Nav_Notify" v-model="model.Nav_Notify.Nav_LaunchDepartment.NAME" <u--input v-if="model.Nav_Notify" v-model="model.Nav_Notify.Nav_LaunchDepartment.NAME" border="none" slot="right" inputAlign="right" disabled disabledColor="#ffffff" fontSize="14px"></u--input>
border="none" slot="right" inputAlign="right" disabled disabledColor="#ffffff"
fontSize="14px"></u--input>
</u-form-item> </u-form-item>
<u-form-item label="培训时间:" prop="TRAIN_TIME" borderBottom> <u-form-item label="培训时间:" prop="TRAIN_TIME" borderBottom>
<u--input v-model="model.TRAIN_TIME" border="none" inputAlign="right" disabled <u--input v-model="model.TRAIN_TIME" border="none" inputAlign="right" disabled disabledColor="#ffffff" fontSize="14px"></u--input>
disabledColor="#ffffff" fontSize="14px"></u--input>
</u-form-item> </u-form-item>
<u-form-item label="培训地点:" prop="Nav_Notify.TRAIN_ADDR" borderBottom> <u-form-item label="培训地点:" prop="Nav_Notify.TRAIN_ADDR" borderBottom>
<u--input v-if="model.Nav_Notify" v-model="model.Nav_Notify.TRAIN_ADDR" border="none" <u--input v-if="model.Nav_Notify" v-model="model.Nav_Notify.TRAIN_ADDR" border="none" slot="right" inputAlign="right" disabled disabledColor="#ffffff" fontSize="14px"></u--input>
slot="right" inputAlign="right" disabled disabledColor="#ffffff" fontSize="14px"></u--input>
</u-form-item> </u-form-item>
<u-form-item label="培训学时:" prop="Nav_Notify.HOURS" borderBottom> <u-form-item label="培训学时:" prop="Nav_Notify.HOURS" borderBottom>
<u--input v-if="model.Nav_Notify" v-model="model.Nav_Notify.HOURS" border="none" slot="right" <u--input v-if="model.Nav_Notify" v-model="model.Nav_Notify.HOURS" border="none" slot="right" inputAlign="right" disabled disabledColor="#ffffff" fontSize="14px"></u--input>
inputAlign="right" disabled disabledColor="#ffffff" fontSize="14px"></u--input>
</u-form-item> </u-form-item>
<u-form-item label="培训老师:" prop="Nav_Notify.TRAIN_TEACHER" borderBottom> <u-form-item label="培训老师:" prop="Nav_Notify.TRAIN_TEACHER" borderBottom>
<u--input v-if="model.Nav_Notify" v-model="model.Nav_Notify.TRAIN_TEACHER" border="none" <u--input v-if="model.Nav_Notify" v-model="model.Nav_Notify.TRAIN_TEACHER" border="none" slot="right" inputAlign="right" disabled disabledColor="#ffffff" fontSize="14px"></u--input>
slot="right" inputAlign="right" disabled disabledColor="#ffffff" fontSize="14px"></u--input>
</u-form-item> </u-form-item>
<u-form-item label="培训形式:" prop="" borderBottom> <u-form-item label="培训形式:" prop="" borderBottom>
<u--input v-if="model.Nav_Notify" v-model="model.Nav_Notify.TRAINTYPE_SHOW" border="none" <u--input v-if="model.Nav_Notify" v-model="model.Nav_Notify.TRAINTYPE_SHOW" border="none" inputAlign="right" disabled disabledColor="#ffffff" fontSize="14px"></u--input>
inputAlign="right" disabled disabledColor="#ffffff" fontSize="14px"></u--input>
</u-form-item> </u-form-item>
<u-form-item label="考核方式:" prop="Nav_TrainCheckType.NAME" borderBottom> <u-form-item label="考核方式:" prop="Nav_TrainCheckType.NAME" borderBottom>
<u--input v-if="model.Nav_Notify" v-model="model.Nav_Notify.CHECKTYPE_SHOW" border="none" <u--input v-if="model.Nav_Notify" v-model="model.Nav_Notify.CHECKTYPE_SHOW" border="none" slot="right" inputAlign="right" disabled disabledColor="#ffffff" fontSize="14px"></u--input>
slot="right" inputAlign="right" disabled disabledColor="#ffffff" fontSize="14px"></u--input>
</u-form-item> </u-form-item>
<u-form-item label="培训课件:" prop="trainCour" borderBottom> <u-form-item label="培训课件:" prop="trainCour" borderBottom>
<u-textarea autoHeight v-html="model.trainCour" border="none" disabled></u-textarea> <u-textarea autoHeight v-html="model.trainCour" border="none" disabled></u-textarea>
@ -57,11 +44,9 @@
<u-textarea autoHeight v-html="model.TRAINCONTENT" border="none" disabled></u-textarea> <u-textarea autoHeight v-html="model.TRAINCONTENT" border="none" disabled></u-textarea>
</u-form-item> </u-form-item>
<view class="upload-title">附件</view> <view class="upload-title">附件</view>
<full-upload v-model="model.Nav_Files" :listProp='listPropUpload' :listPropVal='listPropValUpload' <full-upload v-model="model.Nav_Files" :listProp='listPropUpload' :listPropVal='listPropValUpload' :isShowBtn="false"></full-upload>
:isShowBtn="false"></full-upload>
<u-form-item label="审阅意见:" prop="TRAIN_PLAN" borderBottom> <u-form-item label="审阅意见:" prop="TRAIN_PLAN" borderBottom>
<u--input v-model="model.STATUS>2?'已阅':''" border="none" slot="right" inputAlign="right" <u--input v-model="model.STATUS>2?'已阅':''" border="none" slot="right" inputAlign="right" disabled disabledColor="#ffffff" fontSize="14px"></u--input>
disabled disabledColor="#ffffff" fontSize="14px"></u--input>
</u-form-item> </u-form-item>
<u-form-item label="请假人员:" prop="LeaveUsers" borderBottom> <u-form-item label="请假人员:" prop="LeaveUsers" borderBottom>
<u-textarea autoHeight v-html="model.LeaveUsers" border="none" disabled></u-textarea> <u-textarea autoHeight v-html="model.LeaveUsers" border="none" disabled></u-textarea>
@ -71,19 +56,15 @@
</u-form-item> </u-form-item>
<u-form-item label="培训人员:" prop="Users"> <u-form-item label="培训人员:" prop="Users">
</u-form-item> </u-form-item>
<rich-text autoHeight v-html="model.Users" border="none" disabled <rich-text autoHeight v-html="model.Users" border="none" disabled style="font-size: 14px;"></rich-text>
style="font-size: 14px;"></rich-text>
<view style="margin-top: 10px;"> <view style="margin-top: 10px;">
<u-button type="primary" class="bottom" <u-button type="primary" class="bottom" v-if='isLoadOK&&tableKey!=1&&model.Nav_Notify.CHECKTYPE == 51' @click="openTest(model.ID)">查看试卷</u-button>
v-if='isLoadOK&&tableKey!=1&&model.Nav_Notify.CHECKTYPE == 51'
@click="openTest(model.ID)">查看试卷</u-button>
</view> </view>
</u--form> </u--form>
</view> </view>
<view class="bottom-button" v-if='isLoadOK&&tableKey==1&&model.STATUS==1'> <view class="bottom-button" v-if='isLoadOK&&tableKey==1&&model.STATUS==1'>
<u-button type="primary" class="bottom" color="#3d4b70" @click="onTableBtnAgree" <u-button type="primary" class="bottom" color="#3d4b70" @click="onTableBtnAgree" :disabled="isAgree">签到</u-button>
:disabled="isAgree">签到</u-button>
</view> </view>
<view class="bottom-button" v-if='isLoadOK&&tableKey==1&&model.STATUS==2'> <view class="bottom-button" v-if='isLoadOK&&tableKey==1&&model.STATUS==2'>
<u-button type="primary" class="bottom" color="#3d4b70" @click="onTableBtnAudit">审核</u-button> <u-button type="primary" class="bottom" color="#3d4b70" @click="onTableBtnAudit">审核</u-button>
@ -96,7 +77,8 @@
initFilter, initFilter,
extendRule, extendRule,
extendInclude, extendInclude,
getArryPropShow getArryPropShow,
transformData
} from '../../../../utils/common' } from '../../../../utils/common'
import { import {
getRequest, getRequest,
@ -105,7 +87,8 @@
import color from '../../../../uni_modules/uview-ui/libs/config/color' import color from '../../../../uni_modules/uview-ui/libs/config/color'
import config from '../../../../config/common' import config from '../../../../config/common'
import { import {
getEnum getEnum,
GetEnumAnyOrder
} from '../../../../services/common'; } from '../../../../services/common';
export default { export default {
data() { data() {
@ -130,45 +113,17 @@
}, },
methods: { methods: {
async fetchEnums(enumNames) { fetchEnums(enumNames) {
try { var dataParm = {
// Promise 'name': enumNames.join('|')
const enumPromises = enumNames.map(name => {
return getEnum({
name
}).then(res => {
// name/code便
return {
enumName: name,
data: res.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'
});
} }
GetEnumAnyOrder(dataParm).then(res => {
let newd = transformData(res, enumNames)
this.enumsData = newd[0];
//
this.enumsText = newd[1]
this.loadData();
})
}, },
loadData() { loadData() {
const json = initFilter(this.ORG_ID, "", "", 1) const json = initFilter(this.ORG_ID, "", "", 1)

View File

@ -69,7 +69,8 @@
initFilter, initFilter,
extendRule, extendRule,
extendInclude, extendInclude,
extendOrder extendOrder,
transformData
} from '../../../../utils/common' } from '../../../../utils/common'
import { import {
MineTypeIndex, MineTypeIndex,
@ -79,7 +80,8 @@
GetSKEnterpriseLibrary GetSKEnterpriseLibrary
} from '../../../../services/apply/subPages/SK/SKServices.js' } from '../../../../services/apply/subPages/SK/SKServices.js'
import { import {
getEnum getEnum,
GetEnumAnyOrder
} from '../../../../services/common'; } from '../../../../services/common';
import UniSearchBar from '../../../../uni_modules/uni-search-bar/components/uni-search-bar/uni-search-bar.vue' import UniSearchBar from '../../../../uni_modules/uni-search-bar/components/uni-search-bar/uni-search-bar.vue'
export default { export default {
@ -113,45 +115,17 @@
}, },
methods: { methods: {
async fetchEnums(enumNames) { fetchEnums(enumNames) {
try { var dataParm = {
// Promise 'name': enumNames.join('|')
const enumPromises = enumNames.map(name => {
return getEnum({
name
}).then(res => {
// name/code便
return {
enumName: name,
data: res.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'
});
} }
GetEnumAnyOrder(dataParm).then(res => {
let newd = transformData(res, enumNames)
this.enumsData = newd[0];
//
this.enumsText = newd[1]
this.loadData();
})
}, },
handleSearch() { handleSearch() {
this.pageIndex = 0 this.pageIndex = 0

View File

@ -132,7 +132,8 @@
extendIgnoreDataRule, extendIgnoreDataRule,
guid, guid,
initFilter, initFilter,
initFilterGroup initFilterGroup,
transformData
} from '../../../../utils/common' } from '../../../../utils/common'
import { import {
FMProductionUnit, FMProductionUnit,
@ -147,7 +148,8 @@
} from '../../../../services/apply/FOServices/FOServices'; } from '../../../../services/apply/FOServices/FOServices';
import stepTitle from '@/components/custom/step-title.vue' import stepTitle from '@/components/custom/step-title.vue'
import { import {
getEnum getEnum,
GetEnumAnyOrder
} from '../../../../services/common'; } from '../../../../services/common';
export default { export default {
components: { components: {
@ -234,45 +236,17 @@
]); ]);
}, },
methods: { methods: {
async fetchEnums(enumNames) { fetchEnums(enumNames) {
try { var dataParm = {
// Promise 'name': enumNames.join('|')
const enumPromises = enumNames.map(name => {
return getEnum({
name
}).then(res => {
// name/code便
return {
enumName: name,
data: res.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'
});
} }
GetEnumAnyOrder(dataParm).then(res => {
let newd = transformData(res, enumNames)
this.enumsData = newd[0];
//
this.enumsText = newd[1]
this.loadData();
})
}, },
loadData() { loadData() {
// const json = {} // const json = {}

View File

@ -103,7 +103,8 @@
extendIgnoreDataRule, extendIgnoreDataRule,
guid, guid,
initFilter, initFilter,
initFilterGroup initFilterGroup,
transformData
} from '../../../../utils/common' } from '../../../../utils/common'
import { import {
FMProductionUnit, FMProductionUnit,
@ -125,7 +126,8 @@
import stepTitle from '@/components/custom/step-title.vue' import stepTitle from '@/components/custom/step-title.vue'
import swipeActionItem from '../../../../uni_modules/uview-ui/libs/config/props/swipeActionItem'; import swipeActionItem from '../../../../uni_modules/uview-ui/libs/config/props/swipeActionItem';
import { import {
getEnum getEnum,
GetEnumAnyOrder
} from '../../../../services/common'; } from '../../../../services/common';
export default { export default {
components: { components: {
@ -230,46 +232,17 @@
}, },
methods: { methods: {
async fetchEnums(enumNames) { fetchEnums(enumNames) {
try { var dataParm = {
// Promise 'name': enumNames.join('|')
const enumPromises = enumNames.map(name => {
return getEnum({
name
}).then(res => {
// name/code便
return {
enumName: name,
data: res.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'
});
} }
GetEnumAnyOrder(dataParm).then(res => {
let newd = transformData(res, enumNames)
this.enumsData = newd[0];
//
this.enumsText = newd[1]
this.loadData();
})
}, },
getNotNew() { getNotNew() {
const orgId = uni.getStorageSync('orgId') const orgId = uni.getStorageSync('orgId')

View File

@ -82,10 +82,12 @@
initFilter, initFilter,
extendRule, extendRule,
extendInclude, extendInclude,
extendIgnoreDataRule extendIgnoreDataRule,
transformData
} from '../../../../../utils/common' } from '../../../../../utils/common'
import { import {
getEnum getEnum,
GetEnumAnyOrder
} from '../../../../../services/common'; } from '../../../../../services/common';
import { import {
GetSKCheckType, GetSKCheckType,
@ -104,7 +106,7 @@
filterModel: { filterModel: {
MineType: '', MineType: '',
CheckLevel: '', CheckLevel: '',
CheckCycle:'', CheckCycle: '',
CheckType: '', CheckType: '',
CheckDepart: '', CheckDepart: '',
CheckPost: '', CheckPost: '',
@ -123,49 +125,21 @@
} }
}, },
onLoad(option) { onLoad(option) {
this.fetchEnums(['SKProductionUnit', 'SKDepartmentTypeEnum','SKPLANCHECKFREQUENCYEnum']); this.fetchEnums(['SKProductionUnit', 'SKDepartmentTypeEnum', 'SKPLANCHECKFREQUENCYEnum']);
// this.loadData() // this.loadData()
}, },
methods: { methods: {
async fetchEnums(enumNames) { fetchEnums(enumNames) {
try { var dataParm = {
// Promise 'name': enumNames.join('|')
const enumPromises = enumNames.map(name => {
return getEnum({
name
}).then(res => {
// name/code便
return {
enumName: name,
data: res.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'
});
} }
GetEnumAnyOrder(dataParm).then(res => {
let newd = transformData(res, enumNames)
this.enumsData = newd[0];
//
this.enumsText = newd[1]
this.loadData();
})
}, },
handleSearch() { handleSearch() {
this.initData() this.initData()
@ -206,7 +180,7 @@
}); });
// totalData // totalData
this.totalData = filteredData; this.totalData = filteredData;
this.filData() this.filData()
// //
// this.reload(); // this.reload();
}, },
@ -214,7 +188,7 @@
this.filterModel = { this.filterModel = {
MineType: '', MineType: '',
CheckLevel: '', CheckLevel: '',
CheckCycle:'', CheckCycle: '',
CheckType: '', CheckType: '',
CheckDepart: '', CheckDepart: '',
CheckPost: '', CheckPost: '',
@ -277,7 +251,7 @@
}, },
initData() { initData() {
this.lists = [] this.lists = []
this.totalData = this.allData this.totalData = this.allData
this.pageIndex = 20 this.pageIndex = 20

View File

@ -31,12 +31,12 @@
<u-checkbox :customStyle="{marginBottom: '8px'}" label="全选" name="all"> <u-checkbox :customStyle="{marginBottom: '8px'}" label="全选" name="all">
</u-checkbox> </u-checkbox>
<view v-for="(item, index) in filterDatas.Nav_Librarys" :key="index" style="margin-top: 10px;"> <view v-for="(item, index) in filterDatas.Nav_Librarys" :key="index" style="margin-top: 10px;">
<uni-collapse-item title-border="none" :border="false"> <uni-collapse-item title-border="none" :border="false">
<template v-slot:title> <template v-slot:title>
<view class="uni-collapse-item__title-box"> <view class="uni-collapse-item__title-box">
<u-checkbox :key="index" :name="item.ID"> <u-checkbox :key="index" :name="item.ID">
</u-checkbox> </u-checkbox>
<view class="uni-collapse-item__title-text"> <view class="uni-collapse-item__title-text">
@ -47,16 +47,16 @@
<view class="content" style="padding: 0px 0px 0px 10px;"> <view class="content" style="padding: 0px 0px 0px 10px;">
<u-form-item label="生产单元" prop="Nav_Contents.CHECKCONTENT" borderBottom> <u-form-item label="生产单元" prop="Nav_Contents.CHECKCONTENT" borderBottom>
<u--input fontSize="14px" disabled disabledColor="#fff" v-model="item.MINE_NAME" border="none" inputAlign="right"></u--input> <u--input fontSize="14px" disabled disabledColor="#fff" v-model="item.MINE_NAME" border="none" inputAlign="right"></u--input>
</u-form-item> </u-form-item>
<u-form-item label="辨识区域" prop="Nav_Contents.CHECKCONTENT" borderBottom> <u-form-item label="辨识区域" prop="Nav_Contents.CHECKCONTENT" borderBottom>
<u--input fontSize="14px" disabled disabledColor="#fff" v-model="(item.Nav_Area||{}).NAME" border="none" inputAlign="right"></u--input> <u--input fontSize="14px" disabled disabledColor="#fff" v-model="(item.Nav_Area||{}).NAME" border="none" inputAlign="right"></u--input>
</u-form-item> </u-form-item>
<!-- <u-form-item label="风险名称" prop="HIDDEN_PLACE" borderBottom> <!-- <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--input fontSize="14px" disabled disabledColor="#fff" v-model="item.RISK_NAME" border="none" inputAlign="right"></u--input>
</u-form-item> --> </u-form-item> -->
<u-form-item label="风险描述" prop="HIDDEN_PLACE" > <u-form-item label="风险描述" prop="HIDDEN_PLACE">
</u-form-item> </u-form-item>
<u--textarea fontSize="14px" disabled disabledColor="#fff" v-model="item.RISK_DESCRIPTION" border="none" inputAlign="right" autoHeight></u--textarea> <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-form-item label="风险类别" prop="HIDDEN_PLACE" borderBottom>
@ -66,10 +66,10 @@
<u--input fontSize="14px" disabled disabledColor="#fff" v-model="item.EVALUATE_LEVELName" border="none" inputAlign="right"></u--input> <u--input fontSize="14px" disabled disabledColor="#fff" v-model="item.EVALUATE_LEVELName" border="none" inputAlign="right"></u--input>
</u-form-item> </u-form-item>
</view> </view>
</uni-collapse-item> </uni-collapse-item>
</view> </view>
</u-checkbox-group> </u-checkbox-group>
</uni-collapse> </uni-collapse>
@ -98,13 +98,15 @@
// getEnum // getEnum
// } from '../../services/common.js' // } from '../../services/common.js'
import { import {
getEnum getEnum,
GetEnumAnyOrder
} from '../../../../../services/common'; } from '../../../../../services/common';
import config from '../../../../../config/common' import config from '../../../../../config/common'
import { import {
initFilter, initFilter,
extendRule, extendRule,
extendFilterGroupGroupRules extendFilterGroupGroupRules,
transformData
} from '../../../../../utils/common' } from '../../../../../utils/common'
export default { export default {
data() { data() {
@ -113,7 +115,7 @@
pageIndex: 0, pageIndex: 0,
pageSize: 20, pageSize: 20,
total: 0, total: 0,
loading:true, loading: true,
baseUrl: config.uni_app_web_source_url, baseUrl: config.uni_app_web_source_url,
allData: [], allData: [],
// item // item
@ -173,45 +175,17 @@
// this.$refs.uForm.setRules(this.rules) // this.$refs.uForm.setRules(this.rules)
// }, // },
methods: { methods: {
async fetchEnums(enumNames) { fetchEnums(enumNames) {
try { var dataParm = {
// Promise 'name': enumNames.join('|')
const enumPromises = enumNames.map(name => {
return getEnum({
name
}).then(res => {
// name/code便
return {
enumName: name,
data: res.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'
});
} }
GetEnumAnyOrder(dataParm).then(res => {
let newd = transformData(res, enumNames)
this.enumsData = newd[0];
//
this.enumsText = newd[1]
this.loadData();
})
}, },
loadData() { loadData() {
const json = initFilter(this.OrgId, "", "") const json = initFilter(this.OrgId, "", "")
@ -318,7 +292,7 @@
const allIds = this.filterDatas.Nav_Librarys.map(item1 => item1.ID); const allIds = this.filterDatas.Nav_Librarys.map(item1 => item1.ID);
this.checkedItems = ['all', ...allIds]; this.checkedItems = ['all', ...allIds];
}); });
} }
}) })
if (!this.filterDatas || !this.filterDatas.Nav_Librarys || this.filterDatas.Nav_Librarys.length == 0) { if (!this.filterDatas || !this.filterDatas.Nav_Librarys || this.filterDatas.Nav_Librarys.length == 0) {

View File

@ -95,7 +95,8 @@
import { import {
initFilter, initFilter,
extendRule, extendRule,
extendInclude extendInclude,
transformData
} from '../../../../../utils/common' } from '../../../../../utils/common'
import { import {
MineTypeIndex, MineTypeIndex,
@ -105,7 +106,8 @@
SKOrderEntities SKOrderEntities
} from '../../../../../services/apply/subPages/SK/SKServices.js' } from '../../../../../services/apply/subPages/SK/SKServices.js'
import { import {
getEnum getEnum,
GetEnumAnyOrder
} from '../../../../../services/common'; } from '../../../../../services/common';
export default { export default {
data() { data() {
@ -127,45 +129,17 @@
}, },
methods: { methods: {
async fetchEnums(enumNames) { fetchEnums(enumNames) {
try { var dataParm = {
// Promise 'name': enumNames.join('|')
const enumPromises = enumNames.map(name => {
return getEnum({
name
}).then(res => {
// name/code便
return {
enumName: name,
data: res.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'
});
} }
GetEnumAnyOrder(dataParm).then(res => {
let newd = transformData(res, enumNames)
this.enumsData = newd[0];
//
this.enumsText = newd[1]
this.loadData();
})
}, },
loadData() { loadData() {
const orgId = uni.getStorageSync('orgId') const orgId = uni.getStorageSync('orgId')

View File

@ -10,15 +10,15 @@
</view> </view>
<view style="font-size: 15px; font-weight: bold;color: #3d4b70;margin-bottom: 10px;">基本信息填写</view> <view style="font-size: 15px; font-weight: bold;color: #3d4b70;margin-bottom: 10px;">基本信息填写</view>
<u-form-item required label="生产单元:" prop="Product_Unit" > <u-form-item required label="生产单元:" prop="Product_Unit">
<u--input v-model="model.Product_Unit" disabled disabledColor="#ffffff" border="none" inputAlign="right" fontSize="14px"> <u--input v-model="model.Product_Unit" disabled disabledColor="#ffffff" border="none" inputAlign="right" fontSize="14px">
</u--input> </u--input>
<!-- <u-icon style="margin-left: 4px;" slot="right" name="arrow-down" size="12"> <!-- <u-icon style="margin-left: 4px;" slot="right" name="arrow-down" size="12">
</u-icon> --> </u-icon> -->
</u-form-item> </u-form-item>
<u-form-item required label="检查内容:"> <u-form-item required label="检查内容:">
</u-form-item> </u-form-item>
<u-textarea v-model="model.CHECKCONTENT" disabled> <u-textarea v-model="model.CHECKCONTENT" disabled>
</u-textarea> </u-textarea>
</u--form> </u--form>
<u--form labelWidth="auto" :model="model" ref="wForm" class="sub-form"> <u--form labelWidth="auto" :model="model" ref="wForm" class="sub-form">
@ -103,7 +103,8 @@
extendIgnoreDataRule, extendIgnoreDataRule,
guid, guid,
initFilter, initFilter,
initFilterGroup initFilterGroup,
transformData
} from '../../../../utils/common' } from '../../../../utils/common'
import { import {
FMProductionUnit, FMProductionUnit,
@ -125,7 +126,8 @@
import stepTitle from '@/components/custom/step-title.vue' import stepTitle from '@/components/custom/step-title.vue'
import swipeActionItem from '../../../../uni_modules/uview-ui/libs/config/props/swipeActionItem'; import swipeActionItem from '../../../../uni_modules/uview-ui/libs/config/props/swipeActionItem';
import { import {
getEnum getEnum,
GetEnumAnyOrder
} from '../../../../services/common'; } from '../../../../services/common';
export default { export default {
components: { components: {
@ -230,46 +232,17 @@
}, },
methods: { methods: {
async fetchEnums(enumNames) { fetchEnums(enumNames) {
try { var dataParm = {
// Promise 'name': enumNames.join('|')
const enumPromises = enumNames.map(name => {
return getEnum({
name
}).then(res => {
// name/code便
return {
enumName: name,
data: res.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'
});
} }
GetEnumAnyOrder(dataParm).then(res => {
let newd = transformData(res, enumNames)
this.enumsData = newd[0];
//
this.enumsText = newd[1]
this.loadData();
})
}, },
getNotNew() { getNotNew() {
const orgId = uni.getStorageSync('orgId') const orgId = uni.getStorageSync('orgId')

View File

@ -346,7 +346,8 @@
initFilter, initFilter,
initFilterGroup, initFilterGroup,
handleOriginalArray, handleOriginalArray,
extendFilterGroupGroupRules extendFilterGroupGroupRules,
transformData
} from '../../../../utils/common' } from '../../../../utils/common'
import { import {
FMProductionUnit, FMProductionUnit,
@ -384,7 +385,8 @@
import swipeActionItem from '../../../../uni_modules/uview-ui/libs/config/props/swipeActionItem'; import swipeActionItem from '../../../../uni_modules/uview-ui/libs/config/props/swipeActionItem';
import formItem from '../../../../uni_modules/uview-ui/libs/config/props/formItem'; import formItem from '../../../../uni_modules/uview-ui/libs/config/props/formItem';
import { import {
getEnum getEnum,
GetEnumAnyOrder
} from '../../../../services/common'; } from '../../../../services/common';
export default { export default {
components: { components: {
@ -493,45 +495,17 @@
this.fetchEnums(['SKHiddenLevel', 'SKProductionUnit', 'SKEvaluateLevelEnum', 'SKPLANCHECKFREQUENCYEnum', 'SKDepartmentTypeEnum']); this.fetchEnums(['SKHiddenLevel', 'SKProductionUnit', 'SKEvaluateLevelEnum', 'SKPLANCHECKFREQUENCYEnum', 'SKDepartmentTypeEnum']);
}, },
methods: { methods: {
async fetchEnums(enumNames) { fetchEnums(enumNames) {
try { var dataParm = {
// Promise 'name': enumNames.join('|')
const enumPromises = enumNames.map(name => {
return getEnum({
name
}).then(res => {
// name/code便
return {
enumName: name,
data: res.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'
});
} }
GetEnumAnyOrder(dataParm).then(res => {
let newd = transformData(res, enumNames)
this.enumsData = newd[0];
//
this.enumsText = newd[1]
this.loadData();
})
}, },
loadData() { loadData() {
// const json = {} // const json = {}
@ -1071,8 +1045,8 @@
this.nowName == 'Dep' || this.nowName == 'RecDep' || this.nowName == 'CheckThreeDep' ? this.nowName == 'Dep' || this.nowName == 'RecDep' || this.nowName == 'CheckThreeDep' ?
GetDepartmentInfo : this.nowName == 'RiskName' ? GetRiskNameInfo : getUserLists GetDepartmentInfo : this.nowName == 'RiskName' ? GetRiskNameInfo : getUserLists
if (this.nowName == 'CheckThreeType') { if (this.nowName == 'CheckThreeType') {
if (this.model.Nav_DoubleDetails[this.nowIndex[0]].MineType !== undefined&&this.model.Nav_DoubleDetails[this.nowIndex[0]].MineType !== null) { if (this.model.Nav_DoubleDetails[this.nowIndex[0]].MineType !== undefined && this.model.Nav_DoubleDetails[this.nowIndex[0]].MineType !== null) {
extendRule(json, 'MineType', 1, String(this.model.Nav_DoubleDetails[this.nowIndex[0]].MineType )); extendRule(json, 'MineType', 1, String(this.model.Nav_DoubleDetails[this.nowIndex[0]].MineType));
} }
} }

View File

@ -273,7 +273,8 @@
guid, guid,
initFilter, initFilter,
initFilterGroup, initFilterGroup,
handleOriginalArray handleOriginalArray,
transformData
} from '../../../../utils/common' } from '../../../../utils/common'
import { import {
FMProductionUnit, FMProductionUnit,
@ -286,7 +287,8 @@
MineTypeName MineTypeName
} from '../../../../utils/enums.js' } from '../../../../utils/enums.js'
import { import {
getEnum getEnum,
GetEnumAnyOrder
} from '../../../../services/common'; } from '../../../../services/common';
import { import {
DouPreGet, DouPreGet,
@ -430,48 +432,20 @@
...this.$store.state.auditModel, ...this.$store.state.auditModel,
TaskID: option.taskID ? option.taskID : '' TaskID: option.taskID ? option.taskID : ''
} }
this.fetchEnums(['SKHiddenLevel', 'SKProductionUnit', 'SKEvaluateLevelEnum', 'SKPLANCHECKFREQUENCYEnum', 'SKDepartmentTypeEnum']); this.fetchEnums(['SKHiddenLevel', 'SKProductionUnit', 'SKEvaluateLevelEnum', 'SKPLANCHECKFREQUENCYEnum', 'SKDepartmentTypeEnum']);
}, },
methods: { methods: {
async fetchEnums(enumNames) { fetchEnums(enumNames) {
try { var dataParm = {
// Promise 'name': enumNames.join('|')
const enumPromises = enumNames.map(name => {
return getEnum({
name
}).then(res => {
// name/code便
return {
enumName: name,
data: res.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'
});
} }
GetEnumAnyOrder(dataParm).then(res => {
let newd = transformData(res, enumNames)
this.enumsData = newd[0];
//
this.enumsText = newd[1]
this.loadData();
})
}, },
loadData() { loadData() {
// const json = {} // const json = {}
@ -550,8 +524,10 @@
} }
if (item2.Nav_DetailMeasureContentPosts && item2.Nav_DetailMeasureContentPosts.length > 0) { if (item2.Nav_DetailMeasureContentPosts && item2.Nav_DetailMeasureContentPosts.length > 0) {
item2.Nav_DetailMeasureContentPosts.map(item3 => { item2.Nav_DetailMeasureContentPosts.map(item3 => {
item3.CHECK_CYCLEName = item3.CHECK_CYCLE !== undefined ? this.enumsData['SKPLANCHECKFREQUENCYEnum'].find(item4 => item4.code === item3.CHECK_CYCLE).name : ''; item3.CHECK_CYCLEName = item3.CHECK_CYCLE !== undefined ? this.enumsData['SKPLANCHECKFREQUENCYEnum'].find(item4 => item4.code === item3
item3.CHECK_TYPEName = item3.CHECK_TYPE !== undefined ? this.enumsData['SKDepartmentTypeEnum'].find(item4 => item4.code === item3.CHECK_TYPE).name : ''; .CHECK_CYCLE).name : '';
item3.CHECK_TYPEName = item3.CHECK_TYPE !== undefined ? this.enumsData['SKDepartmentTypeEnum'].find(item4 => item4.code === item3
.CHECK_TYPE).name : '';
if (item3.Nav_DetailPosts && item3.Nav_DetailPosts.length > 0) { if (item3.Nav_DetailPosts && item3.Nav_DetailPosts.length > 0) {
let areaShow = '' let areaShow = ''
item3.Nav_DetailPosts.map(o => { // item3.Nav_DetailPosts.map(o => { //
@ -568,7 +544,8 @@
item3.Nav_Question = item3.Nav_Question ? item3.Nav_Question : { item3.Nav_Question = item3.Nav_Question ? item3.Nav_Question : {
DESCREPTION: '' DESCREPTION: ''
}, },
item3.HIDDEN_LEVELName = item3.HIDDEN_LEVEL !== undefined ? this.enumsData['SKHiddenLevel'].find(item4 => item4.code === item3.HIDDEN_LEVEL).name : ''; item3.HIDDEN_LEVELName = item3.HIDDEN_LEVEL !== undefined ? this.enumsData['SKHiddenLevel'].find(item4 => item4.code === item3
.HIDDEN_LEVEL).name : '';
}) })
} }

View File

@ -55,7 +55,8 @@
extendIgnoreDataRule, extendIgnoreDataRule,
guid, guid,
initFilter, initFilter,
initFilterGroup initFilterGroup,
transformData
} from '../../../../utils/common' } from '../../../../utils/common'
import { import {
FMProductionUnit, FMProductionUnit,
@ -75,10 +76,11 @@
import config from '../../../../config/common.js' import config from '../../../../config/common.js'
import stepTitle from '@/components/custom/step-title.vue' import stepTitle from '@/components/custom/step-title.vue'
import { import {
getEnum getEnum,
GetEnumAnyOrder
} from '../../../../services/common'; } from '../../../../services/common';
export default { export default {
components: { components: {
stepTitle, stepTitle,
}, },
data() { data() {
@ -150,7 +152,7 @@
ID: guid(), ID: guid(),
ORG_ID: this.ORG_ID, ORG_ID: this.ORG_ID,
IMG_FILE_ID: option.IMG_FILE_ID, IMG_FILE_ID: option.IMG_FILE_ID,
name: this.thisRiskUp[0].tempFiles[0].name||'附件', name: this.thisRiskUp[0].tempFiles[0].name || '附件',
path: this.thisRiskUp[0].tempFiles[0].path, path: this.thisRiskUp[0].tempFiles[0].path,
size: this.thisRiskUp[0].tempFiles[0].size, size: this.thisRiskUp[0].tempFiles[0].size,
remoteId: option.IMG_FILE_ID, remoteId: option.IMG_FILE_ID,
@ -171,7 +173,7 @@
IMG_FILE_ID: i.IMG_FILE_ID, IMG_FILE_ID: i.IMG_FILE_ID,
ID: guid(), ID: guid(),
ORG_ID: this.ORG_ID, ORG_ID: this.ORG_ID,
name: i.tempFiles[0].name||'附件', name: i.tempFiles[0].name || '附件',
path: i.tempFiles[0].path, path: i.tempFiles[0].path,
size: i.tempFiles[0].size, size: i.tempFiles[0].size,
remoteId: i.IMG_FILE_ID, remoteId: i.IMG_FILE_ID,
@ -186,45 +188,17 @@
} }
}, },
methods: { methods: {
async fetchEnums(enumNames) { fetchEnums(enumNames) {
try { var dataParm = {
// Promise 'name': enumNames.join('|')
const enumPromises = enumNames.map(name => {
return getEnum({
name
}).then(res => {
// name/code便
return {
enumName: name,
data: res.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'
});
} }
GetEnumAnyOrder(dataParm).then(res => {
let newd = transformData(res, enumNames)
this.enumsData = newd[0];
//
this.enumsText = newd[1]
this.loadData();
})
}, },
loadData() { loadData() {
if (this.ID == undefined || this.ID == '') { if (this.ID == undefined || this.ID == '') {

View File

@ -70,7 +70,8 @@
import { import {
initFilter, initFilter,
extendRule, extendRule,
extendInclude extendInclude,
transformData
} from '../../../../utils/common' } from '../../../../utils/common'
import { import {
MineTypeIndex, MineTypeIndex,
@ -80,7 +81,8 @@
GetHiddenHandelListInfo GetHiddenHandelListInfo
} from '../../../../services/apply/subPages/SK/SKServices.js' } from '../../../../services/apply/subPages/SK/SKServices.js'
import { import {
getEnum getEnum,
GetEnumAnyOrder
} from '../../../../services/common'; } from '../../../../services/common';
import UniSearchBar from '../../../../uni_modules/uni-search-bar/components/uni-search-bar/uni-search-bar.vue' import UniSearchBar from '../../../../uni_modules/uni-search-bar/components/uni-search-bar/uni-search-bar.vue'
export default { export default {
@ -114,45 +116,17 @@
}, },
methods: { methods: {
async fetchEnums(enumNames) { fetchEnums(enumNames) {
try { var dataParm = {
// Promise 'name': enumNames.join('|')
const enumPromises = enumNames.map(name => {
return getEnum({
name
}).then(res => {
// name/code便
return {
enumName: name,
data: res.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'
});
} }
GetEnumAnyOrder(dataParm).then(res => {
let newd = transformData(res, enumNames)
this.enumsData = newd[0];
//
this.enumsText = newd[1]
this.loadData();
})
}, },
handleSearch() { handleSearch() {
this.pageIndex = 0 this.pageIndex = 0

View File

@ -60,7 +60,8 @@
extendIgnoreDataRule, extendIgnoreDataRule,
guid, guid,
initFilter, initFilter,
initFilterGroup initFilterGroup,
transformData
} from '../../../../utils/common' } from '../../../../utils/common'
import { import {
MineTypeIndex, MineTypeIndex,
@ -71,7 +72,8 @@
} from '../../../../services/apply/subPages/SK/SKServices.js' } from '../../../../services/apply/subPages/SK/SKServices.js'
import stepTitle from '@/components/custom/step-title.vue' import stepTitle from '@/components/custom/step-title.vue'
import { import {
getEnum getEnum,
GetEnumAnyOrder
} from '../../../../services/common'; } from '../../../../services/common';
export default { export default {
components: { components: {
@ -116,49 +118,20 @@
this.model.ID = option.ID ? option.ID : ''; this.model.ID = option.ID ? option.ID : '';
this.tableKey = option.tableKey ? option.tableKey : '0' this.tableKey = option.tableKey ? option.tableKey : '0'
this.isAudit = option.isAudit this.isAudit = option.isAudit
this.fetchEnums(['SKProductionUnit' this.fetchEnums(['SKProductionUnit']);
]);
}, },
methods: { methods: {
async fetchEnums(enumNames) { fetchEnums(enumNames) {
try { var dataParm = {
// Promise 'name': enumNames.join('|')
const enumPromises = enumNames.map(name => {
return getEnum({
name
}).then(res => {
// name/code便
return {
enumName: name,
data: res.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'
});
} }
GetEnumAnyOrder(dataParm).then(res => {
let newd = transformData(res, enumNames)
this.enumsData = newd[0];
//
this.enumsText = newd[1]
this.loadData();
})
}, },
loadData() { loadData() {
const orgId = uni.getStorageSync('orgId') const orgId = uni.getStorageSync('orgId')
@ -174,10 +147,10 @@
GetHandRiskReportRecord(json).then(res => { GetHandRiskReportRecord(json).then(res => {
this.isLoadOK = true this.isLoadOK = true
this.model = res this.model = res
this.model.Product_Unit = res.MineType!==undefined ? this.enumsData['SKProductionUnit'].find(item => item.code === res.MineType).name : ''; this.model.Product_Unit = res.MineType !== undefined ? this.enumsData['SKProductionUnit'].find(item => item.code === res.MineType).name : '';
this.stepsPage = res.STATUS == 0 ? 0 : 1 this.stepsPage = res.STATUS == 0 ? 0 : 1
}) })
}, },

View File

@ -84,7 +84,8 @@
extendIgnoreDataRule, extendIgnoreDataRule,
guid, guid,
initFilter, initFilter,
initFilterGroup initFilterGroup,
transformData
} from '../../../../utils/common' } from '../../../../utils/common'
import { import {
FMProductionUnit, FMProductionUnit,
@ -101,7 +102,8 @@
} from '../../../../services/apply/subPages/SK/SKServices.js' } from '../../../../services/apply/subPages/SK/SKServices.js'
import stepTitle from '@/components/custom/step-title.vue' import stepTitle from '@/components/custom/step-title.vue'
import { import {
getEnum getEnum,
GetEnumAnyOrder
} from '../../../../services/common'; } from '../../../../services/common';
export default { export default {
components: { components: {
@ -187,45 +189,17 @@
// this.loadData() // this.loadData()
}, },
methods: { methods: {
async fetchEnums(enumNames) { fetchEnums(enumNames) {
try { var dataParm = {
// Promise 'name': enumNames.join('|')
const enumPromises = enumNames.map(name => {
return getEnum({
name
}).then(res => {
// name/code便
return {
enumName: name,
data: res.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'
});
} }
GetEnumAnyOrder(dataParm).then(res => {
let newd = transformData(res, enumNames)
this.enumsData = newd[0];
//
this.enumsText = newd[1]
this.loadData();
})
}, },
loadData() { loadData() {
if (this.ID == undefined || this.ID == '') { if (this.ID == undefined || this.ID == '') {
@ -336,7 +310,7 @@
handleSelectedArea(val) { handleSelectedArea(val) {
// this.model = val // this.model = val
this.model.MineType = val.MineType this.model.MineType = val.MineType
this.model.Product_Unit = val.MineType!==undefined?this.enumsData['SKProductionUnit'].find(item => item.code === val.MineType).name:''; this.model.Product_Unit = val.MineType !== undefined ? this.enumsData['SKProductionUnit'].find(item => item.code === val.MineType).name : '';
this.model.HIDDEN_DANGER_RECTIFY_RECORD_ID = val.ID this.model.HIDDEN_DANGER_RECTIFY_RECORD_ID = val.ID
this.model.CODE = val.CODE this.model.CODE = val.CODE
this.model.Nav_RectifyPhotoas = val.Nav_RectifyPhotoas ? val.Nav_RectifyPhotoas : [] this.model.Nav_RectifyPhotoas = val.Nav_RectifyPhotoas ? val.Nav_RectifyPhotoas : []
@ -345,7 +319,7 @@
this.model.HIDDEN_PLACE = val.HIDDEN_PLACE this.model.HIDDEN_PLACE = val.HIDDEN_PLACE
this.model.HIDDEN_LEVEL = val.HIDDEN_LEVEL this.model.HIDDEN_LEVEL = val.HIDDEN_LEVEL
this.model.RECITIFY_TIME = uni.$u.timeFormat(val.RECITIFY_TIME, 'yyyy-mm-dd') this.model.RECITIFY_TIME = uni.$u.timeFormat(val.RECITIFY_TIME, 'yyyy-mm-dd')
this.model.HIDDEN_LEVELName =val.HIDDEN_LEVEL!==undefined? this.enumsData['SKHiddenLevel'].find(item => item.code === val.HIDDEN_LEVEL).name:''; this.model.HIDDEN_LEVELName = val.HIDDEN_LEVEL !== undefined ? this.enumsData['SKHiddenLevel'].find(item => item.code === val.HIDDEN_LEVEL).name : '';
this.showPopupArea = false this.showPopupArea = false
}, },

View File

@ -70,7 +70,8 @@
import { import {
initFilter, initFilter,
extendRule, extendRule,
extendInclude extendInclude,
transformData
} from '../../../../utils/common' } from '../../../../utils/common'
import { import {
MineTypeIndex, MineTypeIndex,
@ -80,7 +81,8 @@
GetDelayListInfo GetDelayListInfo
} from '../../../../services/apply/subPages/SK/SKServices.js' } from '../../../../services/apply/subPages/SK/SKServices.js'
import { import {
getEnum getEnum,
GetEnumAnyOrder
} from '../../../../services/common'; } from '../../../../services/common';
import UniSearchBar from '../../../../uni_modules/uni-search-bar/components/uni-search-bar/uni-search-bar.vue' import UniSearchBar from '../../../../uni_modules/uni-search-bar/components/uni-search-bar/uni-search-bar.vue'
export default { export default {
@ -114,45 +116,17 @@
}, },
methods: { methods: {
async fetchEnums(enumNames) { fetchEnums(enumNames) {
try { var dataParm = {
// Promise 'name': enumNames.join('|')
const enumPromises = enumNames.map(name => {
return getEnum({
name
}).then(res => {
// name/code便
return {
enumName: name,
data: res.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'
});
} }
GetEnumAnyOrder(dataParm).then(res => {
let newd = transformData(res, enumNames)
this.enumsData = newd[0];
//
this.enumsText = newd[1]
this.loadData();
})
}, },
handleSearch() { handleSearch() {
this.pageIndex = 0 this.pageIndex = 0
@ -209,7 +183,7 @@
const newRes = (res.Data || []).map(i => { const newRes = (res.Data || []).map(i => {
return { return {
...i, ...i,
title: i.Nav_RectifyRecord&&i.Nav_RectifyRecord.Nav_RiskArea ? i.Nav_RectifyRecord.Nav_RiskArea.NAME : '', title: i.Nav_RectifyRecord && i.Nav_RectifyRecord.Nav_RiskArea ? i.Nav_RectifyRecord.Nav_RiskArea.NAME : '',
STATUS: i.STATUS !== undefined ? this.enumsData['PFStandardStatus'].find(item => item.code === i.STATUS).name : '' STATUS: i.STATUS !== undefined ? this.enumsData['PFStandardStatus'].find(item => item.code === i.STATUS).name : ''
} }
}) })

View File

@ -81,7 +81,7 @@
<u-icon style="margin-left: 4px;" slot="right" name="arrow-down" size="12"> <u-icon style="margin-left: 4px;" slot="right" name="arrow-down" size="12">
</u-icon> </u-icon>
</u-form-item> </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="handleShowSheetForArea(item,{title: '隐患描述', name: 'Nav_Question'})">
<u-icon style="margin-left: 4px;" slot="right" name="arrow-down" size="12"> <u-icon style="margin-left: 4px;" slot="right" name="arrow-down" size="12">
</u-icon> </u-icon>
</u-form-item> </u-form-item>
@ -102,7 +102,7 @@
</u--input> </u--input>
</u-form-item> </u-form-item>
<u-form-item label="整改期限" prop="HIDDEN_PLACE" @click="showCheckDate(2,item)"> <u-form-item label="整改期限" prop="HIDDEN_PLACE" @click="showCheckDate(2,item)">
<u--input v-model="item.RECITIFY_TIME" placeholder="请选择整改期限" disabled disabledColor="#ffffff" inputAlign="right" fontSize="14px" border="none"> <u--input v-model="item.RECITIFY_TIME" placeholder="请选择整改期限" disabled disabledColor="#ffffff" inputAlign="right" fontSize="14px" border="none">
</u--input> </u--input>
<u-icon style="margin-left: 4px;" slot="right" name="arrow-down" size="12"> <u-icon style="margin-left: 4px;" slot="right" name="arrow-down" size="12">
@ -163,7 +163,8 @@
guid, guid,
initFilter, initFilter,
initFilterGroup, initFilterGroup,
getRealIndex getRealIndex,
transformData
} from '../../../../utils/common' } from '../../../../utils/common'
import { import {
FMProductionUnit, FMProductionUnit,
@ -188,7 +189,8 @@
import stepTitle from '@/components/custom/step-title.vue' import stepTitle from '@/components/custom/step-title.vue'
import swipeActionItem from '../../../../uni_modules/uview-ui/libs/config/props/swipeActionItem'; import swipeActionItem from '../../../../uni_modules/uview-ui/libs/config/props/swipeActionItem';
import { import {
getEnum getEnum,
GetEnumAnyOrder
} from '../../../../services/common'; } from '../../../../services/common';
export default { export default {
components: { components: {
@ -351,45 +353,17 @@
this.fetchEnums(['SKProductionUnit', 'SKPLANCHECKFREQUENCYEnum', 'SKDepartmentTypeEnum', 'SKHiddenLevel']); this.fetchEnums(['SKProductionUnit', 'SKPLANCHECKFREQUENCYEnum', 'SKDepartmentTypeEnum', 'SKHiddenLevel']);
}, },
methods: { methods: {
async fetchEnums(enumNames) { fetchEnums(enumNames) {
try { var dataParm = {
// Promise 'name': enumNames.join('|')
const enumPromises = enumNames.map(name => {
return getEnum({
name
}).then(res => {
// name/code便
return {
enumName: name,
data: res.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'
});
} }
GetEnumAnyOrder(dataParm).then(res => {
let newd = transformData(res, enumNames)
this.enumsData = newd[0];
//
this.enumsText = newd[1]
this.loadData();
})
}, },
loadData() { loadData() {
// this.getCheckType() // this.getCheckType()
@ -641,9 +615,9 @@
NAME: '' NAME: ''
}, },
RISK_AREA_ID: '', RISK_AREA_ID: '',
CHECK_QUESTION_ID:'', CHECK_QUESTION_ID: '',
IMPLEMENT_USER_ID:'', IMPLEMENT_USER_ID: '',
ACCEPT_USER_ID:'', ACCEPT_USER_ID: '',
}) })
this.model.Nav_RectifyDetails = [...this.model.Nav_RectifyDetails] this.model.Nav_RectifyDetails = [...this.model.Nav_RectifyDetails]
}, },
@ -661,21 +635,21 @@
}, },
submit() { submit() {
for (let item of this.model.Nav_RectifyDetails) { for (let item of this.model.Nav_RectifyDetails) {
if (!item.Nav_RiskArea||!item.Nav_RiskArea.NAME) { if (!item.Nav_RiskArea || !item.Nav_RiskArea.NAME) {
uni.showToast({ uni.showToast({
title: '请选择检查区域', title: '请选择检查区域',
icon: 'none' icon: 'none'
}) })
return return
} }
if (!item.Nav_ImplementUser||!item.Nav_ImplementUser.NAME) { if (!item.Nav_ImplementUser || !item.Nav_ImplementUser.NAME) {
uni.showToast({ uni.showToast({
title: '请选择整改落实人', title: '请选择整改落实人',
icon: 'none' icon: 'none'
}) })
return return
} }
if (!item.Nav_AcceptUser||!item.Nav_AcceptUser.NAME) { if (!item.Nav_AcceptUser || !item.Nav_AcceptUser.NAME) {
uni.showToast({ uni.showToast({
title: '请选择验收人', title: '请选择验收人',
icon: 'none' icon: 'none'
@ -689,11 +663,11 @@
}) })
return return
} }
} }
this.modelEdit = JSON.parse(JSON.stringify(this.model)) this.modelEdit = JSON.parse(JSON.stringify(this.model))
delete this.modelEdit.Nav_ApplyDepartment delete this.modelEdit.Nav_ApplyDepartment
delete this.modelEdit.Nav_ApplyUser delete this.modelEdit.Nav_ApplyUser
@ -715,7 +689,7 @@
} }
if (this.modelEdit.ORG_ID == null || this.modelEdit.ORG_ID == '') if (this.modelEdit.ORG_ID == null || this.modelEdit.ORG_ID == '')
this.modelEdit.ORG_ID = this.ORG_ID this.modelEdit.ORG_ID = this.ORG_ID
this.modelEdit.PUBLISH = 'SaveAndNotify' this.modelEdit.PUBLISH = 'SaveAndNotify'
// console.log(this.modelEdit,'9999') // console.log(this.modelEdit,'9999')
DangerRectifyFullUpdate(this.modelEdit).then(res => { DangerRectifyFullUpdate(this.modelEdit).then(res => {

View File

@ -70,7 +70,8 @@
import { import {
initFilter, initFilter,
extendRule, extendRule,
extendInclude extendInclude,
transformData
} from '../../../../utils/common' } from '../../../../utils/common'
import { import {
MineTypeIndex, MineTypeIndex,
@ -80,7 +81,8 @@
GetRectifyListInfo GetRectifyListInfo
} from '../../../../services/apply/subPages/SK/SKServices.js' } from '../../../../services/apply/subPages/SK/SKServices.js'
import { import {
getEnum getEnum,
GetEnumAnyOrder
} from '../../../../services/common'; } from '../../../../services/common';
import UniSearchBar from '../../../../uni_modules/uni-search-bar/components/uni-search-bar/uni-search-bar.vue' import UniSearchBar from '../../../../uni_modules/uni-search-bar/components/uni-search-bar/uni-search-bar.vue'
export default { export default {
@ -114,45 +116,17 @@
}, },
methods: { methods: {
async fetchEnums(enumNames) { fetchEnums(enumNames) {
try { var dataParm = {
// Promise 'name': enumNames.join('|')
const enumPromises = enumNames.map(name => {
return getEnum({
name
}).then(res => {
// name/code便
return {
enumName: name,
data: res.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'
});
} }
GetEnumAnyOrder(dataParm).then(res => {
let newd = transformData(res, enumNames)
this.enumsData = newd[0];
//
this.enumsText = newd[1]
this.loadData();
})
}, },
handleSearch() { handleSearch() {
this.pageIndex = 0 this.pageIndex = 0

View File

@ -124,7 +124,8 @@
extendIgnoreDataRule, extendIgnoreDataRule,
guid, guid,
initFilter, initFilter,
initFilterGroup initFilterGroup,
transformData
} from '../../../../utils/common' } from '../../../../utils/common'
import { import {
FMProductionUnit, FMProductionUnit,
@ -148,7 +149,8 @@
import stepTitle from '@/components/custom/step-title.vue' import stepTitle from '@/components/custom/step-title.vue'
import swipeActionItem from '../../../../uni_modules/uview-ui/libs/config/props/swipeActionItem'; import swipeActionItem from '../../../../uni_modules/uview-ui/libs/config/props/swipeActionItem';
import { import {
getEnum getEnum,
GetEnumAnyOrder
} from '../../../../services/common'; } from '../../../../services/common';
export default { export default {
components: { components: {
@ -241,45 +243,17 @@
this.fetchEnums(['SKProductionUnit', 'SKHiddenLevel', 'SKAcceptResultEnum']); this.fetchEnums(['SKProductionUnit', 'SKHiddenLevel', 'SKAcceptResultEnum']);
}, },
methods: { methods: {
async fetchEnums(enumNames) { fetchEnums(enumNames) {
try { var dataParm = {
// Promise 'name': enumNames.join('|')
const enumPromises = enumNames.map(name => {
return getEnum({
name
}).then(res => {
// name/code便
return {
enumName: name,
data: res.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'
});
} }
GetEnumAnyOrder(dataParm).then(res => {
let newd = transformData(res, enumNames)
this.enumsData = newd[0];
//
this.enumsText = newd[1]
this.loadData();
})
}, },
loadData() { loadData() {
// const json = {} // const json = {}
@ -433,7 +407,7 @@
if (p.val) { if (p.val) {
extendRule(json, 'NAME', 9, p.val); extendRule(json, 'NAME', 9, p.val);
} }
// extendRule(json, 'DEVICE_STATUS', 1, '1'); // extendRule(json, 'DEVICE_STATUS', 1, '1');
dataSelect = await getUserLists(json).then(res => { dataSelect = await getUserLists(json).then(res => {
this.selectorInfo.totalCount = res.TotalCount this.selectorInfo.totalCount = res.TotalCount

View File

@ -70,7 +70,8 @@
import { import {
initFilter, initFilter,
extendRule, extendRule,
extendInclude extendInclude,
transformData
} from '../../../../utils/common' } from '../../../../utils/common'
import { import {
MineTypeIndex, MineTypeIndex,
@ -80,7 +81,8 @@
GetRectifyRecordListInfo GetRectifyRecordListInfo
} from '../../../../services/apply/subPages/SK/SKServices.js' } from '../../../../services/apply/subPages/SK/SKServices.js'
import { import {
getEnum getEnum,
GetEnumAnyOrder
} from '../../../../services/common'; } from '../../../../services/common';
import UniSearchBar from '../../../../uni_modules/uni-search-bar/components/uni-search-bar/uni-search-bar.vue' import UniSearchBar from '../../../../uni_modules/uni-search-bar/components/uni-search-bar/uni-search-bar.vue'
export default { export default {
@ -114,45 +116,17 @@
}, },
methods: { methods: {
async fetchEnums(enumNames) { fetchEnums(enumNames) {
try { var dataParm = {
// Promise 'name': enumNames.join('|')
const enumPromises = enumNames.map(name => {
return getEnum({
name
}).then(res => {
// name/code便
return {
enumName: name,
data: res.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'
});
} }
GetEnumAnyOrder(dataParm).then(res => {
let newd = transformData(res, enumNames)
this.enumsData = newd[0];
//
this.enumsText = newd[1]
this.loadData();
})
}, },
handleSearch() { handleSearch() {
this.pageIndex = 0 this.pageIndex = 0

View File

@ -116,10 +116,12 @@
extendIgnoreDataRule, extendIgnoreDataRule,
guid, guid,
initFilter, initFilter,
initFilterGroup initFilterGroup,
transformData
} from '../../../../utils/common' } from '../../../../utils/common'
import { import {
getEnum getEnum,
GetEnumAnyOrder
} from '../../../../services/common'; } from '../../../../services/common';
import { import {
MineTypeIndex, MineTypeIndex,
@ -170,7 +172,7 @@
ACCEPT_RESULTE: '', ACCEPT_RESULTE: '',
ACCEPT_OPINION: '', ACCEPT_OPINION: '',
}, },
stepsText:['发起', '确认', '审批', '归档'], stepsText: ['发起', '确认', '审批', '归档'],
stepsPage: 0, stepsPage: 0,
stepsPageList: 0, stepsPageList: 0,
TaskID: '', TaskID: '',
@ -197,45 +199,17 @@
this.fetchEnums(['SKProductionUnit', 'SKHiddenLevel', 'SKAcceptResultEnum']); this.fetchEnums(['SKProductionUnit', 'SKHiddenLevel', 'SKAcceptResultEnum']);
}, },
methods: { methods: {
async fetchEnums(enumNames) { fetchEnums(enumNames) {
try { var dataParm = {
// Promise 'name': enumNames.join('|')
const enumPromises = enumNames.map(name => {
return getEnum({
name
}).then(res => {
// name/code便
return {
enumName: name,
data: res.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'
});
} }
GetEnumAnyOrder(dataParm).then(res => {
let newd = transformData(res, enumNames)
this.enumsData = newd[0];
//
this.enumsText = newd[1]
this.loadData();
})
}, },
loadData() { loadData() {
const orgId = uni.getStorageSync('orgId') const orgId = uni.getStorageSync('orgId')

View File

@ -50,69 +50,66 @@
<view style="position: absolute;left: -10px;color: #3d4b70;top: -3px;">*</view> <view style="position: absolute;left: -10px;color: #3d4b70;top: -3px;">*</view>
</view> </view>
<view style="font-size: 15px; font-weight: bold;color: #3d4b70;margin-bottom: 10px;margin-top: 20px;">隐患内容</view> <view style="font-size: 15px; font-weight: bold;color: #3d4b70;margin-bottom: 10px;margin-top: 20px;">隐患内容</view>
<uni-collapse :border="false" accordion> <uni-collapse :border="false" accordion>
<view v-for="(item, index) in model.Nav_RectifyDetails" :key="index"> <view v-for="(item, index) in model.Nav_RectifyDetails" :key="index">
<uni-collapse-item title-border="none" :border="false"> <uni-collapse-item title-border="none" :border="false">
<template v-slot:title> <template v-slot:title>
<view class="uni-collapse-item__title-box"> <view class="uni-collapse-item__title-box">
<view class="uni-collapse-item__title-text"> <view class="uni-collapse-item__title-text">
{{item.Nav_RiskArea?index+1+'.'+item.Nav_RiskArea.NAME:index+1+'.'}} {{item.Nav_RiskArea?index+1+'.'+item.Nav_RiskArea.NAME:index+1+'.'}}
<!-- <span v-if="item.Nav_RecitifyUser && item.Nav_RecitifyUser.NAME"> <!-- <span v-if="item.Nav_RecitifyUser && item.Nav_RecitifyUser.NAME">
{{ item.Nav_RecitifyUser.NAME}} {{ item.Nav_RecitifyUser.NAME}}
</span> --> </span> -->
</view>
</view> </view>
</template>
<view class="content" style="padding-left:10px;">
<u-form-item label="检查区域:" prop="CHECK_TIME">
<u--input disabled v-model="(item.Nav_RiskArea||{}).NAME" disabledColor="#ffffff" border="none" inputAlign="right" fontSize="14px">
</u--input>
</u-form-item>
<u-form-item label="隐患描述:" prop="CHECK_TIME">
</u-form-item>
<u-textarea v-model="(item.Nav_Question||{}).DESCREPTION" disabled v-if="item.Nav_Question">
</u-textarea>
<u-textarea v-model="item.HIDDEN_DESCRIPTION" disabled v-else>
</u-textarea>
<!-- <u--textarea v-model="item.Nav_Question.DESCREPTION" disabled placeholder="请选择隐患描述" maxlength="-1"></u--textarea> -->
<u-form-item label="隐患等级" prop="HIDDEN_LEVEL" border-bottom>
<u--input v-model="item.HIDDEN_LEVELName" disabled disabledColor="#ffffff" inputAlign="right" fontSize="14px" border="none">
</u--input>
</u-form-item>
<u-form-item label="隐患地点" prop="HIDDEN_PLACE" border-bottom>
<u--input v-model="item.HIDDEN_PLACE" disabled disabledColor="#ffffff" inputAlign="right" fontSize="14px" border="none">
</u--input>
</u-form-item>
<u-form-item label="整改措施" prop="HIDDEN_PLACE" border-bottom>
<u--input v-model="item.RECTIFICATION_MEASURES" disabled disabledColor="#ffffff" inputAlign="right" fontSize="14px" border="none">
</u--input>
</u-form-item>
<u-form-item label="整改期限" prop="HIDDEN_PLACE">
<u--input v-model="item.RECITIFY_TIME" disabled disabledColor="#ffffff" inputAlign="right" fontSize="14px" border="none">
</u--input>
</u-form-item>
<u-form-item label="整改落实人" prop="HIDDEN_PLACE" border-bottom>
<u--input v-model="(item.Nav_ImplementUser||{}).NAME" disabled disabledColor="#ffffff" inputAlign="right" fontSize="14px" border="none">
</u--input>
</u-form-item>
<u-form-item label="验收人" prop="HIDDEN_PLACE" border-bottom>
<u--input v-model="(item.Nav_AcceptUser||{}).NAME" disabled disabledColor="#ffffff" inputAlign="right" fontSize="14px" border="none">
</u--input>
</u-form-item>
<u-form-item label="隐患照片" prop="CHECKSTANDARD">
</u-form-item>
<full-upload v-model="item.Nav_RectifyDetailFiles" :isShowBtn='false' :listProp='listPropUpload' :listPropVal='listPropValUpload'></full-upload>
</view> </view>
</template>
<view class="content" style="padding-left:10px;">
<u-form-item label="检查区域:" prop="CHECK_TIME" > </uni-collapse-item>
<u--input disabled v-model="(item.Nav_RiskArea||{}).NAME" disabledColor="#ffffff" border="none" inputAlign="right" fontSize="14px"> </view>
</uni-collapse>
</u--input>
</u-form-item>
<u-form-item label="隐患描述:" prop="CHECK_TIME" >
</u-form-item>
<u-textarea v-model="(item.Nav_Question||{}).DESCREPTION" disabled v-if="item.Nav_Question">
</u-textarea>
<u-textarea v-model="item.HIDDEN_DESCRIPTION" disabled v-else>
</u-textarea>
<!-- <u--textarea v-model="item.Nav_Question.DESCREPTION" disabled placeholder="请选择隐患描述" maxlength="-1"></u--textarea> -->
<u-form-item label="隐患等级" prop="HIDDEN_LEVEL" border-bottom>
<u--input v-model="item.HIDDEN_LEVELName" disabled disabledColor="#ffffff" inputAlign="right"
fontSize="14px" border="none">
</u--input>
</u-form-item>
<u-form-item label="隐患地点" prop="HIDDEN_PLACE" border-bottom>
<u--input v-model="item.HIDDEN_PLACE" disabled disabledColor="#ffffff" inputAlign="right" fontSize="14px" border="none">
</u--input>
</u-form-item>
<u-form-item label="整改措施" prop="HIDDEN_PLACE" border-bottom>
<u--input v-model="item.RECTIFICATION_MEASURES" disabled disabledColor="#ffffff" inputAlign="right" fontSize="14px" border="none">
</u--input>
</u-form-item>
<u-form-item label="整改期限" prop="HIDDEN_PLACE" >
<u--input v-model="item.RECITIFY_TIME" disabled disabledColor="#ffffff" inputAlign="right" fontSize="14px" border="none">
</u--input>
</u-form-item>
<u-form-item label="整改落实人" prop="HIDDEN_PLACE" border-bottom>
<u--input v-model="(item.Nav_ImplementUser||{}).NAME" disabled disabledColor="#ffffff"
inputAlign="right" fontSize="14px" border="none">
</u--input>
</u-form-item>
<u-form-item label="验收人" prop="HIDDEN_PLACE" border-bottom>
<u--input v-model="(item.Nav_AcceptUser||{}).NAME" disabled disabledColor="#ffffff"
inputAlign="right" fontSize="14px" border="none">
</u--input>
</u-form-item>
<u-form-item label="隐患照片" prop="CHECKSTANDARD">
</u-form-item>
<full-upload v-model="item.Nav_RectifyDetailFiles" :isShowBtn='false' :listProp='listPropUpload' :listPropVal='listPropValUpload'></full-upload>
</view>
</uni-collapse-item>
</view>
</uni-collapse>
</u--form> </u--form>
<view style="padding: 10px 16px;display: flex;flex-direction: row;" class="bottom-button" v-if="isLoadOK&&tableKey==='1'&&!isAudit"> <view style="padding: 10px 16px;display: flex;flex-direction: row;" class="bottom-button" v-if="isLoadOK&&tableKey==='1'&&!isAudit">
<u-button type="primary" @click="submit" color="#3d4b70">确认</u-button> <u-button type="primary" @click="submit" color="#3d4b70">确认</u-button>
@ -132,7 +129,8 @@
extendIgnoreDataRule, extendIgnoreDataRule,
guid, guid,
initFilter, initFilter,
initFilterGroup initFilterGroup,
transformData
} from '../../../../utils/common' } from '../../../../utils/common'
import { import {
MineTypeIndex, MineTypeIndex,
@ -144,7 +142,8 @@
} from '../../../../services/apply/subPages/SK/SKServices.js' } from '../../../../services/apply/subPages/SK/SKServices.js'
import stepTitle from '@/components/custom/step-title.vue' import stepTitle from '@/components/custom/step-title.vue'
import { import {
getEnum getEnum,
GetEnumAnyOrder
} from '../../../../services/common'; } from '../../../../services/common';
export default { export default {
components: { components: {
@ -200,52 +199,24 @@
}, },
onLoad(option) { onLoad(option) {
this.TaskID = option.taskID ? option.taskID : ''; this.TaskID = option.taskID ? option.taskID : '';
this.ID = option.ID? option.ID:'' this.ID = option.ID ? option.ID : ''
this.model.ID = option.ID ? option.ID : ''; this.model.ID = option.ID ? option.ID : '';
this.tableKey = option.tableKey ? option.tableKey : '0' this.tableKey = option.tableKey ? option.tableKey : '0'
this.isAudit = option.isAudit this.isAudit = option.isAudit
this.fetchEnums(['SKProductionUnit', 'SKPLANCHECKFREQUENCYEnum', 'SKDepartmentTypeEnum', 'SKHiddenLevel']); this.fetchEnums(['SKProductionUnit', 'SKPLANCHECKFREQUENCYEnum', 'SKDepartmentTypeEnum', 'SKHiddenLevel']);
}, },
methods: { methods: {
async fetchEnums(enumNames) { fetchEnums(enumNames) {
try { var dataParm = {
// Promise 'name': enumNames.join('|')
const enumPromises = enumNames.map(name => {
return getEnum({
name
}).then(res => {
// name/code便
return {
enumName: name,
data: res.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'
});
} }
GetEnumAnyOrder(dataParm).then(res => {
let newd = transformData(res, enumNames)
this.enumsData = newd[0];
//
this.enumsText = newd[1]
this.loadData();
})
}, },
loadData() { loadData() {
// const json = {} // const json = {}
@ -291,6 +262,4 @@
<style scoped> <style scoped>
@import url("../../../../style/css/newTemplate.css"); @import url("../../../../style/css/newTemplate.css");
</style> </style>

View File

@ -163,7 +163,8 @@
guid, guid,
initFilter, initFilter,
initFilterGroup, initFilterGroup,
getRealIndex getRealIndex,
transformData
} from '../../../../utils/common' } from '../../../../utils/common'
import { import {
FMProductionUnit, FMProductionUnit,
@ -190,7 +191,8 @@
import stepTitle from '@/components/custom/step-title.vue' import stepTitle from '@/components/custom/step-title.vue'
import swipeActionItem from '../../../../uni_modules/uview-ui/libs/config/props/swipeActionItem'; import swipeActionItem from '../../../../uni_modules/uview-ui/libs/config/props/swipeActionItem';
import { import {
getEnum getEnum,
GetEnumAnyOrder
} from '../../../../services/common'; } from '../../../../services/common';
export default { export default {
components: { components: {
@ -343,45 +345,17 @@
this.fetchEnums(['SKProductionUnit', 'SKPLANCHECKFREQUENCYEnum', 'SKDepartmentTypeEnum', 'SKHiddenLevel']); this.fetchEnums(['SKProductionUnit', 'SKPLANCHECKFREQUENCYEnum', 'SKDepartmentTypeEnum', 'SKHiddenLevel']);
}, },
methods: { methods: {
async fetchEnums(enumNames) { fetchEnums(enumNames) {
try { var dataParm = {
// Promise 'name': enumNames.join('|')
const enumPromises = enumNames.map(name => {
return getEnum({
name
}).then(res => {
// name/code便
return {
enumName: name,
data: res.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'
});
} }
GetEnumAnyOrder(dataParm).then(res => {
let newd = transformData(res, enumNames)
this.enumsData = newd[0];
//
this.enumsText = newd[1]
this.loadData();
})
}, },
loadData() { loadData() {
// const json = {} // const json = {}

View File

@ -70,7 +70,8 @@
import { import {
initFilter, initFilter,
extendRule, extendRule,
extendInclude extendInclude,
transformData
} from '../../../../utils/common' } from '../../../../utils/common'
import { import {
MineTypeIndex, MineTypeIndex,
@ -80,7 +81,8 @@
GetHiddenDangerListInfo GetHiddenDangerListInfo
} from '../../../../services/apply/subPages/SK/SKServices.js' } from '../../../../services/apply/subPages/SK/SKServices.js'
import { import {
getEnum getEnum,
GetEnumAnyOrder
} from '../../../../services/common'; } from '../../../../services/common';
import UniSearchBar from '../../../../uni_modules/uni-search-bar/components/uni-search-bar/uni-search-bar.vue' import UniSearchBar from '../../../../uni_modules/uni-search-bar/components/uni-search-bar/uni-search-bar.vue'
export default { export default {
@ -114,45 +116,17 @@
}, },
methods: { methods: {
async fetchEnums(enumNames) { fetchEnums(enumNames) {
try { var dataParm = {
// Promise 'name': enumNames.join('|')
const enumPromises = enumNames.map(name => {
return getEnum({
name
}).then(res => {
// name/code便
return {
enumName: name,
data: res.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'
});
} }
GetEnumAnyOrder(dataParm).then(res => {
let newd = transformData(res, enumNames)
this.enumsData = newd[0];
//
this.enumsText = newd[1]
this.loadData();
})
}, },
handleSearch() { handleSearch() {
this.pageIndex = 0 this.pageIndex = 0
@ -208,8 +182,8 @@
return { return {
...i, ...i,
title: i.Nav_ApplyDepartment ? i.Nav_ApplyDepartment.NAME : '', title: i.Nav_ApplyDepartment ? i.Nav_ApplyDepartment.NAME : '',
DEPARTMENT_TYPE: i.DEPARTMENT_TYPE!==undefined?this.enumsData['SKDepartmentTypeEnum'].find(item => item.code === i.DEPARTMENT_TYPE).name:'', DEPARTMENT_TYPE: i.DEPARTMENT_TYPE !== undefined ? this.enumsData['SKDepartmentTypeEnum'].find(item => item.code === i.DEPARTMENT_TYPE).name : '',
STATUS: i.STATUS!==undefined?this.enumsData['PFStandardStatus'].find(item => item.code === i.STATUS).name:'' STATUS: i.STATUS !== undefined ? this.enumsData['PFStandardStatus'].find(item => item.code === i.STATUS).name : ''
} }
}) })
if (paginate) { if (paginate) {

View File

@ -125,7 +125,8 @@
extendIgnoreDataRule, extendIgnoreDataRule,
guid, guid,
initFilter, initFilter,
initFilterGroup initFilterGroup,
transformData
} from '../../../../utils/common' } from '../../../../utils/common'
import { import {
FMProductionUnit, FMProductionUnit,
@ -141,7 +142,8 @@
} from '../../../../services/apply/FOServices/FOServices'; } from '../../../../services/apply/FOServices/FOServices';
import stepTitle from '@/components/custom/step-title.vue' import stepTitle from '@/components/custom/step-title.vue'
import { import {
getEnum getEnum,
GetEnumAnyOrder
} from '../../../../services/common'; } from '../../../../services/common';
export default { export default {
components: { components: {
@ -216,45 +218,17 @@
this.fetchEnums(['SKProductionUnit', 'SKPLANCHECKFREQUENCYEnum', 'SKDepartmentTypeEnum', 'SKHiddenLevel']) this.fetchEnums(['SKProductionUnit', 'SKPLANCHECKFREQUENCYEnum', 'SKDepartmentTypeEnum', 'SKHiddenLevel'])
}, },
methods: { methods: {
async fetchEnums(enumNames) { fetchEnums(enumNames) {
try { var dataParm = {
// Promise 'name': enumNames.join('|')
const enumPromises = enumNames.map(name => {
return getEnum({
name
}).then(res => {
// name/code便
return {
enumName: name,
data: res.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'
});
} }
GetEnumAnyOrder(dataParm).then(res => {
let newd = transformData(res, enumNames)
this.enumsData = newd[0];
//
this.enumsText = newd[1]
this.loadData();
})
}, },
loadData() { loadData() {
// const json = {} // const json = {}

View File

@ -166,7 +166,8 @@
guid, guid,
initFilter, initFilter,
initFilterGroup, initFilterGroup,
handleOriginalArray handleOriginalArray,
transformData
} from '../../../../utils/common' } from '../../../../utils/common'
import { import {
FMProductionUnit, FMProductionUnit,
@ -191,7 +192,8 @@
getRequest, getRequest,
} from '../../../../services/apply/FOServices/FOServices'; } from '../../../../services/apply/FOServices/FOServices';
import { import {
getEnum getEnum,
GetEnumAnyOrder
} from '../../../../services/common'; } from '../../../../services/common';
import stepTitle from '@/components/custom/step-title.vue' import stepTitle from '@/components/custom/step-title.vue'
import swipeActionItem from '../../../../uni_modules/uview-ui/libs/config/props/swipeActionItem'; import swipeActionItem from '../../../../uni_modules/uview-ui/libs/config/props/swipeActionItem';
@ -275,45 +277,17 @@
this.fetchEnums(['SKProductionUnit', 'SKEvaluateLevelEnum', 'SKDepartmentTypeEnum']); this.fetchEnums(['SKProductionUnit', 'SKEvaluateLevelEnum', 'SKDepartmentTypeEnum']);
}, },
methods: { methods: {
async fetchEnums(enumNames) { fetchEnums(enumNames) {
try { var dataParm = {
// Promise 'name': enumNames.join('|')
const enumPromises = enumNames.map(name => {
return getEnum({
name
}).then(res => {
// name/code便
return {
enumName: name,
data: res.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'
});
} }
GetEnumAnyOrder(dataParm).then(res => {
let newd = transformData(res, enumNames)
this.enumsData = newd[0];
//
this.enumsText = newd[1]
this.loadData();
})
}, },
loadData() { loadData() {
// const json = {} // const json = {}

View File

@ -12,20 +12,20 @@
<u-form-item label="审核意见:" prop="CONTEXT" borderBottom v-if="model.STATUS==40"> <u-form-item label="审核意见:" prop="CONTEXT" borderBottom v-if="model.STATUS==40">
</u-form-item> </u-form-item>
<u--textarea v-html="model.CONTEXT" border="surround" v-if="model.STATUS==40" disabled></u--textarea> <u--textarea v-html="model.CONTEXT" border="surround" v-if="model.STATUS==40" disabled></u--textarea>
<u-form-item label="评估年度:" prop="YEAR"> <u-form-item label="评估年度:" prop="YEAR">
<u--input v-model="model.YEAR" disabled Color="#ffffff" placeholder="请填写年度" border="none" inputAlign="right" fontSize="14px"> <u--input v-model="model.YEAR" disabled Color="#ffffff" placeholder="请填写年度" border="none" inputAlign="right" fontSize="14px">
</u--input> </u--input>
</u-form-item> </u-form-item>
<!-- <u-form-item label="辨识与评估内容:"> <!-- <u-form-item label="辨识与评估内容:">
</u-form-item> </u-form-item>
<u--textarea v-model="model.CONTENTS" placeholder="请输入内容" autoHeight></u--textarea> --> <u--textarea v-model="model.CONTENTS" placeholder="请输入内容" autoHeight></u--textarea> -->
<u-form-item label="开始时间:" @click="handleChangeRecitify('start')"> <u-form-item label="开始时间:" @click="handleChangeRecitify('start')">
<u--input v-model="model.START_DATE" placeholder="请选择时间" disabled Color="#ffffff" inputAlign="right" fontSize="14px" border="none"> <u--input v-model="model.START_DATE" placeholder="请选择时间" disabled Color="#ffffff" inputAlign="right" fontSize="14px" border="none">
</u--input> </u--input>
<!-- <u-icon style="margin-left: 4px;" slot="right" name="arrow-down" size="12"> <!-- <u-icon style="margin-left: 4px;" slot="right" name="arrow-down" size="12">
</u-icon> --> </u-icon> -->
</u-form-item> </u-form-item>
<u-form-item label="结束时间:" @click="handleChangeRecitify('end')"> <u-form-item label="结束时间:" @click="handleChangeRecitify('end')">
<u--input v-model="model.END_DATE" placeholder="请选择时间" disabled Color="#ffffff" inputAlign="right" fontSize="14px" border="none"> <u--input v-model="model.END_DATE" placeholder="请选择时间" disabled Color="#ffffff" inputAlign="right" fontSize="14px" border="none">
</u--input> </u--input>
<!-- <u-icon style="margin-left: 4px;" slot="right" name="arrow-down" size="12"> <!-- <u-icon style="margin-left: 4px;" slot="right" name="arrow-down" size="12">
@ -213,7 +213,8 @@
guid, guid,
initFilter, initFilter,
initFilterGroup, initFilterGroup,
handleOriginalArray handleOriginalArray,
transformData
} from '../../../../utils/common' } from '../../../../utils/common'
import { import {
FMProductionUnit, FMProductionUnit,
@ -239,7 +240,8 @@
GetScorec GetScorec
} from '../../../../services/apply/subPages/SK/SKServices.js' } from '../../../../services/apply/subPages/SK/SKServices.js'
import { import {
getEnum getEnum,
GetEnumAnyOrder
} from '../../../../services/common'; } from '../../../../services/common';
import { import {
getRequest, getRequest,
@ -302,7 +304,7 @@
}, },
EVALUATE_SCORE: 0, EVALUATE_SCORE: 0,
EVALUATE_LEVEL: '', EVALUATE_LEVEL: '',
EVALUATE_LEVELName:'', EVALUATE_LEVELName: '',
Nav_DetailDeparts: [], Nav_DetailDeparts: [],
Nav_DetailMeasures: [], Nav_DetailMeasures: [],
isShowControl: false, isShowControl: false,
@ -350,45 +352,17 @@
this.fetchEnums(['SKProductionUnit', 'SKEvaluateLevelEnum', 'SKDepartmentTypeEnum']); this.fetchEnums(['SKProductionUnit', 'SKEvaluateLevelEnum', 'SKDepartmentTypeEnum']);
}, },
methods: { methods: {
async fetchEnums(enumNames) { fetchEnums(enumNames) {
try { var dataParm = {
// Promise 'name': enumNames.join('|')
const enumPromises = enumNames.map(name => {
return getEnum({
name
}).then(res => {
// name/code便
return {
enumName: name,
data: res.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'
});
} }
GetEnumAnyOrder(dataParm).then(res => {
let newd = transformData(res, enumNames)
this.enumsData = newd[0];
//
this.enumsText = newd[1]
this.loadData();
})
}, },
loadData() { loadData() {
// const json = {} // const json = {}
@ -449,7 +423,7 @@
this.model.Nav_Details = [...this.model.Nav_Details] this.model.Nav_Details = [...this.model.Nav_Details]
}, },
handleChangeUnit(name,item) { handleChangeUnit(name, item) {
this.comPickerInfo = { this.comPickerInfo = {
showSheet: true, showSheet: true,
columns: [this.enumsText[name]], columns: [this.enumsText[name]],
@ -462,12 +436,12 @@
if (this.comPickerInfo.name == 'SKProductionUnit') { if (this.comPickerInfo.name == 'SKProductionUnit') {
this.comPickerInfo.dataItem.MineTypeName = e.value[0] this.comPickerInfo.dataItem.MineTypeName = e.value[0]
this.comPickerInfo.dataItem.MineType = this.enumsData['SKProductionUnit'][e.indexs[0]].code this.comPickerInfo.dataItem.MineType = this.enumsData['SKProductionUnit'][e.indexs[0]].code
} else if (this.comPickerInfo.name == 'SKEvaluateLevelEnum') { } else if (this.comPickerInfo.name == 'SKEvaluateLevelEnum') {
this.comPickerInfo.dataItem.EVALUATE_LEVELName = e.value[0] this.comPickerInfo.dataItem.EVALUATE_LEVELName = e.value[0]
this.comPickerInfo.dataItem.EVALUATE_LEVEL = this.enumsData['SKEvaluateLevelEnum'][e.indexs[0]].code this.comPickerInfo.dataItem.EVALUATE_LEVEL = this.enumsData['SKEvaluateLevelEnum'][e.indexs[0]].code
}else if (this.comPickerInfo.name == 'SKDepartmentTypeEnum') { } else if (this.comPickerInfo.name == 'SKDepartmentTypeEnum') {
this.comPickerInfo.dataItem.DEPARTMENT_TYPEName = e.value[0] this.comPickerInfo.dataItem.DEPARTMENT_TYPEName = e.value[0]
this.comPickerInfo.dataItem.DEPARTMENT_TYPE = this.enumsData['SKDepartmentTypeEnum'][e.indexs[0]].code this.comPickerInfo.dataItem.DEPARTMENT_TYPE = this.enumsData['SKDepartmentTypeEnum'][e.indexs[0]].code
} }
@ -519,7 +493,7 @@
SCORE: '' SCORE: ''
}, },
EVALUATE_SCORE: 0, EVALUATE_SCORE: 0,
EVALUATE_LEVEL:0, EVALUATE_LEVEL: 0,
EVALUATE_LEVELName: '低风险', EVALUATE_LEVELName: '低风险',
Nav_DetailDeparts: [], Nav_DetailDeparts: [],
Nav_DetailMeasures: [], Nav_DetailMeasures: [],
@ -775,8 +749,9 @@
} else { } else {
this.model.Nav_Details[realIndex].EVALUATE_LEVELName = "低风险"; this.model.Nav_Details[realIndex].EVALUATE_LEVELName = "低风险";
} }
this.model.Nav_Details[realIndex].EVALUATE_LEVEL = this.model.Nav_Details[realIndex].EVALUATE_LEVELName !== undefined ? this.enumsData['SKEvaluateLevelEnum'].find(item1 => item1.name === this.model.Nav_Details[ this.model.Nav_Details[realIndex].EVALUATE_LEVEL = this.model.Nav_Details[realIndex].EVALUATE_LEVELName !== undefined ? this.enumsData['SKEvaluateLevelEnum'].find(item1 => item1.name === this.model
realIndex].EVALUATE_LEVELName).code : '' .Nav_Details[
realIndex].EVALUATE_LEVELName).code : ''
this.$forceUpdate() this.$forceUpdate()
}, },

View File

@ -168,7 +168,8 @@
guid, guid,
initFilter, initFilter,
initFilterGroup, initFilterGroup,
handleOriginalArray handleOriginalArray,
transformData
} from '../../../../utils/common' } from '../../../../utils/common'
import { import {
FMProductionUnit, FMProductionUnit,
@ -190,7 +191,8 @@
GetDepartmentInfo GetDepartmentInfo
} from '../../../../services/apply/subPages/SK/SKServices.js' } from '../../../../services/apply/subPages/SK/SKServices.js'
import { import {
getEnum getEnum,
GetEnumAnyOrder
} from '../../../../services/common'; } from '../../../../services/common';
import { import {
getRequest, getRequest,
@ -278,45 +280,17 @@
this.fetchEnums(['SKProductionUnit', 'SKEvaluateLevelEnum', 'SKDepartmentTypeEnum']); this.fetchEnums(['SKProductionUnit', 'SKEvaluateLevelEnum', 'SKDepartmentTypeEnum']);
}, },
methods: { methods: {
async fetchEnums(enumNames) { fetchEnums(enumNames) {
try { var dataParm = {
// Promise 'name': enumNames.join('|')
const enumPromises = enumNames.map(name => {
return getEnum({
name
}).then(res => {
// name/code便
return {
enumName: name,
data: res.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'
});
} }
GetEnumAnyOrder(dataParm).then(res => {
let newd = transformData(res, enumNames)
this.enumsData = newd[0];
//
this.enumsText = newd[1]
this.loadData();
})
}, },
loadData() { loadData() {
// const json = {} // const json = {}

View File

@ -31,7 +31,7 @@
<u--input v-model="model.HIDDEN_DESCRIPTION" placeholder="请填写隐患描述" disabledColor="#ffffff" inputAlign="right" fontSize="14px" border="none"> <u--input v-model="model.HIDDEN_DESCRIPTION" placeholder="请填写隐患描述" disabledColor="#ffffff" inputAlign="right" fontSize="14px" border="none">
</u--input> </u--input>
</u-form-item> </u-form-item>
<u-form-item required label="隐患照片:" ></u-form-item> <u-form-item required label="隐患照片:"></u-form-item>
<full-upload v-model="model.Nav_Photos" :isShowBtn='true' :listProp='listPropUpload' :listPropVal='listPropValUpload' v-if="model.Nav_Photos"></full-upload> <full-upload v-model="model.Nav_Photos" :isShowBtn='true' :listProp='listPropUpload' :listPropVal='listPropValUpload' v-if="model.Nav_Photos"></full-upload>
</u--form> </u--form>
@ -67,20 +67,20 @@
</u-form-item> </u-form-item>
<u-form-item required label="整改措施:"> <u-form-item required label="整改措施:">
</u-form-item> </u-form-item>
<u--textarea v-model="model.RECTIFICATION_MEASURES" placeholder="请填写整改措施" maxlength="-1"></u--textarea> <u--textarea v-model="model.RECTIFICATION_MEASURES" placeholder="请填写整改措施" maxlength="-1"></u--textarea>
<u-form-item label="检查层级:" prop="Check_Level" @click="handleChange('SKDepartmentTypeEnum')"> <u-form-item label="检查层级:" prop="Check_Level" @click="handleChange('SKDepartmentTypeEnum')">
<u--input v-model="model.DEPARTMENT_TYPEName" disabled disabledColor="#ffffff" placeholder="请选择检查层级" border="none" inputAlign="right" fontSize="14px"> <u--input v-model="model.DEPARTMENT_TYPEName" disabled disabledColor="#ffffff" placeholder="请选择检查层级" border="none" inputAlign="right" fontSize="14px">
</u--input> </u--input>
<u-icon style="margin-left: 4px;" slot="right" name="arrow-down" size="12"> <u-icon style="margin-left: 4px;" slot="right" name="arrow-down" size="12">
</u-icon> </u-icon>
</u-form-item> </u-form-item>
<u-form-item label="检查类型:" prop="Check_Type" @click="handleShowSheet({title: '检查类型', name: 'Nav_CheckType'})"> <u-form-item label="检查类型:" prop="Check_Type" @click="handleShowSheet({title: '检查类型', name: 'Nav_CheckType'})">
<u--input v-model="(model.Nav_CheckType || {}).NAME" disabled disabledColor="#ffffff" placeholder="请选择检查类型" border="none" inputAlign="right" fontSize="14px"></u--input> <u--input v-model="(model.Nav_CheckType || {}).NAME" disabled disabledColor="#ffffff" placeholder="请选择检查类型" border="none" inputAlign="right" fontSize="14px"></u--input>
<u-icon style="margin-left: 4px;" slot="right" name="arrow-down" size="12"> <u-icon style="margin-left: 4px;" slot="right" name="arrow-down" size="12">
</u-icon> </u-icon>
</u-form-item> </u-form-item>
<u-form-item label="检查周期:" prop="Check_Period" @click="handleChange('SKPLANCHECKFREQUENCYEnum')"> <u-form-item label="检查周期:" prop="Check_Period" @click="handleChange('SKPLANCHECKFREQUENCYEnum')">
<u--input v-model="model.PLANCHECKFREQUENCYName" disabled disabledColor="#ffffff" placeholder="请选择检查周期" border="none" inputAlign="right" fontSize="14px"></u--input> <u--input v-model="model.PLANCHECKFREQUENCYName" disabled disabledColor="#ffffff" placeholder="请选择检查周期" border="none" inputAlign="right" fontSize="14px"></u--input>
<u-icon style="margin-left: 4px;" slot="right" name="arrow-down" size="12"> <u-icon style="margin-left: 4px;" slot="right" name="arrow-down" size="12">
</u-icon> </u-icon>
@ -126,7 +126,8 @@
extendIgnoreDataRule, extendIgnoreDataRule,
guid, guid,
initFilter, initFilter,
initFilterGroup initFilterGroup,
transformData
} from '../../../../utils/common' } from '../../../../utils/common'
import { import {
FMProductionUnit, FMProductionUnit,
@ -152,7 +153,8 @@
import stepTitle from '@/components/custom/step-title.vue' import stepTitle from '@/components/custom/step-title.vue'
import swipeActionItem from '../../../../uni_modules/uview-ui/libs/config/props/swipeActionItem'; import swipeActionItem from '../../../../uni_modules/uview-ui/libs/config/props/swipeActionItem';
import { import {
getEnum getEnum,
GetEnumAnyOrder
} from '../../../../services/common'; } from '../../../../services/common';
export default { export default {
components: { components: {
@ -255,48 +257,20 @@
]); ]);
}, },
methods: { methods: {
async fetchEnums(enumNames) { fetchEnums(enumNames) {
try { var dataParm = {
// Promise 'name': enumNames.join('|')
const enumPromises = enumNames.map(name => {
return getEnum({
name
}).then(res => {
// name/code便
return {
enumName: name,
data: res.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'
});
} }
GetEnumAnyOrder(dataParm).then(res => {
let newd = transformData(res, enumNames)
this.enumsData = newd[0];
//
this.enumsText = newd[1]
this.loadData();
})
}, },
goRiskDes(){ goRiskDes() {
if(!this.model.CHECK_CONTENTS_ID){ if (!this.model.CHECK_CONTENTS_ID) {
uni.showToast({ uni.showToast({
title: '请先选择检查内容', title: '请先选择检查内容',
icon: 'none' icon: 'none'
@ -450,7 +424,7 @@
}) })
} else if (p.name == 'Nav_CheckType') { } else if (p.name == 'Nav_CheckType') {
if(this.model.MineType!==undefined&&this.model.MineType!==null){ if (this.model.MineType !== undefined && this.model.MineType !== null) {
extendRule(json, 'MineType', 1, String(this.model.MineType)); extendRule(json, 'MineType', 1, String(this.model.MineType));
} }
dataSelect = await CheckTypeNewOrderPaged(json).then(res => { dataSelect = await CheckTypeNewOrderPaged(json).then(res => {
@ -536,7 +510,7 @@
}) })
return return
} }
if (!this.model.Nav_RiskArea||!this.model.Nav_RiskArea.NAME) { if (!this.model.Nav_RiskArea || !this.model.Nav_RiskArea.NAME) {
uni.showToast({ uni.showToast({
title: '请选择检查区域', title: '请选择检查区域',
icon: 'none' icon: 'none'
@ -550,22 +524,22 @@
}) })
return return
} }
if (!this.model.Nav_Contents||!this.model.Nav_Contents.CHECKCONTENT) { if (!this.model.Nav_Contents || !this.model.Nav_Contents.CHECKCONTENT) {
uni.showToast({ uni.showToast({
title: '请选择检查内容', title: '请选择检查内容',
icon: 'none' icon: 'none'
}) })
return return
} }
if (!this.model.Nav_Question||!this.model.Nav_Question.DESCREPTION) { if (!this.model.Nav_Question || !this.model.Nav_Question.DESCREPTION) {
uni.showToast({ uni.showToast({
title: '请选择隐患描述', title: '请选择隐患描述',
icon: 'none' icon: 'none'
}) })
return return
} }
if(!this.model.RECTIFICATION_MEASURES){ if (!this.model.RECTIFICATION_MEASURES) {
uni.showToast({ uni.showToast({
title: '请填写整改措施', title: '请填写整改措施',
icon: 'none' icon: 'none'
@ -579,7 +553,7 @@
}) })
return return
} }
// if (!this.model.DEPARTMENT_TYPEName) { // if (!this.model.DEPARTMENT_TYPEName) {
// uni.showToast({ // uni.showToast({
// title: '', // title: '',
@ -601,7 +575,7 @@
// }) // })
// return // return
// } // }
if (!this.model.Nav_RecitifyUser||!this.model.Nav_RecitifyUser.NAME) { if (!this.model.Nav_RecitifyUser || !this.model.Nav_RecitifyUser.NAME) {
uni.showToast({ uni.showToast({
title: '请选择整改责任人', title: '请选择整改责任人',
icon: 'none' icon: 'none'

View File

@ -70,7 +70,8 @@
import { import {
initFilter, initFilter,
extendRule, extendRule,
extendInclude extendInclude,
transformData
} from '../../../../utils/common' } from '../../../../utils/common'
import { import {
MineTypeIndex, MineTypeIndex,
@ -80,7 +81,8 @@
GetHiddenConfirmListInfo GetHiddenConfirmListInfo
} from '../../../../services/apply/subPages/SK/SKServices.js' } from '../../../../services/apply/subPages/SK/SKServices.js'
import { import {
getEnum getEnum,
GetEnumAnyOrder
} from '../../../../services/common'; } from '../../../../services/common';
import UniSearchBar from '../../../../uni_modules/uni-search-bar/components/uni-search-bar/uni-search-bar.vue' import UniSearchBar from '../../../../uni_modules/uni-search-bar/components/uni-search-bar/uni-search-bar.vue'
export default { export default {
@ -114,45 +116,17 @@
}, },
methods: { methods: {
async fetchEnums(enumNames) { fetchEnums(enumNames) {
try { var dataParm = {
// Promise 'name': enumNames.join('|')
const enumPromises = enumNames.map(name => {
return getEnum({
name
}).then(res => {
// name/code便
return {
enumName: name,
data: res.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'
});
} }
GetEnumAnyOrder(dataParm).then(res => {
let newd = transformData(res, enumNames)
this.enumsData = newd[0];
//
this.enumsText = newd[1]
this.loadData();
})
}, },
handleSearch() { handleSearch() {
this.pageIndex = 0 this.pageIndex = 0

View File

@ -118,7 +118,8 @@
extendIgnoreDataRule, extendIgnoreDataRule,
guid, guid,
initFilter, initFilter,
initFilterGroup initFilterGroup,
transformData
} from '../../../../utils/common' } from '../../../../utils/common'
import { import {
MineTypeIndex, MineTypeIndex,
@ -129,7 +130,8 @@
SKHiddenDangerIdentityUpdate SKHiddenDangerIdentityUpdate
} from '../../../../services/apply/subPages/SK/SKServices.js' } from '../../../../services/apply/subPages/SK/SKServices.js'
import { import {
getEnum getEnum,
GetEnumAnyOrder
} from '../../../../services/common'; } from '../../../../services/common';
import stepTitle from '@/components/custom/step-title.vue' import stepTitle from '@/components/custom/step-title.vue'
export default { export default {
@ -209,45 +211,17 @@
// this.loadData() // this.loadData()
}, },
methods: { methods: {
async fetchEnums(enumNames) { fetchEnums(enumNames) {
try { var dataParm = {
// Promise 'name': enumNames.join('|')
const enumPromises = enumNames.map(name => {
return getEnum({
name
}).then(res => {
// name/code便
return {
enumName: name,
data: res.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'
});
} }
GetEnumAnyOrder(dataParm).then(res => {
let newd = transformData(res, enumNames)
this.enumsData = newd[0];
//
this.enumsText = newd[1]
this.loadData();
})
}, },
loadData() { loadData() {
const orgId = uni.getStorageSync('orgId') const orgId = uni.getStorageSync('orgId')

View File

@ -12,27 +12,27 @@
<u-form-item label="审核意见:" prop="CONTEXT" borderBottom v-if="model.STATUS==40"> <u-form-item label="审核意见:" prop="CONTEXT" borderBottom v-if="model.STATUS==40">
</u-form-item> </u-form-item>
<u--textarea v-html="model.CONTEXT" border="surround" v-if="model.STATUS==40" disabled></u--textarea> <u--textarea v-html="model.CONTEXT" border="surround" v-if="model.STATUS==40" disabled></u--textarea>
<u-form-item label="生产单元:" prop="Product_Unit" @click="handleChange('SKProductionUnit')"> <u-form-item label="生产单元:" prop="Product_Unit" @click="handleChange('SKProductionUnit')">
<u--input v-model="model.Product_Unit" placeholder="请选择生产单元" disabled disabledColor="#ffffff" border="none" inputAlign="right" fontSize="14px"> <u--input v-model="model.Product_Unit" placeholder="请选择生产单元" disabled disabledColor="#ffffff" border="none" inputAlign="right" fontSize="14px">
</u--input> </u--input>
<u-icon style="margin-left: 4px;" slot="right" name="arrow-down" size="12">
</u-icon>
</u-form-item>
<u-form-item label="检查类型:" prop="Check_Type" @click="handleShowSheet({title: '检查类型', name: 'Nav_CheckType'})">
<u--input placeholder="请选择检查类型" v-model="(model.Nav_CheckType||{}).NAME" disabled disabledColor="#ffffff" border="none" inputAlign="right" fontSize="14px"></u--input>
<u-icon style="margin-left: 4px;" slot="right" name="arrow-down" size="12"> <u-icon style="margin-left: 4px;" slot="right" name="arrow-down" size="12">
</u-icon> </u-icon>
</u-form-item> </u-form-item>
<u-form-item label="检查周期:" prop="PLANCHECKFREQUENCYName" @click="handleChange('SKPLANCHECKFREQUENCYEnum')"> <u-form-item label="检查类型:" prop="Check_Type" @click="handleShowSheet({title: '检查类型', name: 'Nav_CheckType'})">
<u--input v-model="model.PLANCHECKFREQUENCYName" disabled placeholder="请选择检查周期" disabledColor="#ffffff" border="none" inputAlign="right" fontSize="14px"></u--input> <u--input placeholder="请选择检查类型" v-model="(model.Nav_CheckType||{}).NAME" disabled disabledColor="#ffffff" border="none" inputAlign="right" fontSize="14px"></u--input>
<u-icon style="margin-left: 4px;" slot="right" name="arrow-down" size="12"> <u-icon style="margin-left: 4px;" slot="right" name="arrow-down" size="12">
</u-icon> </u-icon>
</u-form-item> </u-form-item>
<u-form-item label="检查层级:" prop="DEPARTMENT_TYPEName" @click="handleChange('SKDepartmentTypeEnum')"> <u-form-item label="检查周期:" prop="PLANCHECKFREQUENCYName" @click="handleChange('SKPLANCHECKFREQUENCYEnum')">
<u--input v-model="model.DEPARTMENT_TYPEName" disabled placeholder="请选择检查层级" disabledColor="#ffffff" border="none" inputAlign="right" fontSize="14px"> <u--input v-model="model.PLANCHECKFREQUENCYName" disabled placeholder="请选择检查周期" disabledColor="#ffffff" border="none" inputAlign="right" fontSize="14px"></u--input>
<u-icon style="margin-left: 4px;" slot="right" name="arrow-down" size="12">
</u-icon>
</u-form-item>
<u-form-item label="检查层级:" prop="DEPARTMENT_TYPEName" @click="handleChange('SKDepartmentTypeEnum')">
<u--input v-model="model.DEPARTMENT_TYPEName" disabled placeholder="请选择检查层级" disabledColor="#ffffff" border="none" inputAlign="right" fontSize="14px">
</u--input> </u--input>
<u-icon style="margin-left: 4px;" slot="right" name="arrow-down" size="12"> <u-icon style="margin-left: 4px;" slot="right" name="arrow-down" size="12">
</u-icon> </u-icon>
</u-form-item> </u-form-item>
<u-form-item required label="检查时间:" prop="CHECK_TIME" @click="handleChangeDate()"> <u-form-item required label="检查时间:" prop="CHECK_TIME" @click="handleChangeDate()">
@ -138,7 +138,8 @@
guid, guid,
initFilter, initFilter,
initFilterGroup, initFilterGroup,
extendIgnoreDataRule extendIgnoreDataRule,
transformData
} from '../../../../utils/common' } from '../../../../utils/common'
import { import {
FMProductionUnit, FMProductionUnit,
@ -155,7 +156,8 @@
CheckTypeNewOrderPaged CheckTypeNewOrderPaged
} from '../../../../services/apply/subPages/SK/SKServices.js' } from '../../../../services/apply/subPages/SK/SKServices.js'
import { import {
getEnum getEnum,
GetEnumAnyOrder
} from '../../../../services/common'; } from '../../../../services/common';
import { import {
getRequest, getRequest,
@ -236,45 +238,17 @@
this.fetchEnums(['SKProductionUnit', 'SKPLANCHECKFREQUENCYEnum', 'SKDepartmentTypeEnum']); this.fetchEnums(['SKProductionUnit', 'SKPLANCHECKFREQUENCYEnum', 'SKDepartmentTypeEnum']);
}, },
methods: { methods: {
async fetchEnums(enumNames) { fetchEnums(enumNames) {
try { var dataParm = {
// Promise 'name': enumNames.join('|')
const enumPromises = enumNames.map(name => {
return getEnum({
name
}).then(res => {
// name/code便
return {
enumName: name,
data: res.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'
});
} }
GetEnumAnyOrder(dataParm).then(res => {
let newd = transformData(res, enumNames)
this.enumsData = newd[0];
//
this.enumsText = newd[1]
this.loadData();
})
}, },
loadData() { loadData() {
@ -283,7 +257,7 @@
this.model.Nav_Details = [] this.model.Nav_Details = []
if (this.ID == undefined || this.ID == '') if (this.ID == undefined || this.ID == '')
this.ID = guid() this.ID = guid()
this.model.ID = this.ID this.model.ID = this.ID
} else { } else {
const orgId = uni.getStorageSync('orgId') const orgId = uni.getStorageSync('orgId')
const json = initFilter(orgId, "", "") const json = initFilter(orgId, "", "")
@ -355,7 +329,7 @@
this.stepsPageList = this.stepsPageList - 1 this.stepsPageList = this.stepsPageList - 1
}, },
handleChange(name) { handleChange(name) {
console.log(this.enumsData[name],'mnn') console.log(this.enumsData[name], 'mnn')
this.comPickerInfo = { this.comPickerInfo = {
showSheet: true, showSheet: true,
columns: [this.enumsData[name]], columns: [this.enumsData[name]],
@ -373,7 +347,7 @@
this.model.DEPARTMENT_TYPEName = e.value[0].name this.model.DEPARTMENT_TYPEName = e.value[0].name
this.model.DEPARTMENT_TYPE = this.enumsData['SKDepartmentTypeEnum'][e.indexs[0]].code this.model.DEPARTMENT_TYPE = this.enumsData['SKDepartmentTypeEnum'][e.indexs[0]].code
} }
this.comPickerInfo = { this.comPickerInfo = {
showSheet: false, showSheet: false,
columns: [], columns: [],
@ -555,14 +529,14 @@
} }
return res.Data return res.Data
}) })
}else if(p.name =='Nav_CheckType'){ } else if (p.name == 'Nav_CheckType') {
if (p.val) { if (p.val) {
extendRule(json, 'NAME', 9, p.val); extendRule(json, 'NAME', 9, p.val);
} }
if(this.model.MineType!==undefined&&this.model.MineType!==null){ if (this.model.MineType !== undefined && this.model.MineType !== null) {
extendRule(json, 'MineType', 1, String(this.model.MineType)); extendRule(json, 'MineType', 1, String(this.model.MineType));
} }
dataSelect = await CheckTypeNewOrderPaged(json).then(res => { dataSelect = await CheckTypeNewOrderPaged(json).then(res => {
this.selectorInfo.totalCount = res.TotalCount this.selectorInfo.totalCount = res.TotalCount
if (res != undefined && res.Data.length > 0) { if (res != undefined && res.Data.length > 0) {
@ -616,8 +590,7 @@
} else if (this.selectorInfo.name == 'Nav_Contents') { } else if (this.selectorInfo.name == 'Nav_Contents') {
this.model.Nav_CheckNoticeDetails[realIndex].Nav_Contents = e; this.model.Nav_CheckNoticeDetails[realIndex].Nav_Contents = e;
this.model.Nav_CheckNoticeDetails[realIndex].CHECK_CONTENTS_ID = e.ID; this.model.Nav_CheckNoticeDetails[realIndex].CHECK_CONTENTS_ID = e.ID;
} } else if (this.selectorInfo.name == 'Nav_CheckType') {
else if (this.selectorInfo.name == 'Nav_CheckType') {
this.model.Nav_CheckType = e; this.model.Nav_CheckType = e;
this.model.CHECK_TYPE_ID = e.ID; this.model.CHECK_TYPE_ID = e.ID;
} }

View File

@ -70,7 +70,8 @@
import { import {
initFilter, initFilter,
extendRule, extendRule,
extendInclude extendInclude,
transformData
} from '../../../../utils/common' } from '../../../../utils/common'
import { import {
MineTypeIndex, MineTypeIndex,
@ -80,7 +81,8 @@
GetSafeCheckListInfo GetSafeCheckListInfo
} from '../../../../services/apply/subPages/SK/SKServices.js' } from '../../../../services/apply/subPages/SK/SKServices.js'
import { import {
getEnum getEnum,
GetEnumAnyOrder
} from '../../../../services/common'; } from '../../../../services/common';
import UniSearchBar from '../../../../uni_modules/uni-search-bar/components/uni-search-bar/uni-search-bar.vue' import UniSearchBar from '../../../../uni_modules/uni-search-bar/components/uni-search-bar/uni-search-bar.vue'
export default { export default {
@ -114,45 +116,17 @@
}, },
methods: { methods: {
async fetchEnums(enumNames) { fetchEnums(enumNames) {
try { var dataParm = {
// Promise 'name': enumNames.join('|')
const enumPromises = enumNames.map(name => {
return getEnum({
name
}).then(res => {
// name/code便
return {
enumName: name,
data: res.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'
});
} }
GetEnumAnyOrder(dataParm).then(res => {
let newd = transformData(res, enumNames)
this.enumsData = newd[0];
//
this.enumsText = newd[1]
this.loadData();
})
}, },
handleSearch() { handleSearch() {
this.pageIndex = 0 this.pageIndex = 0
@ -208,8 +182,8 @@
return { return {
...i, ...i,
title: i.Nav_ApplyDepartment ? i.Nav_ApplyDepartment.NAME : '', title: i.Nav_ApplyDepartment ? i.Nav_ApplyDepartment.NAME : '',
DEPARTMENT_TYPE: i.DEPARTMENT_TYPE!==undefined?this.enumsData['SKDepartmentTypeEnum'].find(item => item.code === i.DEPARTMENT_TYPE).name:'', DEPARTMENT_TYPE: i.DEPARTMENT_TYPE !== undefined ? this.enumsData['SKDepartmentTypeEnum'].find(item => item.code === i.DEPARTMENT_TYPE).name : '',
STATUS: i.STATUS!==undefined?this.enumsData['PFStandardStatus'].find(item => item.code === i.STATUS).name:'' STATUS: i.STATUS !== undefined ? this.enumsData['PFStandardStatus'].find(item => item.code === i.STATUS).name : ''
} }
}) })
if (paginate) { if (paginate) {

View File

@ -175,7 +175,8 @@
extendIgnoreDataRule, extendIgnoreDataRule,
guid, guid,
initFilter, initFilter,
initFilterGroup initFilterGroup,
transformData
} from '../../../../utils/common' } from '../../../../utils/common'
import { import {
FMProductionUnit, FMProductionUnit,
@ -198,7 +199,8 @@
import swipeActionItem from '../../../../uni_modules/uview-ui/libs/config/props/swipeActionItem'; import swipeActionItem from '../../../../uni_modules/uview-ui/libs/config/props/swipeActionItem';
import checkListPage from '../../../../pages/apply/subPages/SK/checkListPage.vue' import checkListPage from '../../../../pages/apply/subPages/SK/checkListPage.vue'
import { import {
getEnum getEnum,
GetEnumAnyOrder
} from '../../../../services/common'; } from '../../../../services/common';
export default { export default {
components: { components: {
@ -318,45 +320,17 @@
]); ]);
}, },
methods: { methods: {
async fetchEnums(enumNames) { fetchEnums(enumNames) {
try { var dataParm = {
// Promise 'name': enumNames.join('|')
const enumPromises = enumNames.map(name => {
return getEnum({
name
}).then(res => {
// name/code便
return {
enumName: name,
data: res.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'
});
} }
GetEnumAnyOrder(dataParm).then(res => {
let newd = transformData(res, enumNames)
this.enumsData = newd[0];
//
this.enumsText = newd[1]
this.loadData();
})
}, },
loadData() { loadData() {
@ -381,23 +355,23 @@
this.model = res; this.model = res;
this.model.ID = this.ID this.model.ID = this.ID
this.stepsPage = res.STATUS == 0 ? 0 : 1 this.stepsPage = res.STATUS == 0 ? 0 : 1
this.model.Product_Unit = res.MineType!==undefined ? this.enumsData['SKProductionUnit'].find(item => item.code === res.MineType).name : ''; this.model.Product_Unit = res.MineType !== undefined ? this.enumsData['SKProductionUnit'].find(item => item.code === res.MineType).name : '';
this.model.PLANCHECKFREQUENCYName = res.PLANCHECKFREQUENCY!==undefined ? this.enumsData['SKPLANCHECKFREQUENCYEnum'].find(item => item.code === res.PLANCHECKFREQUENCY).name : ''; this.model.PLANCHECKFREQUENCYName = res.PLANCHECKFREQUENCY !== undefined ? this.enumsData['SKPLANCHECKFREQUENCYEnum'].find(item => item.code === res.PLANCHECKFREQUENCY).name : '';
this.model.DEPARTMENT_TYPEName = res.DEPARTMENT_TYPE!==undefined ? this.enumsData['SKDepartmentTypeEnum'].find(item => item.code === res.DEPARTMENT_TYPE).name : ''; this.model.DEPARTMENT_TYPEName = res.DEPARTMENT_TYPE !== undefined ? this.enumsData['SKDepartmentTypeEnum'].find(item => item.code === res.DEPARTMENT_TYPE).name : '';
this.model.Nav_CheckRecordDetails.map((item => { this.model.Nav_CheckRecordDetails.map((item => {
if(item.CHECK_RESULT!==undefined ){ if (item.CHECK_RESULT !== undefined) {
item.CHECK_RESULTName = this.enumsData['SKCheckResultEnum'].find(item1 => item1.code === item.CHECK_RESULT).name; item.CHECK_RESULTName = this.enumsData['SKCheckResultEnum'].find(item1 => item1.code === item.CHECK_RESULT).name;
}else{ } else {
item.CHECK_RESULT = this.enumsData['SKCheckResultEnum'][0].code item.CHECK_RESULT = this.enumsData['SKCheckResultEnum'][0].code
item.CHECK_RESULTName = this.enumsData['SKCheckResultEnum'][0].name; item.CHECK_RESULTName = this.enumsData['SKCheckResultEnum'][0].name;
} }
if(item.HIDDEN_LEVEL!==undefined ){ if (item.HIDDEN_LEVEL !== undefined) {
item.HIDDEN_LEVELName = this.enumsData['SKHiddenLevel'].find(item1 => item1.code === item.HIDDEN_LEVEL).name; item.HIDDEN_LEVELName = this.enumsData['SKHiddenLevel'].find(item1 => item1.code === item.HIDDEN_LEVEL).name;
}else{ } else {
item.HIDDEN_LEVELName='' item.HIDDEN_LEVELName = ''
item.HIDDEN_LEVEL=null item.HIDDEN_LEVEL = null
} }
// item.MARKName = this.enumsData['SKMarkEnum'].find(item1 => item1.code === item.MARK).name; // item.MARKName = this.enumsData['SKMarkEnum'].find(item1 => item1.code === item.MARK).name;
})) }))
@ -497,10 +471,10 @@
ID: guid(), ID: guid(),
ORG_ID: this.ORG_ID, ORG_ID: this.ORG_ID,
SECURITY_INSPECTION_RECORD_ID: this.model.ID, SECURITY_INSPECTION_RECORD_ID: this.model.ID,
TaskID:this.TaskID TaskID: this.TaskID
}) })
}); });
}, },
handleNewCheckArea() { handleNewCheckArea() {
@ -608,7 +582,7 @@
this.selectorInfo.isMultiple = false this.selectorInfo.isMultiple = false
json.Limit = 20 json.Limit = 20
if (p.pageIndex) { if (p.pageIndex) {
@ -622,7 +596,7 @@
if (p.val) { if (p.val) {
extendRule(json, 'NAME', 9, p.val); extendRule(json, 'NAME', 9, p.val);
} }
// extendRule(json, 'DEVICE_STATUS', 1, '1'); // extendRule(json, 'DEVICE_STATUS', 1, '1');
dataSelect = await GetNewRiskAreaInfo(json).then(res => { dataSelect = await GetNewRiskAreaInfo(json).then(res => {
this.selectorInfo.totalCount = res.TotalCount this.selectorInfo.totalCount = res.TotalCount
@ -637,7 +611,7 @@
if (p.val) { if (p.val) {
extendRule(json, 'CHECKCONTENT', 9, p.val); extendRule(json, 'CHECKCONTENT', 9, p.val);
} }
json.Sort = 'CHECKCONTENT' json.Sort = 'CHECKCONTENT'
dataSelect = await GetCheckContentsInfo(json).then(res => { dataSelect = await GetCheckContentsInfo(json).then(res => {
this.selectorInfo.totalCount = res.TotalCount this.selectorInfo.totalCount = res.TotalCount
@ -713,8 +687,8 @@
} else if (this.selectorInfo.name == 'Nav_Question') { } else if (this.selectorInfo.name == 'Nav_Question') {
this.model.Nav_CheckRecordDetails[realIndex].Nav_Question = e; this.model.Nav_CheckRecordDetails[realIndex].Nav_Question = e;
this.model.Nav_CheckRecordDetails[realIndex].CHECK_QUESTION_ID = e.ID; 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_LEVEL = e.QUESTION_LEVEL
this.model.Nav_CheckRecordDetails[realIndex].HIDDEN_LEVELName = this.enumsData['SKHiddenLevel'].find(item1 => item1.code ===e.QUESTION_LEVEL).name; this.model.Nav_CheckRecordDetails[realIndex].HIDDEN_LEVELName = this.enumsData['SKHiddenLevel'].find(item1 => item1.code === e.QUESTION_LEVEL).name;
} }

View File

@ -70,7 +70,8 @@
import { import {
initFilter, initFilter,
extendRule, extendRule,
extendInclude extendInclude,
transformData
} from '../../../../utils/common' } from '../../../../utils/common'
import { import {
MineTypeIndex, MineTypeIndex,
@ -80,7 +81,8 @@
GetSafeCheckRecordListInfo GetSafeCheckRecordListInfo
} from '../../../../services/apply/subPages/SK/SKServices.js' } from '../../../../services/apply/subPages/SK/SKServices.js'
import { import {
getEnum getEnum,
GetEnumAnyOrder
} from '../../../../services/common'; } from '../../../../services/common';
import UniSearchBar from '../../../../uni_modules/uni-search-bar/components/uni-search-bar/uni-search-bar.vue' import UniSearchBar from '../../../../uni_modules/uni-search-bar/components/uni-search-bar/uni-search-bar.vue'
export default { export default {
@ -114,45 +116,17 @@
}, },
methods: { methods: {
async fetchEnums(enumNames) { fetchEnums(enumNames) {
try { var dataParm = {
// Promise 'name': enumNames.join('|')
const enumPromises = enumNames.map(name => {
return getEnum({
name
}).then(res => {
// name/code便
return {
enumName: name,
data: res.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'
});
} }
GetEnumAnyOrder(dataParm).then(res => {
let newd = transformData(res, enumNames)
this.enumsData = newd[0];
//
this.enumsText = newd[1]
this.loadData();
})
}, },
handleSearch() { handleSearch() {
this.pageIndex = 0 this.pageIndex = 0
@ -207,8 +181,8 @@
return { return {
...i, ...i,
title: i.Nav_ApplyDepartment ? i.Nav_ApplyDepartment.NAME : '', title: i.Nav_ApplyDepartment ? i.Nav_ApplyDepartment.NAME : '',
DEPARTMENT_TYPE: i.DEPARTMENT_TYPE!==undefined?this.enumsData['SKDepartmentTypeEnum'].find(item => item.code === i.DEPARTMENT_TYPE).name:'', DEPARTMENT_TYPE: i.DEPARTMENT_TYPE !== undefined ? this.enumsData['SKDepartmentTypeEnum'].find(item => item.code === i.DEPARTMENT_TYPE).name : '',
STATUS: i.STATUS!==undefined?this.enumsData['PFStandardStatus'].find(item => item.code === i.STATUS).name:'' STATUS: i.STATUS !== undefined ? this.enumsData['PFStandardStatus'].find(item => item.code === i.STATUS).name : ''
} }
}) })
if (paginate) { if (paginate) {

View File

@ -125,7 +125,8 @@
extendIgnoreDataRule, extendIgnoreDataRule,
guid, guid,
initFilter, initFilter,
initFilterGroup initFilterGroup,
transformData
} from '../../../../utils/common' } from '../../../../utils/common'
import { import {
FMProductionUnit, FMProductionUnit,
@ -140,7 +141,8 @@
} from '../../../../services/apply/FOServices/FOServices'; } from '../../../../services/apply/FOServices/FOServices';
import stepTitle from '@/components/custom/step-title.vue' import stepTitle from '@/components/custom/step-title.vue'
import { import {
getEnum getEnum,
GetEnumAnyOrder
} from '../../../../services/common'; } from '../../../../services/common';
export default { export default {
components: { components: {
@ -227,45 +229,17 @@
]); ]);
}, },
methods: { methods: {
async fetchEnums(enumNames) { fetchEnums(enumNames) {
try { var dataParm = {
// Promise 'name': enumNames.join('|')
const enumPromises = enumNames.map(name => {
return getEnum({
name
}).then(res => {
// name/code便
return {
enumName: name,
data: res.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'
});
} }
GetEnumAnyOrder(dataParm).then(res => {
let newd = transformData(res, enumNames)
this.enumsData = newd[0];
//
this.enumsText = newd[1]
this.loadData();
})
}, },
loadData() { loadData() {
// const json = {} // const json = {}

View File

@ -172,7 +172,8 @@
extendIgnoreDataRule, extendIgnoreDataRule,
guid, guid,
initFilter, initFilter,
initFilterGroup initFilterGroup,
transformData
} from '../../../../utils/common' } from '../../../../utils/common'
import { import {
FMProductionUnit, FMProductionUnit,
@ -197,7 +198,8 @@
import stepTitle from '@/components/custom/step-title.vue' import stepTitle from '@/components/custom/step-title.vue'
import swipeActionItem from '../../../../uni_modules/uview-ui/libs/config/props/swipeActionItem'; import swipeActionItem from '../../../../uni_modules/uview-ui/libs/config/props/swipeActionItem';
import { import {
getEnum getEnum,
GetEnumAnyOrder
} from '../../../../services/common'; } from '../../../../services/common';
export default { export default {
components: { components: {
@ -314,45 +316,17 @@
]); ]);
}, },
methods: { methods: {
async fetchEnums(enumNames) { fetchEnums(enumNames) {
try { var dataParm = {
// Promise 'name': enumNames.join('|')
const enumPromises = enumNames.map(name => {
return getEnum({
name
}).then(res => {
// name/code便
return {
enumName: name,
data: res.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'
});
} }
GetEnumAnyOrder(dataParm).then(res => {
let newd = transformData(res, enumNames)
this.enumsData = newd[0];
//
this.enumsText = newd[1]
this.loadData();
})
}, },
loadData() { loadData() {
@ -529,7 +503,7 @@
this.selectorInfo.isMultiple = false this.selectorInfo.isMultiple = false
json.Limit = 20 json.Limit = 20
@ -633,8 +607,8 @@
} else if (this.selectorInfo.name == 'Nav_Question') { } else if (this.selectorInfo.name == 'Nav_Question') {
this.model.Nav_CheckRecordDetails[realIndex].Nav_Question = e; this.model.Nav_CheckRecordDetails[realIndex].Nav_Question = e;
this.model.Nav_CheckRecordDetails[realIndex].CHECK_QUESTION_ID = e.ID; 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_LEVEL = e.QUESTION_LEVEL
this.model.Nav_CheckRecordDetails[realIndex].HIDDEN_LEVELName = this.enumsData['SKHiddenLevel'].find(item1 => item1.code ===e.QUESTION_LEVEL).name; this.model.Nav_CheckRecordDetails[realIndex].HIDDEN_LEVELName = this.enumsData['SKHiddenLevel'].find(item1 => item1.code === e.QUESTION_LEVEL).name;
} }

View File

@ -70,7 +70,8 @@
import { import {
initFilter, initFilter,
extendRule, extendRule,
extendInclude extendInclude,
transformData
} from '../../../../utils/common' } from '../../../../utils/common'
import { import {
MineTypeIndex, MineTypeIndex,
@ -80,7 +81,8 @@
GetSafeCheckRecordSummaryListInfo GetSafeCheckRecordSummaryListInfo
} from '../../../../services/apply/subPages/SK/SKServices.js' } from '../../../../services/apply/subPages/SK/SKServices.js'
import { import {
getEnum getEnum,
GetEnumAnyOrder
} from '../../../../services/common'; } from '../../../../services/common';
import UniSearchBar from '../../../../uni_modules/uni-search-bar/components/uni-search-bar/uni-search-bar.vue' import UniSearchBar from '../../../../uni_modules/uni-search-bar/components/uni-search-bar/uni-search-bar.vue'
export default { export default {
@ -114,45 +116,17 @@
}, },
methods: { methods: {
async fetchEnums(enumNames) { fetchEnums(enumNames) {
try { var dataParm = {
// Promise 'name': enumNames.join('|')
const enumPromises = enumNames.map(name => {
return getEnum({
name
}).then(res => {
// name/code便
return {
enumName: name,
data: res.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'
});
} }
GetEnumAnyOrder(dataParm).then(res => {
let newd = transformData(res, enumNames)
this.enumsData = newd[0];
//
this.enumsText = newd[1]
this.loadData();
})
}, },
handleSearch() { handleSearch() {
this.pageIndex = 0 this.pageIndex = 0
@ -208,8 +182,8 @@
return { return {
...i, ...i,
title: i.Nav_ApplyDepartment ? i.Nav_ApplyDepartment.NAME : '', title: i.Nav_ApplyDepartment ? i.Nav_ApplyDepartment.NAME : '',
DEPARTMENT_TYPE: i.DEPARTMENT_TYPE!==undefined?this.enumsData['SKDepartmentTypeEnum'].find(item => item.code === i.DEPARTMENT_TYPE).name:'', DEPARTMENT_TYPE: i.DEPARTMENT_TYPE !== undefined ? this.enumsData['SKDepartmentTypeEnum'].find(item => item.code === i.DEPARTMENT_TYPE).name : '',
STATUS: i.STATUS!==undefined?this.enumsData['PFStandardStatus'].find(item => item.code === i.STATUS).name:'' STATUS: i.STATUS !== undefined ? this.enumsData['PFStandardStatus'].find(item => item.code === i.STATUS).name : ''
} }
}) })
if (paginate) { if (paginate) {

View File

@ -40,16 +40,7 @@
</u-form-item> </u-form-item>
<!-- 修改检查人员显示部分的代码 --> <!-- 修改检查人员显示部分的代码 -->
<u-form-item label="检查人员:" prop="UserNames"></u-form-item> <u-form-item label="检查人员:" prop="UserNames"></u-form-item>
<rich-text <rich-text style="line-height: 30px;" autoHeight type="textarea" v-html="formattedCheckUsers" border="none" inputAlign="right" disabled class="richtext"></rich-text>
style="line-height: 30px;"
autoHeight
type="textarea"
v-html="formattedCheckUsers"
border="none"
inputAlign="right"
disabled
class="richtext"
></rich-text>
<view class="upload-title">附件</view> <view class="upload-title">附件</view>
<full-upload v-model="model.Nav_CheckRecordFiles" :isShowBtn='false' :listProp='listPropUpload' :listPropVal='listPropValUpload'></full-upload> <full-upload v-model="model.Nav_CheckRecordFiles" :isShowBtn='false' :listProp='listPropUpload' :listPropVal='listPropValUpload'></full-upload>
</u--form> </u--form>
@ -138,7 +129,8 @@
extendIgnoreDataRule, extendIgnoreDataRule,
guid, guid,
initFilter, initFilter,
initFilterGroup initFilterGroup,
transformData
} from '../../../../utils/common' } from '../../../../utils/common'
import { import {
FMProductionUnit, FMProductionUnit,
@ -154,7 +146,8 @@
} from '../../../../services/apply/FOServices/FOServices'; } from '../../../../services/apply/FOServices/FOServices';
import stepTitle from '@/components/custom/step-title.vue' import stepTitle from '@/components/custom/step-title.vue'
import { import {
getEnum getEnum,
GetEnumAnyOrder
} from '../../../../services/common'; } from '../../../../services/common';
export default { export default {
components: { components: {
@ -237,45 +230,17 @@
]); ]);
}, },
methods: { methods: {
async fetchEnums(enumNames) { fetchEnums(enumNames) {
try { var dataParm = {
// Promise 'name': enumNames.join('|')
const enumPromises = enumNames.map(name => {
return getEnum({
name
}).then(res => {
// name/code便
return {
enumName: name,
data: res.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'
});
} }
GetEnumAnyOrder(dataParm).then(res => {
let newd = transformData(res, enumNames)
this.enumsData = newd[0];
//
this.enumsText = newd[1]
this.loadData();
})
}, },
loadData() { loadData() {
// const json = {} // const json = {}
@ -289,20 +254,20 @@
this.model = res; this.model = res;
this.model.ID = this.ID this.model.ID = this.ID
this.model.CREATE_TIME = uni.$u.timeFormat(this.model.CREATE_TIME, 'yyyy-mm-dd') this.model.CREATE_TIME = uni.$u.timeFormat(this.model.CREATE_TIME, 'yyyy-mm-dd')
this.model.Product_Unit = res.MineType!==undefined ? this.enumsData['SKProductionUnit'].find(item => item.code === res.MineType).name : ''; this.model.Product_Unit = res.MineType !== undefined ? this.enumsData['SKProductionUnit'].find(item => item.code === res.MineType).name : '';
this.model.PLANCHECKFREQUENCYName = res.PLANCHECKFREQUENCY!==undefined ? this.enumsData['SKPLANCHECKFREQUENCYEnum'].find(item => item.code === res.PLANCHECKFREQUENCY).name : ''; this.model.PLANCHECKFREQUENCYName = res.PLANCHECKFREQUENCY !== undefined ? this.enumsData['SKPLANCHECKFREQUENCYEnum'].find(item => item.code === res.PLANCHECKFREQUENCY).name : '';
this.model.DEPARTMENT_TYPEName = res.DEPARTMENT_TYPE!==undefined ? this.enumsData['SKDepartmentTypeEnum'].find(item => item.code === res.DEPARTMENT_TYPE).name : ''; this.model.DEPARTMENT_TYPEName = res.DEPARTMENT_TYPE !== undefined ? this.enumsData['SKDepartmentTypeEnum'].find(item => item.code === res.DEPARTMENT_TYPE).name : '';
if (this.model.Nav_CheckRecordDetails && this.model.Nav_CheckRecordDetails.length > 0) { if (this.model.Nav_CheckRecordDetails && this.model.Nav_CheckRecordDetails.length > 0) {
this.model.Nav_CheckRecordDetails.map(item => { this.model.Nav_CheckRecordDetails.map(item => {
item.CHECK_RESULTName = item.CHECK_RESULT!==undefined ?this.enumsData['SKCheckResultEnum'].find(item1 => item1.code === item.CHECK_RESULT).name : ''; item.CHECK_RESULTName = item.CHECK_RESULT !== undefined ? this.enumsData['SKCheckResultEnum'].find(item1 => item1.code === item.CHECK_RESULT).name : '';
item.HIDDEN_LEVELName = item.HIDDEN_LEVEL!==undefined ?this.enumsData['SKHiddenLevel'].find(item1 => item1.code === item.HIDDEN_LEVEL).name :''; item.HIDDEN_LEVELName = item.HIDDEN_LEVEL !== undefined ? this.enumsData['SKHiddenLevel'].find(item1 => item1.code === item.HIDDEN_LEVEL).name : '';
// item.MARKName = this.enumsData['SKMarkEnum'].find(item1 => item1.code === item.MARK).name||''; // item.MARKName = this.enumsData['SKMarkEnum'].find(item1 => item1.code === item.MARK).name||'';
}) })
} }
this.stepsPage = res.STATUS == 0 ? 0 : res.STATUS == 10 ? 1 : 2 this.stepsPage = res.STATUS == 0 ? 0 : res.STATUS == 10 ? 1 : 2
}) })
this.isLoadOK = true this.isLoadOK = true
@ -323,7 +288,7 @@
formattedCheckUsers() { formattedCheckUsers() {
// //
const userMap = new Map(); const userMap = new Map();
// //
(this.model.Nav_CheckRecordDetails || []).forEach(detail => { (this.model.Nav_CheckRecordDetails || []).forEach(detail => {
// //
@ -337,14 +302,14 @@
} }
}); });
}); });
// HTML // HTML
let html = ''; let html = '';
userMap.forEach((isCheck, userName) => { userMap.forEach((isCheck, userName) => {
const color = isCheck === true ? '#000000' : '#ff0000'; const color = isCheck === true ? '#000000' : '#ff0000';
html += `<span style="color: ${color}; margin-right: 10px;">${userName}</span>`; html += `<span style="color: ${color}; margin-right: 10px;">${userName}</span>`;
}); });
return html; return html;
} }
} }

View File

@ -45,16 +45,7 @@
</u-form-item> --> </u-form-item> -->
<u-form-item label="检查人员:" prop="UserNames"> <u-form-item label="检查人员:" prop="UserNames">
</u-form-item> </u-form-item>
<rich-text <rich-text style="line-height: 30px;" autoHeight type="textarea" v-html="formattedCheckUsers" border="none" inputAlign="right" disabled class="richtext"></rich-text>
style="line-height: 30px;"
autoHeight
type="textarea"
v-html="formattedCheckUsers"
border="none"
inputAlign="right"
disabled
class="richtext"
></rich-text>
<view class="upload-title">附件</view> <view class="upload-title">附件</view>
<full-upload v-model="model.Nav_CheckNoticeFiles" :isShowBtn='false' :listProp='listPropUpload' :listPropVal='listPropValUpload'></full-upload> <full-upload v-model="model.Nav_CheckNoticeFiles" :isShowBtn='false' :listProp='listPropUpload' :listPropVal='listPropValUpload'></full-upload>
@ -123,7 +114,8 @@
guid, guid,
initFilter, initFilter,
initFilterGroup, initFilterGroup,
extendIgnoreDataRule extendIgnoreDataRule,
transformData
} from '../../../../utils/common' } from '../../../../utils/common'
import { import {
FMProductionUnit, FMProductionUnit,
@ -138,7 +130,8 @@
} from '../../../../services/apply/subPages/SK/SKServices.js' } from '../../../../services/apply/subPages/SK/SKServices.js'
import stepTitle from '@/components/custom/step-title.vue' import stepTitle from '@/components/custom/step-title.vue'
import { import {
getEnum getEnum,
GetEnumAnyOrder
} from '../../../../services/common'; } from '../../../../services/common';
export default { export default {
components: { components: {
@ -197,45 +190,17 @@
this.fetchEnums(['SKProductionUnit', 'SKPLANCHECKFREQUENCYEnum', 'SKDepartmentTypeEnum']); this.fetchEnums(['SKProductionUnit', 'SKPLANCHECKFREQUENCYEnum', 'SKDepartmentTypeEnum']);
}, },
methods: { methods: {
async fetchEnums(enumNames) { fetchEnums(enumNames) {
try { var dataParm = {
// Promise 'name': enumNames.join('|')
const enumPromises = enumNames.map(name => {
return getEnum({
name
}).then(res => {
// name/code便
return {
enumName: name,
data: res.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'
});
} }
GetEnumAnyOrder(dataParm).then(res => {
let newd = transformData(res, enumNames)
this.enumsData = newd[0];
//
this.enumsText = newd[1]
this.loadData();
})
}, },
loadData() { loadData() {
@ -275,33 +240,33 @@
}, },
computed: { computed: {
formattedCheckUsers() { formattedCheckUsers() {
// //
const userMap = new Map(); const userMap = new Map();
// //
(this.model.Nav_CheckNoticeDetails || []).forEach(detail => { (this.model.Nav_CheckNoticeDetails || []).forEach(detail => {
// //
(detail.Nav_CheckNoticeDetailUsers || []).forEach(user => { (detail.Nav_CheckNoticeDetailUsers || []).forEach(user => {
// //
if (!user.IS_DELETED && user.Nav_User?.NAME) { if (!user.IS_DELETED && user.Nav_User?.NAME) {
// 使使ID // 使使ID
if (!userMap.has(user.Nav_User.NAME)) { if (!userMap.has(user.Nav_User.NAME)) {
userMap.set(user.Nav_User.NAME, user.ISCHECK); userMap.set(user.Nav_User.NAME, user.ISCHECK);
} }
} }
}); });
}); });
// HTML // HTML
let html = ''; let html = '';
userMap.forEach((isCheck, userName) => { userMap.forEach((isCheck, userName) => {
const color = isCheck === true ? '#000000' : '#ff0000'; const color = isCheck === true ? '#000000' : '#ff0000';
html += `<span style="color: ${color}; margin-right: 10px;">${userName}</span>`; html += `<span style="color: ${color}; margin-right: 10px;">${userName}</span>`;
}); });
return html; return html;
} }
} }

View File

@ -71,6 +71,28 @@ export const dateFormat = (fmt, date) => {
}; };
return fmt return fmt
} }
export function transformData(input, keys) {
// 创建结果对象
const result = {};
const results = {}
// 遍历输入数组
input.forEach((array, index) => {
// 获取对应的键名
const key = keys[index];
// 转换数组中的每个对象
result[key] = array.map(item => ({
NAME: item.NAME,
ID: item.ID,
name: item.NAME,
code: item.ID
}));
results[key] = array.map(item => item.NAME);
});
return [result,results];
}
export function formatSeconds(seconds) { export function formatSeconds(seconds) {
const hours = Math.floor(seconds / 3600); const hours = Math.floor(seconds / 3600);
const minutes = Math.floor((seconds % 3600) / 60); const minutes = Math.floor((seconds % 3600) / 60);