lanan-old/detection-business/pages/manage/informationAdd.vue
愉快的大福 7dc28dc701 init
2024-07-17 14:16:22 +08:00

390 lines
8.1 KiB
Vue

<!-- 发起订单 -->
<template>
<view class="content">
<view class="c-top">
<view class="" @click="getback()">
<uni-icons type="left" size="18"></uni-icons>
</view>
<view class="c-title" v-if="type == 'add'">新增设备</view>
<view class="c-title" v-if="type == 'edit'">编辑设备</view>
<view class=""></view>
</view>
<view class="dil">
<view class="tinput">
<view class="text1" > <text class="hong1">*</text> 设备名称</view>
<view class="you">
<input type="text" placeholder="请输入设备名称" v-model="box.equName">
</view>
</view>
<view class="tinput">
<view class="text1" > <text class="hong1">*</text> 设备型号</view>
<view class="you">
<input type="text" placeholder="请输入设备型号" v-model="box.equModel">
</view>
</view>
<view class="tinput">
<view class="text1" > <text class="hong1">*</text> 设备编号</view>
<view class="you">
<input type="text" placeholder="请输入设备编号" v-model="box.equNumber">
</view>
</view>
<view class="tinput">
<view class="text1" > <text class="hong1">*</text> 设备检定周期</view>
<view class="you">
<input type="text" placeholder="请输入设备检定周期" v-model="box.equZq">
</view>
</view>
<view class="tinput">
<view class="text1" > <text class="hong1">*</text> 上次检定单位</view>
<view class="you">
<input type="text" placeholder="请输入上次检定单位" v-model="box.lastUnit">
</view>
</view>
<view class="tinput" >
<view class="text1"> <text class="hong1">*</text> 有效期</view>
<!-- validTime -->
<view class="you" @click="show = true ">
<text>{{time|| ''}}</text>
</view>
</view>
<view class="tinput" >
<view class="text1"> <text class="hong1">*</text> 下次检定时间</view>
<!-- nextCheckTime -->
<view class="you" @click="show1 = true ">
<text>{{time1|| ''}}</text>
</view>
</view>
<u-datetime-picker
:show="show"
v-model="box.validTime"
@cancel="cancels"
@confirm="confirms"
mode="date"
return-type='string'
></u-datetime-picker>
<u-datetime-picker
:show="show1"
v-model="box.nextCheckTime"
@cancel="cancels1"
@confirm="confirms1"
mode="date"
return-type='string'
></u-datetime-picker>
<view class="anniu" @click="getnewsadd()">
<text>保存</text>
</view>
<view style="width: 100%; height: 60px;"></view>
</view>
</view>
</template>
<script>
import request from '../../utils/request'
import config from '@/config'
import { getToken } from '@/utils/auth'
import upload from '@/utils/upload.js'
var wvCurrent;
export default{
data(){
return{
time:'请选择有效期',
time1:'请选择下次检定时间',
value1:'2023-10-10',
baseUrl:this.$baseUrl,
show:false,
show1:false,
fileId:null,
id:'',
type:'add',
box:{},
}
},
onLoad(option) {
this.type = option.type
if(option.type == 'edit'){
this.box.id = option.id
}
},
onShow() {
if(this.type == 'edit') this.getDetail();
},
methods:{
async getDetail(){
let res = await request({
url: '/system/equInfo/'+this.box.id,
method: 'get'
})
if(res.code == 200){
this.box = res.data
// this.maneizhi = this.box.type
this.time = this.box.validTime
this.time1 = this.box.nextCheckTime
}
},
cancels(){
this.show = false
},
cancels1(){
this.show1 = false
},
confirms(e){
console.log(e);
var timestamp = e.value;
var date = new Date(timestamp);
var year = date.getFullYear();
var month = ("0" + (date.getMonth() + 1)).slice(-2);
var day = ("0" + date.getDate()).slice(-2);
var formattedDate = year + "-" + month + "-" + day;
console.log(formattedDate);
this.box.validTime = formattedDate
this.time = formattedDate
this.show = false
},
confirms1(e){
console.log(e);
var timestamp = e.value;
var date = new Date(timestamp);
var year = date.getFullYear();
var month = ("0" + (date.getMonth() + 1)).slice(-2);
var day = ("0" + date.getDate()).slice(-2);
var formattedDate = year + "-" + month + "-" + day;
console.log(formattedDate);
this.box.nextCheckTime = formattedDate
this.time1 = formattedDate
this.show1 = false
},
//发布按钮
async getnewsadd(){
// if(this.box.filePath==''||this.box.fileName==''||this.box.warnTime==''){
// uni.showToast({
// title:'必填项不能有空!',
// icon:'none'
// })
console.log(this.box,'this.box');
if(this.type == 'add'){
let res = await request({
url: '/system/equInfo/add',
method: 'post',
data:this.box
})
if(res.code == 200){
uni.showToast({
title:'发布成功'
})
setTimeout(() => {
uni.navigateBack({
delta: 1
});
}, 1000);
}
}
if(this.type == 'edit'){
let res = await request({
url: '/system/equInfo/edit',
method: 'post',
data:this.box
})
if(res.code == 200){
uni.showToast({
title:'发布成功'
})
setTimeout(() => {
uni.navigateBack({
delta: 1
});
}, 1000);
}
}
},
getback(){
uni.navigateBack({
delta:1,
})
},
}
}
</script>
<style scoped lang="scss">
.content{
width: 100%;
height: calc(100vh);
background-color: #F6F6F6;
box-sizing: border-box;
// padding-top: 45px;
}
.dil{
box-sizing: border-box;
background-color: #F6F6F6;
padding: 0px 12px;
}
.top-icon{
margin-bottom: 45px;
}
.c-top{
width: 100%;
box-sizing: border-box;
padding: 15px;
display: flex;
justify-content: space-between;
align-items: center;
background-color: white;
padding-top: 40px;
}
.c-title{
font-size: 18px;
font-weight: bold
}
.top{
box-sizing: border-box;
padding: 0px 15px;
width: 100%;
background-color: white;
}
.top-box{
display: flex;
justify-content: space-between;
align-items: center;
box-sizing: border-box;
padding: 20px 0px;
}
.tb-left{
height: 100%;
width: 80%;
display: flex;
align-items: center;
}
.uicon{
width: 18px;
height: 18px;
border-radius: 4px;
color: white;
background: orangered;
display: flex;
justify-content: center;
align-items: center;
font-size: 12px;
font-weight: bold;
margin-right: 6px;
}
.tb-right{
width: 20px;
height: 26px;
image{
width: 100%;
height: 100%;
}
}
.text1{
font-size: 16px;
font-weight: bold;
color: #363636;
}
.hong1{
margin-top: 5px;
font-size: 12px;
font-weight: 400;
color: #FF5453;
}
.hong2{
margin-top: 5px;
font-size: 12px;
font-weight: 400;
}
.tinput{
width: 100%;
display: flex;
background: white;
align-items: center;
justify-content: space-between;
box-sizing: border-box;
padding: 16px;
margin-top: 14px;
margin-bottom: 14px;
}
.xinput{
width: 100%;
background: white;
box-sizing: border-box;
padding: 16px;
margin-top: 14px;
}
.you{
text-align: right;
}
.xz{
margin-top: 10px;
display: flex;
align-items: center;
}
.kuang{
width: 80px;
height: 23px;
background: #ECECEC;
border-radius: 5px;
display: flex;
justify-content: center;
align-items: center;
color: #666666;
font-size: 14px;
margin-right: 15px;
}
.xlan{
background: #CDE7FF !important;
color: #1D62FF !important;
border: 1px solid #2A96FE;
}
.anniu{
width: 100%;
background: linear-gradient(180deg, #3F61C0 0%, #0D2E8D 100%);
border-radius: 50px ;
height: 40px;
display: flex;
justify-content: center;
align-items: center;
color: #542F0E;
margin-top: 20px;
color: white;
}
button::after {
border: none;
}
</style>