193 lines
5.6 KiB
Vue
193 lines
5.6 KiB
Vue
<!-- 问题整改反馈 -->
|
|
<template>
|
|
<view class="PageBox">
|
|
<view class="TopBox FlexBox">
|
|
<view class="iconBox FlexBox">
|
|
<u-icon name="arrow-leftward" size="24" @click="goBack"></u-icon>
|
|
</view>
|
|
<view class="Title">问题整改反馈</view>
|
|
<view class="informBox"> </view>
|
|
</view>
|
|
<view class="ContentBox">
|
|
<view class="ListBox">
|
|
<view class="h2Box">问题详情</view>
|
|
<view class="ListItem">
|
|
<view class="LabelBox">问题描述</view>
|
|
<view class="ValueBox">
|
|
<u-input v-model="problemDesc" placeholder="请输入问题描述" disabled></u-input>
|
|
</view>
|
|
</view>
|
|
<view class="ListItem">
|
|
<view class="LabelBox">反馈人</view>
|
|
<view class="ValueBox">
|
|
<u-input v-model="feedbackPerson" placeholder="请输入反馈人" disabled></u-input>
|
|
</view>
|
|
</view>
|
|
<view class="ListItem">
|
|
<view class="LabelBox">反馈时间</view>
|
|
<view class="ValueBox">
|
|
<u-input v-model="feedbackTime" placeholder="请输入反馈时间" disabled></u-input>
|
|
</view>
|
|
</view>
|
|
<view class="ListItem">
|
|
<view class="LabelBox">现场照片</view>
|
|
<view class="ValueBox FlexBox">
|
|
<u-image url="https://img.yzcdn.cn/vant/user-avatar.png" width="100rpx"
|
|
height="100rpx"></u-image>
|
|
</view>
|
|
</view>
|
|
<view class="ListItem">
|
|
<view class="LabelBox">反馈时间</view>
|
|
<view class="ValueBox">
|
|
<u-input v-model="feedbackTime" placeholder="请输入反馈时间" disabled></u-input>
|
|
</view>
|
|
</view>
|
|
<view class="h2Box">整改内容</view>
|
|
<view class="ListItem">
|
|
<view class="LabelBox mustBox">整改措施描述</view>
|
|
<view class="ValueBox">
|
|
<u-textarea v-model="reformDesc" placeholder="请输入整改措施描述"></u-textarea>
|
|
</view>
|
|
</view>
|
|
<view class="ListItem">
|
|
<view class="LabelBox mustBox">整改完成照片</view>
|
|
<view class="ValueBox">
|
|
<u-upload v-model="reformPhoto" :max-count="1" :auto-upload="false" :preview-size="100"
|
|
@change="handleChange"></u-upload>
|
|
</view>
|
|
</view>
|
|
<view class="ListItem">
|
|
<view class="LabelBox mustBox">整改完成时间</view>
|
|
<view class="ValueBox">
|
|
<up-datetime-picker hasInput :show="showTimePicker" v-model="reformTime"
|
|
mode="datetime" @change="handleTimePicker"></up-datetime-picker>
|
|
</view>
|
|
|
|
</view>
|
|
</view>
|
|
</view>
|
|
<view class="FootBox">
|
|
<u-button type="primary" plain>保存草稿</u-button>
|
|
<u-button type="primary">提交检查项</u-button>
|
|
</view>
|
|
</view>
|
|
</template>
|
|
<script setup>
|
|
import dayjs from 'dayjs'
|
|
import { ref } from 'vue'
|
|
|
|
// 整改措施描述
|
|
const reformDesc = ref('')
|
|
// 整改完成照片
|
|
const reformPhoto = ref([])
|
|
// 整改完成时间
|
|
const reformTime = ref('')
|
|
// 时间选择器
|
|
const showTimePicker = ref(false)
|
|
|
|
// 时间选择器回调
|
|
const handleTimePicker = (e) => {
|
|
showTimePicker.value = false
|
|
reformTime.value = dayjs(e.detail).format('YYYY-MM-DD HH:mm')
|
|
}
|
|
|
|
|
|
|
|
// 返回列表页
|
|
const goBack = () => {
|
|
uni.navigateBack({
|
|
delta: 1
|
|
})
|
|
}
|
|
</script>
|
|
|
|
<style lang="scss" scoped>
|
|
.h2Box {
|
|
font-size: 32rpx;
|
|
font-weight: bold;
|
|
color: #333;
|
|
margin-top: 20rpx;
|
|
}
|
|
|
|
.mustBox::after {
|
|
content: '*';
|
|
color: red;
|
|
margin-left: 5rpx;
|
|
}
|
|
|
|
.FlexBox {
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: space-between;
|
|
gap: 20rpx;
|
|
}
|
|
|
|
.PageBox {
|
|
background-color: #ff9900;
|
|
height: 100vh;
|
|
overflow: hidden;
|
|
|
|
.TopBox {
|
|
height: 100rpx;
|
|
padding: 20rpx;
|
|
background-color: #fff;
|
|
|
|
.iconBox {
|
|
font-size: 32rpx;
|
|
}
|
|
|
|
.Title {
|
|
font-size: 32rpx;
|
|
font-weight: bold;
|
|
color: #333;
|
|
}
|
|
|
|
.informBox {
|
|
.MsgTxt {
|
|
padding: 8rpx;
|
|
background-color: hsla(17, 100%, 50%, 0.849);
|
|
color: #fff;
|
|
position: absolute;
|
|
top: 16rpx;
|
|
right: 16rpx;
|
|
border-radius: 50%;
|
|
}
|
|
}
|
|
}
|
|
|
|
.ContentBox {
|
|
background-color: #c5d5d6;
|
|
height: calc(100vh - 250rpx);
|
|
overflow: hidden;
|
|
}
|
|
|
|
.FootBox {
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: space-between;
|
|
height: 150rpx;
|
|
gap: 20rpx;
|
|
padding: 20rpx;
|
|
background-color: #fff;
|
|
font-weight: bold;
|
|
}
|
|
}
|
|
|
|
.ListBox {
|
|
height: 100%;
|
|
padding: 20rpx;
|
|
background-color: #fff;
|
|
overflow: auto;
|
|
|
|
.ListItem {
|
|
margin-bottom: 20rpx;
|
|
|
|
.LabelBox {
|
|
font-weight: bold;
|
|
font-size: 28rpx;
|
|
color: #333;
|
|
margin-bottom: 10rpx;
|
|
}
|
|
}
|
|
}
|
|
</style> |