tangyi 2022-03-31 14:19:40 +08:00
commit d2d47f5355
2 changed files with 160 additions and 232 deletions

View File

@ -20,37 +20,36 @@
<view class="work-order-from">
<view class="li">
<view class="title">工单编号</view>
<input type="text" disabled class="input" value="GD20211203-001" />
</view>
<view class="li">
<view class="title">项目编号</view>
<view class="title flexs">工单编号</view>
<input type="text" disabled class="input" value="GD20211203-001" />
</view>
<view class="li">
<view class="title">项目名称</view>
<view class="title flexs">项目编号</view>
<input type="text" disabled class="input" value="GD20211203-001" />
</view>
<view class="li">
<view class="title flexs">项目名称</view>
<input type="text" disabled class="input input-black" value="湖南省林业科学院11楼会议室P2.5" />
</view>
<view class="li">
<view class="title">产品类型</view>
<view class="title flexs">产品类型</view>
<input type="text" class="input" v-model="productType" placeholder="请填写产品类型" :style="{color: productType!='' ? '#000' : ''}" />
</view>
<view class="li">
<view class="title">安装位置</view>
<input type="text" class="input" v-model="installLocation" placeholder="请填写安装位置" :style="{color: installLocation!='' ? '#000' : ''}" />
<view class="title flexs">安装位置</view>
<input type="text" class="input" v-model="installLocation" placeholder="请填写安装位置(例:详细地址+某某栋11楼会议室)" :style="{color: installLocation!='' ? '#000' : ''}" />
</view>
<view class="li">
<view class="title">故障类型</view>
<input type="text" class="input" v-model="faultType" placeholder="请填写故障类型" :style="{color: faultType!='' ? '#000' : ''}" />
<view class="title flexs">故障类型</view>
<input type="text" class="input" v-model="faultType" placeholder="请填写故障类型(例:供电不足)" :style="{color: faultType!='' ? '#000' : ''}" />
</view>
<view class="li">
<view class="title">紧急程度</view>
<view class="title flexs">紧急程度</view>
<input type="text" disabled class="input" placeholder="" value="紧急" />
</view>
<view class="li">
<view class="title"> 故障说明</view>
<textarea auto-height class="input" v-model="faultExplain" placeholder="请输入故障说明" :style="{color: faultExplain!='' ? '#000' : ''}" />
<view class="title flexs"> 故障说明</view>
<textarea class="input line-h36" v-model="faultExplain" style="height: 110rpx;" placeholder="请输入故障说明" :style="{color: faultExplain!='' ? '#000' : ''}" />
</view>
<view class="li">
<view class="title flexs">故障图片</view>
@ -58,25 +57,27 @@
<view v-for="(item,index) in faultImgList" :key="index" v-if="faultImgList.length!=0">
<image class="img" :src="item" mode="aspectFill" ></image>
</view>
<view v-if="faultImgList.length!=2" @tap="chooseImg" class="img disjcac fon70" style="background-color: #DDDDDD;color: #EEEEEE;">+</view>
<view v-if="faultImgList.length!=2" @tap="chooseImg" class="img disjcac" style="background-color: #DDDDDD;">
<image src="/static/iocn/jia.png" style="width: 80rpx;height: 80rpx;position: relative!important;" lazy-load></image>
</view>
</view>
</view>
</view>
<view class="work-order-from">
<view class="li">
<view class="title"> </view>
<view class="title flexs"> </view>
<input type="text" disabled class="input" placeholder="" value="林某" />
</view>
<view class="li">
<view class="title">报单时间</view>
<view class="title flexs">报单时间</view>
<input type="text" disabled disabled class="input" placeholder="" value="2021/12/3 12:00:05" />
</view>
<view class="li">
<view class="title">服务方式</view>
<input type="text" v-model="serviceMode" class="input input-black" placeholder="请填写服务方式" :style="{color: serviceMode!='' ? '#000' : ''}" />
<view class="title flexs">服务方式</view>
<input type="text" v-model="serviceMode" class="input input-black" placeholder="请填写服务方式(例:上门服务)" :style="{color: serviceMode!='' ? '#000' : ''}" />
</view>
<view class="li">
<view class="title">定位地址</view>
<view class="title flexs">定位地址</view>
<input type="text" disabled class="input" placeholder="定位地址" />
</view>
</view>
@ -98,12 +99,13 @@
},
data() {
return {
productType:'Q2.5-E', //
installLocation:'详细地址+某某栋11楼会议室', //
faultType:'供电不足', //
productType:'', //
installLocation:'', //
faultType:'', //
faultExplain:'', //
faultImgList:[],
faultImgList:[], //
serviceMode: '' ,//
flag:true
}
},
methods: {
@ -119,10 +121,44 @@
})
},
goWorkOrderThree() {
uni.navigateTo({
url: "/pages/workOrder/workorderTwo"
})
}
if(this.checkEmpty()){
if(this.flag) {
this.flag = false;
let params = {
a:this.productType,
b:this.installLocation,
c:this.faultType,
d:this.faultExplain,
f:this.faultImgList.join(','),
e:this.serviceMode
}
console.log(params);
uni.navigateTo({
url: "/pages/workOrder/workorderTwo"
})
}
}
},
//
checkEmpty(){
let result = false;
if(!this.productType) {
this.$toolAll.tools.showToast('请填写产品类型');
} else if(!this.installLocation) {
this.$toolAll.tools.showToast('请填写安装位置');
} else if(!this.faultType) {
this.$toolAll.tools.showToast('请填写故障类型');
} else if(!this.faultExplain) {
this.$toolAll.tools.showToast('请填写故障说明');
} else if(this.faultImgList.length==0) {
this.$toolAll.tools.showToast('请添加故障图片');
} else if(!this.serviceMode) {
this.$toolAll.tools.showToast('请填写服务方式');
} else {
result = true;
}
return result;
}
}
}
</script>
@ -187,9 +223,7 @@
.work-order-from .li .title {
font-size: 26rpx;
width: 133rpx;
/* width: 150rpx; */
}
.work-order-from .li .input {

View File

@ -5,280 +5,155 @@
<view slot="content" returnColor="#c2c2c2" style="margin: -20rpx -25rpx 0rpx;">
<view class="work-order-schedule">
<view class="li">
<view class="icon icon-after">
1
</view>
<view class="text">
签到执行
</view>
<view class="icon icon-after">1</view>
<view class="text">签到执行</view>
</view>
<view class="li">
<view class="icon on icon-after">
2
</view>
<view class="text">
填写维保单
</view>
<view class="icon on icon-after">2</view>
<view class="text">填写维保单</view>
</view>
<view class="li">
<view class="icon">
3
</view>
<view class="text">
结算审核
</view>
<view class="icon">3</view>
<view class="text">结算审核</view>
</view>
</view>
<view class="work-order-from">
<view class="li">
<view class="title">
工单编号
</view>
<input type="text" class="input" placeholder="" value="GD20211203-001" />
</view>
<view class="li">
<view class="title">
项目编号
</view>
<input type="text" class="input" placeholder="" value="XM20211203-001" />
<view class="title">工单编号</view>
<input type="text" class="input" disabled value="GD20211203-001" />
</view>
<view class="li">
<view class="title">
项目名称
</view>
<input type="text" class="input input-black" placeholder="" value="湖南省林业科学院11楼会议室P2.5" />
<view class="title">项目编号</view>
<input type="text" class="input" disabled value="XM20211203-001" />
</view>
<view class="li">
<view class="title">
产品类型
</view>
<input type="text" class="input input-black" placeholder="" value="Q2.5-E" />
<view class="title">项目名称</view>
<input type="text" class="input input-black" disabled value="湖南省林业科学院11楼会议室P2.5" />
</view>
<view class="li">
<view class="title">
安装位置
</view>
<input type="text" class="input input-black" placeholder="" value="详细地址+某某栋11楼会议室" />
<view class="title">产品类型</view>
<input type="text" class="input input-black" disabled value="Q2.5-E" />
</view>
<view class="li">
<view class="title">
故障类型
</view>
<input type="text" class="input input-black" placeholder="" value="供电不足" />
<view class="title">安装位置</view>
<input type="text" class="input input-black" disabled value="详细地址+某某栋11楼会议室" />
</view>
<view class="li">
<view class="title">
服务方式
</view>
<input type="text" class="input input-black" placeholder="" value="上门服务" />
<view class="title">故障类型</view>
<input type="text" class="input input-black" disabled value="供电不足" />
</view>
<view class="li">
<view class="title">
故障说明
</view>
<textarea auto-height class="input input-black"
value="*********************************************************************************************************"
placeholder="" />
<view class="title">服务方式</view>
<input type="text" class="input input-black" disabled value="上门服务" />
</view>
<view class="li">
<view class="title">
故障图片
</view>
<view class="title">故障说明</view>
<textarea auto-height disabled class="input input-black" value="确实供电不足" />
</view>
<view class="li">
<view class="title">故障图片</view>
<view class="input add-display">
<view class="">
<image class="img" src="../../static/del/img001.png" mode="aspectFill"></image>
<image class="img" src="../../static/del/img001.png" mode="aspectFill"></image>
</view>
<view class="add-img">
<image class="icon" src="../../static/iocn/jia.png" mode=""></image>
<image class="img" src="../../static/del/img001.png" mode="aspectFill" lazy-load></image>
<image class="img" src="../../static/del/img001.png" mode="aspectFill" lazy-load></image>
</view>
<!-- <view class="add-img">
<image class="icon" src="../../static/iocn/jia.png" mode="" lazy-load></image>
</view> -->
</view>
</view>
<view class="li">
<view class="title">
开始时间
</view>
<input type="text" class="input " placeholder="" value="2022-01-25 09:39" />
<view class="title">开始时间</view>
<input type="text" disabled class="input" placeholder="请选择开始时间" />
</view>
<view class="li">
<view class="title">
结束时间
</view>
<input type="text" class="input input-black" placeholder="" value="2022-01-25 15:30" />
<view class="title">结束时间</view>
<input type="text" class="input input-black" placeholder="请选择结束时间" />
</view>
<view class="li">
<view class="title">
维保用时
</view>
<input type="text" class="input " placeholder="" value="5小时51分钟" />
<view class="title">维保用时</view>
<input type="text" disabled class="input " placeholder="(例:5小时51分钟)" />
</view>
<view class="li">
<view class="title">
维保费用
</view>
<input type="text" class="input input-black" placeholder="" value="¥500.00元" />
<view class="title">维保费用</view>
<input type="digit" disabled class="input input-black" placeholder="" />
</view>
<view class="li">
<view class="title">
等待时长
</view>
<input type="text" class="input " placeholder="" value="1天6小时35分钟" />
<view class="title">等待时长</view>
<input type="text" disabled class="input" placeholder="请填写等待时长" />
</view>
<view class="li">
<view class="title">
主维保人
</view>
<input type="text" class="input input-black" placeholder="" value="陈志远" />
<view class="title">主维保人</view>
<input type="text" disabled class="input input-black" value="陈志远" />
</view>
<view class="li">
<view class="title">
更换配件
</view>
<view class="rideo">
<view class="title">更换配件</view>
<view class="rideo" style="margin-left: 14rpx;">
<view class="isrideo" @click="isrideoFun(true)">
<view class="icon " :class="isrideo?'on':''">
<view class="icon-content">
</view>
</view>
<view class="">
<view class="icon-content"></view>
</view>
<view class=""></view>
</view>
<view class="isrideo" @click="isrideoFun(false)">
<view class="icon" :class="isrideo?'':'on'">
<view class="icon-content">
</view>
</view>
<view class="">
<view class="icon-content"></view>
</view>
<view class=""></view>
</view>
</view>
</view>
</view>
<view class="work-order-from">
<view class="li">
<view class="title">
工作描述
</view>
<textarea auto-height class="input input-black"
value="*********************************************************************************************************"
placeholder="" />
<view class="title">工作描述</view>
<textarea maxlength="-1" class="input input-black line-h36" placeholder="请填写工作描述" style="height: 110rpx;" />
</view>
<view class="li">
<view class="title">
维保图片
</view>
<view class="title">维保图片</view>
<view class="input add-display">
<view class="">
<image class="img" src="../../static/del/img001.png" mode="aspectFill"></image>
<image class="img" src="../../static/del/img001.png" mode="aspectFill"></image>
<view class="posir" v-if="maintenanceImgList.length!=0" v-for="(item,index) in maintenanceImgList" :key="index">
<image class="img" :src="item" mode="aspectFill" lazy-load></image>
<i @tap="delImg(index)" class="icon icon-del-white posia" style="font-size: 24rpx;top: 10rpx;right: 20rpx;"></i>
</view>
<view class="add-img">
<view class="add-img" @tap="chooseImg">
<image class="icon" src="../../static/iocn/jia.png" mode=""></image>
</view>
</view>
</view>
<view class="li">
<view class="title">
故障原因
</view>
<textarea auto-height class="input input-black"
value="*********************************************************************************************************"
placeholder="" />
<view class="title">故障原因</view>
<textarea maxlength="-1" class="input input-black line-h36" placeholder="请填写故障原因" style="height: 110rpx;" />
</view>
<view class="li">
<view class="title">
维保人员
</view>
<input type="text" class="input input-black" placeholder="" value="罗帅 陈志远" />
<view class="title">维保人员</view>
<input type="text" class="input input-black" placeholder="请填写维保人员" />
</view>
</view>
<view class="cost-breakdown">
<view class="cost-breakdown-title">
<view class="title">
费用明细
</view>
<view @click="addMountingsList()" class="btn">
添加配件
</view>
<view class="title">费用明细</view>
<view @click="addMountingsList()" class="btn">添加配件</view>
</view>
</view>
<view class="cost-breakdown-content">
<view class="title">
<view class="li">
序号
</view>
<view class="li">
配件名称
</view>
<view class="li">
数量
</view>
<view class="li">
价格
</view>
<view class="li">序号</view>
<view class="li">配件名称</view>
<view class="li">数量</view>
<view class="li">价格</view>
</view>
<view class="text" v-for="(item,index) in accessoriesData">
<view class="li">
{{item.id}}
</view>
<view class="li">
{{item.title}}
</view>
<view class="li">
{{item.num}}
</view>
<view class="li">
{{item.price}}
</view>
<view class="li">{{item.id}}</view>
<view class="li">{{item.title}}</view>
<view class="li">{{item.num}}</view>
<view class="li">{{item.price}}</view>
</view>
</view>
<button class="submit-button" @click="goWorkorderTwo()" type="default">下一步</button>
</view>
</container-subgroup-two>
</view>
</template>
@ -316,10 +191,28 @@
price: "430"
},
]
],
maintenanceImgList:[]
}
},
methods: {
//
chooseImg(){
uni.chooseImage({
count:9,
sourceType:['album','camera'],
success: (res) => {
let imgsrc = res.tempFilePaths;
imgsrc.forEach(item=>{
this.maintenanceImgList.push(item);
})
}
})
},
//
delImg(index) {
this.maintenanceImgList.splice(index,1);
},
isrideoFun(is) {
this.isrideo = is
},
@ -406,9 +299,7 @@
.work-order-from .li .title {
font-size: 26rpx;
width: 133rpx;
/* width: 133rpx; */
}
.work-order-from .li .input {
@ -419,13 +310,15 @@
}
.work-order-from .li .input .img {
width: 169rpx;
/* width: 169rpx; */
width: 160rpx;
height: 127rpx;
margin-right: 10rpx;
}
.work-order-from .li .input .add-img {
width: 136rpx;
/* width: 136rpx; */
width: 160rpx;
height: 127rpx;
display: flex;
justify-content: center;
@ -440,6 +333,7 @@
.work-order-from .li .add-display {
display: flex;
flex-wrap: wrap;
}
.work-order-from .li .input-black {