枚举统一更改

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>
<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)">
<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'">
<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 class="action" @click.stop>
<u-icon @click="handleDelPersonRowBefore(index, item)" class="icon" name="trash" color="#ff4d4f" size="21"></u-icon>
</view>
@ -109,7 +109,8 @@
extendRule,
guid,
initFilter,
initFilterGroup
initFilterGroup,
transformData
} from '../../../../utils/common'
import {
getRequest,
@ -117,7 +118,8 @@
import config from '../../../../config/common'
import {
getEnum,
getUserLists
getUserLists,
GetEnumAnyOrder
} from '../../../../services/common';
export default {
@ -241,45 +243,18 @@
}
},
methods: {
async 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 //
}))
};
});
});
//
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'
});
fetchEnums(enumNames) {
var dataParm = {
'name': enumNames.join('|')
}
GetEnumAnyOrder(dataParm).then(res => {
let newd = transformData(res, enumNames)
this.enumsData = newd[0];
//
this.enumsText = newd[1]
this.loadData();
})
},
changeSwitch(e) {
this.model.IS_HANDOVER = e;
@ -365,7 +340,7 @@
this.showPopup = true;
this.handleSearchUser('init');
}
},
handleDelPersonRowBefore(index, item) {
if (item.USER_ID == "") {

View File

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

View File

@ -169,7 +169,7 @@
<u--textarea disabled v-model="item.CONTENT" border="surround"></u--textarea>
<view v-if="model.STATUS==30">
<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>
<view class="upload-title">附件</view>
<full-upload v-model="item.Nav_DetailFiles" :isShowBtn='false'></full-upload>
@ -188,10 +188,10 @@
<view style="position: relative;">
<view style="position: absolute;left: -10px;color: #3d4b70;top: -3px;">*</view>
</view>
<view style="font-size: 15px; font-weight: bold;color: #3d4b70;margin-bottom: 10px;">基本信息</view>
<view v-if="model.STATUS==30">
<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">
@ -223,7 +223,7 @@
</u-form-item>
<image style="width: 150px;height: 60px;" :src="imgurl+model.Nav_DispatchUser.FILE_PATH" v-if='model.DISPATCH_DEAL_STATUS== 1'>
</image>
</view>
<view v-if="model.FIRE_STATUS>15">
<u-form-item label="动火作业完工验收情况:" prop="Nav_User.NAME" borderBottom>
@ -252,7 +252,7 @@
</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>
</view>
</u--form>
@ -260,7 +260,7 @@
<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>
<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> -->
</view>
</view>
@ -270,7 +270,8 @@
import {
initFilter,
extendRule,
extendInclude
extendInclude,
transformData
} from '../../../../utils/common'
import {
@ -281,7 +282,8 @@
import color from '../../../../uni_modules/uview-ui/libs/config/color'
import config from '../../../../config/common'
import {
getEnum
getEnum,
GetEnumAnyOrder
} from '../../../../services/common';
export default {
@ -328,13 +330,13 @@
Nav_Risks: [],
Nav_Details: [],
Nav_Files: [],
Nav_FireFiles:[],
Nav_MonitorFiles:[],
Nav_DispatchUser:{
Nav_FireFiles: [],
Nav_MonitorFiles: [],
Nav_DispatchUser: {
NAME: ''
},
},
listPropUpload: ['PRE_SHIFT_MEETING_RECORD_ID'],
listPropValUpload: [],
@ -363,49 +365,22 @@
...this.$store.state.auditModel,
TaskID: option.taskID ? option.taskID : ''
}
this.fetchEnums(['HMOperationTaskAuditEnum', 'SKEvaluateLevelEnum', 'FOJobStepEnum','FOYesOrNoEnum']);
this.fetchEnums(['HMOperationTaskAuditEnum', 'SKEvaluateLevelEnum', 'FOJobStepEnum', 'FOYesOrNoEnum']);
},
methods: {
async 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 //
}))
};
});
});
//
const results = await Promise.all(enumPromises);
// data
results.forEach(({
enumName,
data
}) => {
this.enumsData[enumName] = data;
//
this.enumsText[enumName] = data.map(item => item.name);
});
// loadData
fetchEnums(enumNames) {
var dataParm = {
'name': enumNames.join('|')
}
GetEnumAnyOrder(dataParm).then(res => {
let newd = transformData(res, enumNames)
this.enumsData = newd[0];
//
this.enumsText = newd[1]
this.loadData();
this.loadAuditData()
} catch (error) {
console.error('枚举请求失败:', error);
uni.showToast({
title: '枚举数据加载失败',
icon: 'none'
});
}
})
},
loadData() {
const orgId = uni.getStorageSync('orgId')

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

@ -62,10 +62,12 @@
import {
extendInclude,
extendRule,
initFilter
initFilter,
transformData
} from '../../../../utils/common'
import {
getEnum
getEnum,
GetEnumAnyOrder
} from '../../../../services/common';
export default {
@ -90,48 +92,20 @@
}
},
onLoad() {
this.fetchEnums(['SETrainNotifyStatus','PlanCheckType']);
this.fetchEnums(['SETrainNotifyStatus', 'PlanCheckType']);
},
methods: {
async 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 //
}))
};
});
});
//
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'
});
fetchEnums(enumNames) {
var dataParm = {
'name': enumNames.join('|')
}
GetEnumAnyOrder(dataParm).then(res => {
let newd = transformData(res, enumNames)
this.enumsData = newd[0];
//
this.enumsText = newd[1]
this.loadData();
})
},
handleSearch(obj) {
this.keyword = obj.value
@ -162,7 +136,7 @@
...i,
title: i.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') {
let arr = []
arr.push('全部')
this.enumsText['SETrainNotifyStatus'].map(item=>{
arr.push(item)
})
column =arr
this.enumsText['SETrainNotifyStatus'].map(item => {
arr.push(item)
})
column = arr
}
this.comPickerInfo = {
showPicker: true,
@ -220,7 +194,7 @@
if (e.value[0] == '全部') {
this.filterStatus = null
} 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]
}

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

