jy-safe-app/pages/apply/subPages/FO/1preShiftMeetingShow.vue

199 lines
6.0 KiB
Vue
Raw Normal View History

2025-10-14 15:17:30 +08:00
<template>
<view style="padding-bottom: 80px;">
<view class="card">
<view class="background"></view>
<u--form labelPosition="left" labelWidth="auto" labelAlign="center" :model="model" class="demo-ruleForm">
<u-form-item label="会议时间:" prop="MEETING_TIME" borderBottom>
<u--input v-model="model.MEETING_TIME" border="none" slot="right" inputAlign="right" disabled
disabledColor="#ffffff" fontSize="14px"></u--input>
</u-form-item>
<u-form-item label="班组名称:" prop="Nav_Team.NAME" borderBottom>
<u--input v-model="model.Nav_Team.NAME" border="none" slot="right" inputAlign="right" disabled
disabledColor="#ffffff" fontSize="14px"></u--input>
</u-form-item>
<u-form-item label="班次:" prop="Nav_Class.NAME" borderBottom>
<u--input v-if="model.Nav_Class" v-model="model.Nav_Class.NAME" border="none" slot="right" inputAlign="right" disabled
disabledColor="#ffffff" fontSize="14px"></u--input>
</u-form-item>
<u-form-item label="班组长/主持人:" prop="Nav_User.NAME" borderBottom>
<u--text :text="model.Nav_User.NAME" align="right" size='14'></u--text>
<!-- <u&#45;&#45;input v-model="model.Nav_User.NAME" border="none" slot="right" inputAlign="right" disabled-->
<!-- disabledColor="#ffffff"></u&#45;&#45;input>-->
</u-form-item>
<u-form-item label="参会人员:" prop="UserNames" >
</u-form-item>
<rich-text autoHeight v-html="model.UserNames" border="none" disabled class="richtext"></rich-text>
<u-form-item label="班组当班工作内容:" prop="JOB_CONTENT" >
</u-form-item>
<u--textarea autoHeight v-model="model.JOB_CONTENT" border="none" inputAlign="right" disabled
disabledColor="#ffffff"></u--textarea>
<u-form-item label="安全注意事项及防护措施:" prop="PROTECT_MEASURE" >
</u-form-item>
<u--textarea autoHeight v-model="model.PROTECT_MEASURE" border="none" inputAlign="right" disabled
disabledColor="#ffffff"></u--textarea>
<u-form-item label="其他内容:" prop="OTHER_CONTENT" >
</u-form-item>
<u--textarea autoHeight v-model="model.OTHER_CONTENT" border="none" inputAlign="right" disabled
disabledColor="#ffffff"></u--textarea>
<view class="upload-title" >附件</view>
<full-upload v-model="model.Nav_Files" :listProp='listPropUpload'
:listPropVal='listPropValUpload' :isShowBtn="false"></full-upload>
</u--form>
</view>
<view class="bottom-button" style="padding: 10px 16px;" v-if="isLoadOK&&tableKey==1">
<u-button type="primary"
@click="onTableBtnAgree" color="#3d4b70">签到</u-button>
</view>
</view>
</template>
<script>
import {
initFilter,
extendRule,
extendInclude
} from '../../../../utils/common'
import {
getRequest,
} from '../../../../services/apply/FOServices/FOServices'
import '../../../../utils/showMsg.js'
import color from '../../../../uni_modules/uview-ui/libs/config/color'
import config from '../../../../config/common'
export default {
data() {
return {
model: {
Nav_Team: "",
Nav_Class: "",
Nav_User: ""
},
listPropUpload: ['PRE_SHIFT_MEETING_RECORD_ID'],
listPropValUpload: [],
TaskID: "",
tableKey: '0',
isLoadOK: false,
}
},
onLoad(option) {
this.model.ID = option.ID;
this.TaskID = option.taskID;
this.tableKey = option.tableKey ? option.tableKey : '0'
this.loadData()
},
methods: {
loadData() {
const orgId = uni.getStorageSync('orgId')
const json = initFilter(orgId, "", "CODE", 1)
extendRule(json, 'ID', 1, this.model.ID);
extendInclude(json, "Nav_Class")
extendInclude(json, "Nav_Team")
extendInclude(json, "Nav_User")
extendInclude(json, 'Nav_Users.Nav_User');
extendInclude(json, 'Nav_Files.Nav_ImgFile');
getRequest(json, "/FO/PreShiftMeetingRecord/Get").then(res => {
this.model = res
//数据组装
let strUserName = ''
if (res.Nav_Users && res.Nav_Users.length > 0) {
for (let i = 0; i < res.Nav_Users.length; i++) {
if (res.Nav_Users[i].DEAL_STATUS == 0) {
strUserName += (strUserName.length > 0 ? " " : "") +
"<view style='color:#E35D58;background-color:rgba(227,93,88,0.2);padding:5px;line-height:20px;white-space:nowrap;'>" +
res.Nav_Users[i].Nav_User.NAME + "</view>";
} else {
strUserName += (strUserName.length > 0 ? " " : "") +
"<text style='padding:5px;line-height:20px;white-space:nowrap;color:#303133'>" +
res.Nav_Users[i].Nav_User.NAME + "</text>";
}
}
}
this.model.UserNames = strUserName;
this.isLoadOK = true;
})
},
onTableBtnAgree() {
let json = {};
json.ID = this.model.ID;
json.TaskID = this.TaskID;
getRequest(json, "/FO/FOPreShiftMeetingRecord/PersonalAgree").then(res => {
if (res) {
uni.$showMsgFunc('操作成功!', () => {
uni.navigateBack()
}, 'success', 1000)
}
})
}
},
computed: {
}
}
</script>
<style>
/* @import url("@/style/css/editTemplate.css"); */
.card {
margin: 20px 16px 80px 16px;
/* border: 1px solid #EBEEF5; */
padding: 20px 30px 80px 30px;
/* box-shadow: rgba(0, 0, 0, 0.08) 0px 0px 3px 1px; */
background-color: #ffffff;
border-radius: 10px;
}
.richtext {
font-size: 14px;
}
.demo-ruleForm>>>.u-form-item__body__left__content__label {
font-size: 14px;
color: #8e8b9c;
/* justify-content: flex-start; */
}
.demo-ruleForm>>>.u-form-item__body__left__content__ {
left: -11px;
top: 0px
}
.demo-ruleForm>>>.u-textarea__field {
font-size: 14px;
}
.demo-ruleForm>>>.u-cell__title-text {
font-size: 14px;
}
.background {
position: fixed;
top: 0;
left: 0;
right: 0;
bottom: 0;
background: #edf1fd;
z-index: -1;
}
.upload-title {
font-size: 14px;
color: #8e8b9c;
line-height: 22px;
padding: 8px 0px;
}
.bottom-button {
position: fixed;
bottom: 0;
left: 0;
width: 100%;
padding: 10px 16px;
box-sizing: border-box;
background: #edf1fd;
z-index: 999;
}
</style>