@ -273,7 +273,8 @@
guid,
initFilter,
initFilterGroup,
handleOriginalArray
handleOriginalArray,
transformData
} from '../../../../utils/common'
import {
FMProductionUnit,
@ -286,7 +287,8 @@
MineTypeName
} from '../../../../utils/enums.js'
import {
getEnum
getEnum,
GetEnumAnyOrder
} from '../../../../services/common';
import {
DouPreGet,
@ -430,48 +432,20 @@
...this.$store.state.auditModel,
TaskID: option.taskID ? option.taskID : ''
}
this.fetchEnums(['SKHiddenLevel', 'SKProductionUnit', 'SKEvaluateLevelEnum', 'SKPLANCHECKFREQUENCYEnum', 'SKDepartmentTypeEnum']);
this.fetchEnums(['SKHiddenLevel', 'SKProductionUnit', 'SKEvaluateLevelEnum', 'SKPLANCHECKFREQUENCYEnum', 'SKDepartmentTypeEnum']);
},
methods: {
async 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 //
}))
};
});
});
//
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'
});
fetchEnums(enumNames) {
var dataParm = {
'name': enumNames.join('|')
}
GetEnumAnyOrder(dataParm).then(res => {
let newd = transformData(res, enumNames)
this.enumsData = newd[0];
//
this.enumsText = newd[1]
this.loadData();
})
},
loadData() {
// const json = {}
@ -550,8 +524,10 @@
}
if (item2.Nav_DetailMeasureContentPosts && item2.Nav_DetailMeasureContentPosts.length > 0) {
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_TYPEName = item3.CHECK_TYPE !== undefined ? this.enumsData['SKDepartmentTypeEnum'].find(item4 => item4.code === item3.CHECK_TYPE).name : '';
item3.CHECK_CYCLEName = item3.CHECK_CYCLE !== undefined ? this.enumsData['SKPLANCHECKFREQUENCYEnum'].find(item4 => item4.code === item3
.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) {
let areaShow = ''
item3.Nav_DetailPosts.map(o => { //
@ -568,7 +544,8 @@
item3.Nav_Question = item3.Nav_Question ? item3.Nav_Question : {
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,
guid,
initFilter,
initFilterGroup
initFilterGroup,
transformData
} from '../../../../utils/common'
import {
FMProductionUnit,
@ -75,10 +76,11 @@
import config from '../../../../config/common.js'
import stepTitle from '@/components/custom/step-title.vue'
import {
getEnum
getEnum,
GetEnumAnyOrder
} from '../../../../services/common';
export default {
components: {
components: {
stepTitle,
},
data() {
@ -150,7 +152,7 @@
ID: guid(),
ORG_ID: this.ORG_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,
size: this.thisRiskUp[0].tempFiles[0].size,
remoteId: option.IMG_FILE_ID,
@ -171,7 +173,7 @@
IMG_FILE_ID: i.IMG_FILE_ID,
ID: guid(),
ORG_ID: this.ORG_ID,
name: i.tempFiles[0].name||'附件',
name: i.tempFiles[0].name || '附件',
path: i.tempFiles[0].path,
size: i.tempFiles[0].size,
remoteId: i.IMG_FILE_ID,
@ -186,45 +188,17 @@
}
},
methods: {
async 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 //
}))
};
});
});
//
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'
});
fetchEnums(enumNames) {
var dataParm = {
'name': enumNames.join('|')
}
GetEnumAnyOrder(dataParm).then(res => {
let newd = transformData(res, enumNames)
this.enumsData = newd[0];
//
this.enumsText = newd[1]
this.loadData();
})
},
loadData() {
if (this.ID == undefined || this.ID == '') {

View File

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

View File

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

View File

@ -84,7 +84,8 @@
extendIgnoreDataRule,
guid,
initFilter,
initFilterGroup
initFilterGroup,
transformData
} from '../../../../utils/common'
import {
FMProductionUnit,
@ -101,7 +102,8 @@
} from '../../../../services/apply/subPages/SK/SKServices.js'
import stepTitle from '@/components/custom/step-title.vue'
import {
getEnum
getEnum,
GetEnumAnyOrder
} from '../../../../services/common';
export default {
components: {
@ -187,45 +189,17 @@
// this.loadData()
},
methods: {
async 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 //
}))
};
});
});
//
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'
});
fetchEnums(enumNames) {
var dataParm = {
'name': enumNames.join('|')
}
GetEnumAnyOrder(dataParm).then(res => {
let newd = transformData(res, enumNames)
this.enumsData = newd[0];
//
this.enumsText = newd[1]
this.loadData();
})
},
loadData() {
if (this.ID == undefined || this.ID == '') {
@ -336,7 +310,7 @@
handleSelectedArea(val) {
// this.model = val
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.CODE = val.CODE
this.model.Nav_RectifyPhotoas = val.Nav_RectifyPhotoas ? val.Nav_RectifyPhotoas : []
@ -345,7 +319,7 @@
this.model.HIDDEN_PLACE = val.HIDDEN_PLACE
this.model.HIDDEN_LEVEL = val.HIDDEN_LEVEL
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
},

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

@ -50,69 +50,66 @@
<view style="position: absolute;left: -10px;color: #3d4b70;top: -3px;">*</view>
</view>
<view style="font-size: 15px; font-weight: bold;color: #3d4b70;margin-bottom: 10px;margin-top: 20px;">隐患内容</view>
<uni-collapse :border="false" accordion>
<view v-for="(item, index) in model.Nav_RectifyDetails" :key="index">
<uni-collapse-item title-border="none" :border="false">
<template v-slot:title>
<view class="uni-collapse-item__title-box">
<view class="uni-collapse-item__title-text">
{{item.Nav_RiskArea?index+1+'.'+item.Nav_RiskArea.NAME:index+1+'.'}}
<!-- <span v-if="item.Nav_RecitifyUser && item.Nav_RecitifyUser.NAME">
<uni-collapse :border="false" accordion>
<view v-for="(item, index) in model.Nav_RectifyDetails" :key="index">
<uni-collapse-item title-border="none" :border="false">
<template v-slot:title>
<view class="uni-collapse-item__title-box">
<view class="uni-collapse-item__title-text">
{{item.Nav_RiskArea?index+1+'.'+item.Nav_RiskArea.NAME:index+1+'.'}}
<!-- <span v-if="item.Nav_RecitifyUser && item.Nav_RecitifyUser.NAME">
{{ item.Nav_RecitifyUser.NAME}}
</span> -->
</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>
</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>
</uni-collapse-item>
</view>
</uni-collapse>
</uni-collapse-item>
</view>
</uni-collapse>
</u--form>
<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>
@ -132,7 +129,8 @@
extendIgnoreDataRule,
guid,
initFilter,
initFilterGroup
initFilterGroup,
transformData
} from '../../../../utils/common'
import {
MineTypeIndex,
@ -144,7 +142,8 @@
} from '../../../../services/apply/subPages/SK/SKServices.js'
import stepTitle from '@/components/custom/step-title.vue'
import {
getEnum
getEnum,
GetEnumAnyOrder
} from '../../../../services/common';
export default {
components: {
@ -200,52 +199,24 @@
},
onLoad(option) {
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.tableKey = option.tableKey ? option.tableKey : '0'
this.isAudit = option.isAudit
this.fetchEnums(['SKProductionUnit', 'SKPLANCHECKFREQUENCYEnum', 'SKDepartmentTypeEnum', 'SKHiddenLevel']);
},
methods: {
async 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 //
}))
};
});
});
//
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'
});
fetchEnums(enumNames) {
var dataParm = {
'name': enumNames.join('|')
}
GetEnumAnyOrder(dataParm).then(res => {
let newd = transformData(res, enumNames)
this.enumsData = newd[0];
//
this.enumsText = newd[1]
this.loadData();
})
},
loadData() {
// const json = {}
@ -291,6 +262,4 @@
<style scoped>
@import url("../../../../style/css/newTemplate.css");
</style>

View File

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

View File

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

View File

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

View File

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

View File

@ -12,20 +12,20 @@
<u-form-item label="审核意见:" prop="CONTEXT" borderBottom v-if="model.STATUS==40">
</u-form-item>
<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>
</u-form-item>
<!-- <u-form-item label="辨识与评估内容:">
</u-form-item>
<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>
<!-- <u-icon style="margin-left: 4px;" slot="right" name="arrow-down" size="12">
</u-icon> -->
</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>
<!-- <u-icon style="margin-left: 4px;" slot="right" name="arrow-down" size="12">
@ -213,7 +213,8 @@
guid,
initFilter,
initFilterGroup,
handleOriginalArray
handleOriginalArray,
transformData
} from '../../../../utils/common'
import {
FMProductionUnit,
@ -239,7 +240,8 @@
GetScorec
} from '../../../../services/apply/subPages/SK/SKServices.js'
import {
getEnum
getEnum,
GetEnumAnyOrder
} from '../../../../services/common';
import {
getRequest,
@ -302,7 +304,7 @@
},
EVALUATE_SCORE: 0,
EVALUATE_LEVEL: '',
EVALUATE_LEVELName:'',
EVALUATE_LEVELName: '',
Nav_DetailDeparts: [],
Nav_DetailMeasures: [],
isShowControl: false,
@ -350,45 +352,17 @@
this.fetchEnums(['SKProductionUnit', 'SKEvaluateLevelEnum', 'SKDepartmentTypeEnum']);
},
methods: {
async 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 //
}))
};
});
});
//
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'
});
fetchEnums(enumNames) {
var dataParm = {
'name': enumNames.join('|')
}
GetEnumAnyOrder(dataParm).then(res => {
let newd = transformData(res, enumNames)
this.enumsData = newd[0];
//
this.enumsText = newd[1]
this.loadData();
})
},
loadData() {
// const json = {}
@ -449,7 +423,7 @@
this.model.Nav_Details = [...this.model.Nav_Details]
},
handleChangeUnit(name,item) {
handleChangeUnit(name, item) {
this.comPickerInfo = {
showSheet: true,
columns: [this.enumsText[name]],
@ -462,12 +436,12 @@
if (this.comPickerInfo.name == 'SKProductionUnit') {
this.comPickerInfo.dataItem.MineTypeName = e.value[0]
this.comPickerInfo.dataItem.MineType = this.enumsData['SKProductionUnit'][e.indexs[0]].code
} else if (this.comPickerInfo.name == 'SKEvaluateLevelEnum') {
this.comPickerInfo.dataItem.EVALUATE_LEVELName = e.value[0]
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_TYPE = this.enumsData['SKDepartmentTypeEnum'][e.indexs[0]].code
}
@ -519,7 +493,7 @@
SCORE: ''
},
EVALUATE_SCORE: 0,
EVALUATE_LEVEL:0,
EVALUATE_LEVEL: 0,
EVALUATE_LEVELName: '低风险',
Nav_DetailDeparts: [],
Nav_DetailMeasures: [],
@ -775,8 +749,9 @@
} else {
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[
realIndex].EVALUATE_LEVELName).code : ''
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[
realIndex].EVALUATE_LEVELName).code : ''
this.$forceUpdate()
},

View File

@ -168,7 +168,8 @@
guid,
initFilter,
initFilterGroup,
handleOriginalArray
handleOriginalArray,
transformData
} from '../../../../utils/common'
import {
FMProductionUnit,
@ -190,7 +191,8 @@
GetDepartmentInfo
} from '../../../../services/apply/subPages/SK/SKServices.js'
import {
getEnum
getEnum,
GetEnumAnyOrder
} from '../../../../services/common';
import {
getRequest,
@ -278,45 +280,17 @@
this.fetchEnums(['SKProductionUnit', 'SKEvaluateLevelEnum', 'SKDepartmentTypeEnum']);
},
methods: {
async 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 //
}))
};
});
});
//
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'
});
fetchEnums(enumNames) {
var dataParm = {
'name': enumNames.join('|')
}
GetEnumAnyOrder(dataParm).then(res => {
let newd = transformData(res, enumNames)
this.enumsData = newd[0];
//
this.enumsText = newd[1]
this.loadData();
})
},
loadData() {
// 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>
</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>
</u--form>
@ -67,20 +67,20 @@
</u-form-item>
<u-form-item required label="整改措施:">
</u-form-item>
<u--textarea v-model="model.RECTIFICATION_MEASURES" placeholder="请填写整改措施" maxlength="-1"></u--textarea>
<u-form-item label="检查层级:" prop="Check_Level" @click="handleChange('SKDepartmentTypeEnum')">
<u--textarea v-model="model.RECTIFICATION_MEASURES" placeholder="请填写整改措施" maxlength="-1"></u--textarea>
<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>
<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-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-icon style="margin-left: 4px;" slot="right" name="arrow-down" size="12">
</u-icon>
</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-icon style="margin-left: 4px;" slot="right" name="arrow-down" size="12">
</u-icon>
@ -126,7 +126,8 @@
extendIgnoreDataRule,
guid,
initFilter,
initFilterGroup
initFilterGroup,
transformData
} from '../../../../utils/common'
import {
FMProductionUnit,
@ -152,7 +153,8 @@
import stepTitle from '@/components/custom/step-title.vue'
import swipeActionItem from '../../../../uni_modules/uview-ui/libs/config/props/swipeActionItem';
import {
getEnum
getEnum,
GetEnumAnyOrder
} from '../../../../services/common';
export default {
components: {
@ -255,48 +257,20 @@
]);
},
methods: {
async 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 //
}))
};
});
});
//
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'
});
fetchEnums(enumNames) {
var dataParm = {
'name': enumNames.join('|')
}
GetEnumAnyOrder(dataParm).then(res => {
let newd = transformData(res, enumNames)
this.enumsData = newd[0];
//
this.enumsText = newd[1]
this.loadData();
})
},
goRiskDes(){
if(!this.model.CHECK_CONTENTS_ID){
goRiskDes() {
if (!this.model.CHECK_CONTENTS_ID) {
uni.showToast({
title: '请先选择检查内容',
icon: 'none'
@ -450,7 +424,7 @@
})
} 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));
}
dataSelect = await CheckTypeNewOrderPaged(json).then(res => {
@ -536,7 +510,7 @@
})
return
}
if (!this.model.Nav_RiskArea||!this.model.Nav_RiskArea.NAME) {
if (!this.model.Nav_RiskArea || !this.model.Nav_RiskArea.NAME) {
uni.showToast({
title: '请选择检查区域',
icon: 'none'
@ -550,22 +524,22 @@
})
return
}
if (!this.model.Nav_Contents||!this.model.Nav_Contents.CHECKCONTENT) {
if (!this.model.Nav_Contents || !this.model.Nav_Contents.CHECKCONTENT) {
uni.showToast({
title: '请选择检查内容',
icon: 'none'
})
return
}
if (!this.model.Nav_Question||!this.model.Nav_Question.DESCREPTION) {
if (!this.model.Nav_Question || !this.model.Nav_Question.DESCREPTION) {
uni.showToast({
title: '请选择隐患描述',
icon: 'none'
})
return
}
if(!this.model.RECTIFICATION_MEASURES){
if (!this.model.RECTIFICATION_MEASURES) {
uni.showToast({
title: '请填写整改措施',
icon: 'none'
@ -579,7 +553,7 @@
})
return
}
// if (!this.model.DEPARTMENT_TYPEName) {
// uni.showToast({
// title: '',
@ -601,7 +575,7 @@
// })
// return
// }
if (!this.model.Nav_RecitifyUser||!this.model.Nav_RecitifyUser.NAME) {
if (!this.model.Nav_RecitifyUser || !this.model.Nav_RecitifyUser.NAME) {
uni.showToast({
title: '请选择整改责任人',
icon: 'none'

View File

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

View File

@ -118,7 +118,8 @@
extendIgnoreDataRule,
guid,
initFilter,
initFilterGroup
initFilterGroup,
transformData
} from '../../../../utils/common'
import {
MineTypeIndex,
@ -129,7 +130,8 @@
SKHiddenDangerIdentityUpdate
} from '../../../../services/apply/subPages/SK/SKServices.js'
import {
getEnum
getEnum,
GetEnumAnyOrder
} from '../../../../services/common';
import stepTitle from '@/components/custom/step-title.vue'
export default {
@ -209,45 +211,17 @@
// this.loadData()
},
methods: {
async 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 //
}))
};
});
});
//
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'
});
fetchEnums(enumNames) {
var dataParm = {
'name': enumNames.join('|')
}
GetEnumAnyOrder(dataParm).then(res => {
let newd = transformData(res, enumNames)
this.enumsData = newd[0];
//
this.enumsText = newd[1]
this.loadData();
})
},
loadData() {
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>
<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>
<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>
</u-form-item>
<u-form-item label="检查周期:" prop="PLANCHECKFREQUENCYName" @click="handleChange('SKPLANCHECKFREQUENCYEnum')">
<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-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>
</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-form-item label="检查周期:" prop="PLANCHECKFREQUENCYName" @click="handleChange('SKPLANCHECKFREQUENCYEnum')">
<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-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-form-item>
<u-form-item required label="检查时间:" prop="CHECK_TIME" @click="handleChangeDate()">
@ -138,7 +138,8 @@
guid,
initFilter,
initFilterGroup,
extendIgnoreDataRule
extendIgnoreDataRule,
transformData
} from '../../../../utils/common'
import {
FMProductionUnit,
@ -155,7 +156,8 @@
CheckTypeNewOrderPaged
} from '../../../../services/apply/subPages/SK/SKServices.js'
import {
getEnum
getEnum,
GetEnumAnyOrder
} from '../../../../services/common';
import {
getRequest,
@ -236,45 +238,17 @@
this.fetchEnums(['SKProductionUnit', 'SKPLANCHECKFREQUENCYEnum', 'SKDepartmentTypeEnum']);
},
methods: {
async 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 //
}))
};
});
});
//
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'
});
fetchEnums(enumNames) {
var dataParm = {
'name': enumNames.join('|')
}
GetEnumAnyOrder(dataParm).then(res => {
let newd = transformData(res, enumNames)
this.enumsData = newd[0];
//
this.enumsText = newd[1]
this.loadData();
})
},
loadData() {
@ -283,7 +257,7 @@
this.model.Nav_Details = []
if (this.ID == undefined || this.ID == '')
this.ID = guid()
this.model.ID = this.ID
this.model.ID = this.ID
} else {
const orgId = uni.getStorageSync('orgId')
const json = initFilter(orgId, "", "")
@ -355,7 +329,7 @@
this.stepsPageList = this.stepsPageList - 1
},
handleChange(name) {
console.log(this.enumsData[name],'mnn')
console.log(this.enumsData[name], 'mnn')
this.comPickerInfo = {
showSheet: true,
columns: [this.enumsData[name]],
@ -373,7 +347,7 @@
this.model.DEPARTMENT_TYPEName = e.value[0].name
this.model.DEPARTMENT_TYPE = this.enumsData['SKDepartmentTypeEnum'][e.indexs[0]].code
}
this.comPickerInfo = {
showSheet: false,
columns: [],
@ -555,14 +529,14 @@
}
return res.Data
})
}else if(p.name =='Nav_CheckType'){
} else if (p.name == 'Nav_CheckType') {
if (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));
}
dataSelect = await CheckTypeNewOrderPaged(json).then(res => {
this.selectorInfo.totalCount = res.TotalCount
if (res != undefined && res.Data.length > 0) {
@ -616,8 +590,7 @@
} else if (this.selectorInfo.name == 'Nav_Contents') {
this.model.Nav_CheckNoticeDetails[realIndex].Nav_Contents = e;
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.CHECK_TYPE_ID = e.ID;
}

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

@ -71,6 +71,28 @@ export const dateFormat = (fmt, date) => {
};
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) {
const hours = Math.floor(seconds / 3600);
const minutes = Math.floor((seconds % 3600) / 60);