调整我的账户页、工程师工单结算页、提取拨打电话公共方法

master
chen 2022-03-30 16:22:44 +08:00
parent 842a60027b
commit 55be026959
8 changed files with 869 additions and 1143 deletions

View File

@ -33,6 +33,8 @@
.width46{width: 46%;} .width46{width: 46%;}
.width45{width: 45%;} .width45{width: 45%;}
.width33{width: 33%;} .width33{width: 33%;}
.width32{width: 32%;}
.width31{width: 31%;}
.width30{width: 30%;} .width30{width: 30%;}
.width29{width: 29%;} .width29{width: 29%;}
.width28{width: 28%;} .width28{width: 28%;}
@ -48,6 +50,7 @@
.posixzy{position: fixed;left: 0;right: 0;z-index: 2;bottom: 0;} .posixzy{position: fixed;left: 0;right: 0;z-index: 2;bottom: 0;}
.posia-op{position: absolute;top: 0;right: 0;left: 0;bottom: 0;opacity: 0;} .posia-op{position: absolute;top: 0;right: 0;left: 0;bottom: 0;opacity: 0;}
.syxzo{top: 0;left: 0;right: 0;bottom: 0;opacity: 0;} .syxzo{top: 0;left: 0;right: 0;bottom: 0;opacity: 0;}
.position-sticky{position: sticky;top: 40px;z-index: 2;}
.dis{display: flex;} .dis{display: flex;}

View File

@ -113,7 +113,7 @@ const tools = {
str = str.toFixed(2); str = str.toFixed(2);
str = str+''; str = str+'';
} }
return str.includes('.') ? str*1 : str = num + '.00'; return str.includes('.') ? str : str = num + '.00';
}, },
// type:+加、-减、*乘、/除 // type:+加、-减、*乘、/除
// len:小数后保留几位 // len:小数后保留几位
@ -523,7 +523,7 @@ const tools = {
const res = uni.getSystemInfoSync(); const res = uni.getSystemInfoSync();
if(res.platform=='ios'){ if(res.platform=='ios'){
uni.makePhoneCall({ uni.makePhoneCall({
phoneNumber:phone, phoneNumber:phone*1,
success: () => {}, success: () => {},
fail: () => {} fail: () => {}
}) })

View File

@ -77,7 +77,7 @@
this.$requst.post('/universal/api.login/password_find',params).then(res=>{ this.$requst.post('/universal/api.login/password_find',params).then(res=>{
if(res.code==1) { if(res.code==1) {
this.$toolAll.tools.showToast('找回成功'); this.$toolAll.tools.showToast('找回成功');
setTimeout(()=>{uni.navigateBack({delta:1})},1000) setTimeout(()=>{uni.navigateTo({url:'/pages/login/login'})},1000)
} else { } else {
this.$toolAll.tools.showToast(res.msg); this.$toolAll.tools.showToast(res.msg);
} }

View File

@ -437,9 +437,7 @@
}, },
// //
callEv(){ callEv(){
uni.makePhoneCall({ this.$toolAll.tools.countCustomer('15616330510');
phoneNumber: '15616330510'
})
} }
} }
} }

View File

@ -1,10 +1,10 @@
<template> <template>
<view class="content" > <view class="content" >
<statusNav returnColor="#c2c2c2" :navBarTitle="textTitle"></statusNav> <statusNav returnColor="#c2c2c2" navBarTitle="工单详情"></statusNav>
<container-subgroup-two> <container-subgroup-two>
<view slot="content" style="margin:0rpx -25rpx; " :style="{paddingTop:statusBarHeight + 'px'}"> <view slot="content" style="margin:-30rpx -30rpx 0 -30rpx;">
<view class="details-nav" :style="{top:statusBarHeighta + 'px'}"> <view class="details-nav" :style="{top:statusBarHeight + 'px'}">
<view class="li" @click="detailsNavpa(index)" :class="item.state?'on':''" <view class="li pad-sx36" @click="detailsNavpa(index)" :class="item.state?'on':''"
v-for="(item,index) in detailsNav"> v-for="(item,index) in detailsNav">
{{item.title}} {{item.title}}
</view> </view>
@ -15,455 +15,258 @@
<view class="swiper-item uni-bg-red"> <view class="swiper-item uni-bg-red">
<view id="swi1"> <view id="swi1">
<view class="work-order-from"> <view class="work-order-from">
<view class="state"> <view class="state" :style="{backgroundColor: statusColor}">状态{{statusText}}</view>
状态待维修
</view>
<view class="li"> <view class="li">
<view class="title"> <view class="title">工单编号</view>
工单编号 <input type="text" disabled class="input" placeholder="" value="GD20211203-001" />
</view>
<input type="text" class="input" placeholder="" value="GD20211203-001" />
</view> </view>
<view class="li"> <view class="li">
<view class="title"> <view class="title">项目编号</view>
项目编号 <input type="text" disabled class="input" placeholder="" value="GD20211203-001" />
</view>
<input type="text" class="input" placeholder="" value="GD20211203-001" />
</view> </view>
<view class="li"> <view class="li">
<view class="title"> <view class="title">项目名称</view>
项目名称 <input type="text" disabled class="input input-black" placeholder="" value="湖南省林业科学院11楼会议室P2.5" />
</view>
<input type="text" class="input input-black" placeholder=""
value="湖南省林业科学院11楼会议室P2.5" />
</view> </view>
<view class="li"> <view class="li">
<view class="title"> <view class="title">产品类型</view>
产品类型 <input type="text" disabled class="input" placeholder="" value="Q2.5-E" />
</view>
<input type="text" class="input" placeholder="" value="Q2.5-E" />
</view> </view>
<view class="li"> <view class="li">
<view class="title"> <view class="title">安装位置</view>
安装位置 <input type="text" disabled class="input" placeholder="" value="详细地址+某某栋11楼会议室" />
</view>
<input type="text" class="input" placeholder="" value="详细地址+某某栋11楼会议室" />
</view> </view>
<view class="li"> <view class="li">
<view class="title"> <view class="title">故障类型</view>
故障类型
</view>
<input type="text" class="input" placeholder="" value="供电不足" /> <input type="text" class="input" placeholder="" value="供电不足" />
</view> </view>
<view class="li"> <view class="li">
<view class="title"> <view class="title">紧急程度</view>
紧急程度 <input type="text" disabled class="input" placeholder="" value="紧急" />
</view>
<input type="text" class="input" placeholder="" value="紧急" />
</view> </view>
<view class="li"> <view class="li">
<view class="title"> <view class="title">故障说明</view>
<textarea auto-height disabled class="input"
故障说明
</view>
<textarea auto-height class="input"
value="*********************************************************************************************************" value="*********************************************************************************************************"
placeholder="" /> placeholder="" />
</view> </view>
<view class="li"> <view class="li">
<view class="title"> <view class="title">故障图片</view>
故障图片
</view>
<view class="input"> <view class="input">
<image class="img" src="../../static/del/img001.png" mode="aspectFill"> <image class="img" src="../../static/del/img001.png" mode="aspectFill" lazy-load></image>
</image> <image class="img" src="../../static/del/img001.png" mode="aspectFill" lazy-load></image>
<image class="img" src="../../static/del/img001.png" mode="aspectFill">
</image>
</view> </view>
</view> </view>
</view> </view>
<view class="work-order-from"> <view class="work-order-from">
<view class="li"> <view class="li">
<view class="title"> <view class="title"> </view>
<input type="text" disabled class="input" placeholder="" value="林某" />
</view>
<input type="text" class="input" placeholder="" value="林某" />
</view>
<view class="li">
<view class="title">
报单时间
</view>
<input type="text" class="input" placeholder="" value="2021/12/3 12:00:05" />
</view> </view>
<view class="li"> <view class="li">
<view class="title"> <view class="title">报单时间</view>
服务方式 <input type="text" disabled class="input" placeholder="" value="2021/12/3 12:00:05" />
</view>
<input type="text" class="input input-black" placeholder="" value="上门服务" />
</view> </view>
<view class="li"> <view class="li">
<view class="title"> <view class="title">服务方式</view>
定位地址 <input type="text" disabled class="input input-black" placeholder="" value="上门服务" />
</view> </view>
<input type="text" class="input" placeholder="" <view class="li">
value="*******************************" /> <view class="title">定位地址</view>
<input type="text" disabled class="input" placeholder="" value="*******************************" />
</view> </view>
</view> </view>
</view> </view>
</view> </view>
</swiper-item> </swiper-item>
<swiper-item> <swiper-item>
<view class="swiper-item uni-bg-green"> <view class="swiper-item uni-bg-green">
<view id="swi2"> <view id="swi2">
<view class="work-order-from"> <view class="work-order-from">
<view class="state" style="background-image: url(../../static/iocn/swi2.png);"> <view class="state" :style="{backgroundColor: statusColor}">状态{{statusText}}</view>
状态已完成 <view class="li">
<view class="title">开始时间</view>
<input type="text" disabled class="input " placeholder="" value="2022-01-25 09:39" />
</view> </view>
<view class="li"> <view class="li">
<view class="title"> <view class="title">结束时间</view>
开始时间 <input type="text" disabled class="input " placeholder="" value="2022-01-25 15:30" />
</view>
<input type="text" class="input " placeholder="" value="2022-01-25 09:39" />
</view> </view>
<view class="li"> <view class="li">
<view class="title"> <view class="title">维保用时 </view>
结束时间 <input type="text" disabled class="input input-black" placeholder="" value="5小时51分钟" />
</view>
<input type="text" class="input " placeholder="" value="2022-01-25 15:30" />
</view> </view>
<view class="li"> <view class="li">
<view class="title"> <view class="title">维保费用</view>
维保用时 <input type="text" disabled class="input " placeholder="" value="¥500.00元" />
</view>
<input type="text" class="input input-black" placeholder="" value="5小时51分钟" />
</view>
<view class="li">
<view class="title">
维保费用
</view>
<input type="text" class="input " placeholder="" value="¥500.00元" />
</view> </view>
<view class="li"> <view class="li">
<view class="title"> <view class="title">等待时长</view>
等待时长 <input type="text" disabled class="input " placeholder="" value="1天6小时35分钟" />
</view>
<input type="text" class="input " placeholder="" value="1天6小时35分钟" />
</view> </view>
<view class="li"> <view class="li">
<view class="title"> <view class="title">主维保人</view>
主维保人 <input type="text" disabled class="input " placeholder="" value="陈志远" />
</view>
<input type="text" class="input " placeholder="" value="陈志远" />
</view> </view>
<view class="li"> <view class="li">
<view class="title"> <view class="title">更换配件</view>
更换配件
</view>
<view class="rideo"> <view class="rideo">
<view class="isrideo" @click="isrideoFun(true)"> <view class="isrideo">
<view class="icon " :class="isrideo?'on':''"> <view class="icon " :class="isrideo?'on':''">
<view class="icon-content"> <view class="icon-content"></view>
</view> </view>
<view class=""></view>
</view> </view>
<view class=""> <view class="isrideo">
</view>
</view>
<view class="isrideo" @click="isrideoFun(false)">
<view class="icon" :class="isrideo?'':'on'"> <view class="icon" :class="isrideo?'':'on'">
<view class="icon-content"> <view class="icon-content"></view>
</view> </view>
</view> <view class=""></view>
<view class="">
</view> </view>
</view> </view>
</view> </view>
</view>
<view class="li"> <view class="li">
<view class="title"> <view class="title">工作描述</view>
<textarea auto-height disabled class="input "
工作描述
</view>
<textarea auto-height class="input "
value="*********************************************************************************************************" value="*********************************************************************************************************"
placeholder="" /> placeholder="" />
</view> </view>
<view class="li"> <view class="li">
<view class="title"> <view class="title">维保图片</view>
维保图片
</view>
<view class="input add-display"> <view class="input add-display">
<view class=""> <view class="">
<image class="img" src="../../static/del/img001.png" mode="aspectFill"> <image class="img" src="../../static/del/img001.png" mode="aspectFill" lazy-load></image>
</image> <image class="img" src="../../static/del/img001.png" mode="aspectFill" lazy-load></image>
<image class="img" src="../../static/del/img001.png" mode="aspectFill">
</image>
</view> </view>
</view> </view>
</view> </view>
<view class="li"> <view class="li">
<view class="title"> <view class="title">故障原因</view>
<textarea auto-height disabled class="input "
故障原因
</view>
<textarea auto-height class="input "
value="*********************************************************************************************************" value="*********************************************************************************************************"
placeholder="" /> placeholder="" />
</view> </view>
<view class="li"> <view class="li">
<view class="title"> <view class="title">维保人员 </view>
维保人员 <input type="text" disabled class="input " placeholder="" value="罗帅 陈志远" />
</view>
<input type="text" class="input " placeholder="" value="罗帅 陈志远" />
</view> </view>
</view> </view>
</view> </view>
</view> </view>
</swiper-item> </swiper-item>
<swiper-item> <swiper-item>
<view class="swiper-item uni-bg-blue"> <view class="swiper-item uni-bg-blue">
<view id="swi3"> <view id="swi3">
<view class="change-accessory"> <view class="change-accessory">
<view class="state" style="background-image: url(../../static/iocn/siw3.png);"> <view class="state" :style="{backgroundColor: statusColor}">状态{{statusText}}</view>
状态待结算
</view>
<view class="list"> <view class="list">
<view class="li"> <view class="li">
<image class="img" src="../../static/del/img001.png" mode="aspectFill"> <image class="img" src="../../static/del/img001.png" mode="aspectFill" lazy-load></image>
</image>
<view class="text-content"> <view class="text-content">
<view class="title"> <view class="title">
<view class="text clips1">全彩LED显示屏电源</view>
<view class="text clips1"> <view class="date">1011-1</view>
全彩LED显示屏电源
</view>
<view class="date">
1011-1
</view>
</view>
<view class="text">
配件品牌华鑫电源
</view>
<view class="text">
规格型号5A-75B
</view>
<view class="text">
使用数量1
</view> </view>
<view class="text">配件品牌华鑫电源</view>
<view class="text">规格型号5A-75B</view>
<view class="text">使用数量1</view>
</view> </view>
</view> </view>
<view class="li"> <view class="li">
<image class="img" src="../../static/del/img001.png" mode="aspectFill"> <image class="img" src="../../static/del/img001.png" mode="aspectFill" lazy-load>
</image> </image>
<view class="text-content"> <view class="text-content">
<view class="title"> <view class="title">
<view class="text clips1">全彩LED显示屏电源</view>
<view class="text clips1"> <view class="date">1011-1</view>
全彩LED显示屏电源
</view>
<view class="date">
1011-1
</view>
</view>
<view class="text">
配件品牌华鑫电源
</view>
<view class="text">
规格型号5A-75B
</view>
<view class="text">
使用数量1
</view> </view>
<view class="text">配件品牌华鑫电源</view>
<view class="text">规格型号5A-75B</view>
<view class="text">使用数量1</view>
</view> </view>
</view> </view>
<view class="li"> <view class="li">
<image class="img" src="../../static/del/img001.png" mode="aspectFill"> <image class="img" src="../../static/del/img001.png" mode="aspectFill" lazy-load></image>
</image>
<view class="text-content"> <view class="text-content">
<view class="title"> <view class="title">
<view class="text clips1">全彩LED显示屏电源</view>
<view class="text clips1"> <view class="date">1011-1</view>
全彩LED显示屏电源
</view> </view>
<view class="date"> <view class="text">配件品牌华鑫电源</view>
1011-1 <view class="text">规格型号5A-75B</view>
</view> <view class="text">使用数量1</view>
</view>
<view class="text">
配件品牌华鑫电源
</view>
<view class="text">
规格型号5A-75B
</view>
<view class="text">
使用数量1
</view> </view>
</view> </view>
</view> </view>
</view> </view>
</view> </view>
</view> </view>
</view>
</swiper-item> </swiper-item>
<swiper-item> <swiper-item>
<view class="swiper-item uni-bg-blue"> <view class="swiper-item uni-bg-blue">
<view id="swi4"> <view id="swi4">
<view class="course-nav"> <view class="course-nav">
<view class="state"> <view class="state" :style="{backgroundColor: statusColor}">状态{{statusText}}</view>
状态待维修 <view class="date">报修时间2022年02月10日</view>
</view>
<view class="date">
报修时间2022年02月10日
</view>
<view class="code"> <view class="code">
<view class=""> <view class="">工单编号1254635996212345</view>
工单编号1254635996212345 <view class="btn" @click="copy('1254635996212345')"></view>
</view>
<view class="btn" @click="copy('1254635996212345')">
复制
</view> </view>
</view> </view>
</view>
<view class="course-content"> <view class="course-content">
<view class="record-content"> <view class="record-content">
<view class="title"> <view class="title">过程追踪</view>
过程追踪
</view>
<view class="list"> <view class="list">
<view class="li on"> <view class="li on">
<view class="icon"> <view class="icon">
<view class="icon-con"> <view class="icon-con"></view>
</view>
</view> </view>
<view class="con"> <view class="con">
<view class="text clips2"> <view class="text clips2">维修中工号00234工程师将于16:00到达现场为您 服务</view>
维修中工号00234工程师将于16:00到达现场为您 服务 <view class="date">2020-06-15 1530</view>
</view>
<view class="date">
2020-06-15 1530
</view>
</view> </view>
</view> </view>
<view class="li"> <view class="li">
<view class="icon"> <view class="icon"></view>
</view>
<view class="con"> <view class="con">
<view class="text clips1"> <view class="text clips1">工程师已接单工号00234工程师已接单</view>
工程师已接单工号00234工程师已接单 <view class="date">2020-06-15 14:30 </view>
</view>
<view class="date">
2020-06-15 14:30
</view>
</view> </view>
</view> </view>
<view class="li"> <view class="li">
<view class="icon"> <view class="icon"></view>
</view>
<view class="con"> <view class="con">
<view class="text"> <view class="text"> 黑屏故障 某某已处理</view>
黑屏故障 某某已处理 <view class="date"> 2020-05-15 16:00</view>
</view>
<view class="date">
2020-05-15 16:00
</view>
</view> </view>
</view> </view>
<view class="li"> <view class="li">
<view class="icon"> <view class="icon"></view>
</view>
<view class="con"> <view class="con">
<view class="text"> <view class="text">黑屏故障 某某已处理</view>
黑屏故障 某某已处理 <view class="date">2020-05-15 16:00</view>
</view>
<view class="date">
2020-05-15 16:00
</view>
</view> </view>
</view> </view>
<view class="li"> <view class="li">
<view class="icon"> <view class="icon"></view>
</view>
<view class="con"> <view class="con">
<view class="text"> <view class="text">黑屏故障 某某已处理</view>
黑屏故障 某某已处理 <view class="date">2020-05-15 16:00</view>
</view>
<view class="date">
2020-05-15 16:00
</view>
</view> </view>
</view> </view>
<view class="li"> <view class="li">
<view class="icon"> <view class="icon"></view>
</view>
<view class="con"> <view class="con">
<view class="text"> <view class="text">黑屏故障 某某已处理</view>
黑屏故障 某某已处理 <view class="date">2020-05-15 16:00</view>
</view>
<view class="date">
2020-05-15 16:00
</view>
</view> </view>
</view> </view>
<view class="li"> <view class="li">
<view class="icon"> <view class="icon"></view>
</view>
<view class="con"> <view class="con">
<view class="text"> <view class="text">黑屏故障 某某已处理</view>
黑屏故障 某某已处理 <view class="date">2020-05-15 16:00</view>
</view>
<view class="date">
2020-05-15 16:00
</view>
</view> </view>
</view> </view>
</view> </view>
@ -494,9 +297,8 @@
return { return {
swiperCurrent: 0, swiperCurrent: 0,
swiHeight:0, swiHeight:0,
statusBarHeight:uni.getSystemInfoSync().statusBarHeight + 30, statusBarHeight:uni.getSystemInfoSync().statusBarHeight + 40,
statusBarHeighta:uni.getSystemInfoSync().statusBarHeight + 30, statusText:'',
textTitle: "工单详情",
isrideo: true, isrideo: true,
detailsNav: [{ detailsNav: [{
title: "基础信息", title: "基础信息",
@ -522,11 +324,15 @@
mounted() { mounted() {
const query = uni.createSelectorQuery().in(this); const query = uni.createSelectorQuery().in(this);
query.select('#swi1').boundingClientRect(data => { query.select('#swi1').boundingClientRect(data => {
this.swiHeight = data.height - 100 this.swiHeight = data.height - 100
}).exec(); }).exec();
this.detailsNavFun(0) this.detailsNavFun(0)
},
onLoad(op) {
console.log(op,333);
this.statusText = op.statusText;
this.statusColor = op.statusColor;
}, },
methods: { methods: {
isrideoFun(is) { isrideoFun(is) {
@ -556,28 +362,24 @@
console.log(data.detail.current) console.log(data.detail.current)
if (data.detail.current == 0) { if (data.detail.current == 0) {
this.textTitle = "工单详情"
const query = uni.createSelectorQuery().in(this); const query = uni.createSelectorQuery().in(this);
query.select('#swi1').boundingClientRect(data => { query.select('#swi1').boundingClientRect(data => {
this.swiHeight = data.height this.swiHeight = data.height
}).exec(); }).exec();
} else if (data.detail.current == 1) { } else if (data.detail.current == 1) {
this.textTitle = "处理详情"
const query = uni.createSelectorQuery().in(this); const query = uni.createSelectorQuery().in(this);
query.select('#swi2').boundingClientRect(data => { query.select('#swi2').boundingClientRect(data => {
this.swiHeight = data.height this.swiHeight = data.height
}).exec(); }).exec();
} else if (data.detail.current == 2) { } else if (data.detail.current == 2) {
this.textTitle = "工单详情"
const query = uni.createSelectorQuery().in(this); const query = uni.createSelectorQuery().in(this);
query.select('#swi3').boundingClientRect(data => { query.select('#swi3').boundingClientRect(data => {
this.swiHeight = data.height this.swiHeight = data.height
}).exec(); }).exec();
} else if (data.detail.current == 3) { } else if (data.detail.current == 3) {
this.textTitle = "工单详情"
const query = uni.createSelectorQuery().in(this); const query = uni.createSelectorQuery().in(this);
query.select('#swi4').boundingClientRect(data => { query.select('#swi4').boundingClientRect(data => {
@ -659,17 +461,15 @@
} }
.state { .state {
/* background-color: display: inline-block;
*/ padding: 2rpx 20rpx 2rpx 16rpx;
text-align: center; height: 52rpx;
line-height: 48rpx; line-height: 52rpx;
width: 164rpx; border-radius: 0 25rpx 25rpx 0;
height: 54rpx;
background-image: url(../../static/iocn/sta.png);
border-radius: 0 20rpx 20rpx 0;
background-size: 100% 100%;
font-size: 24rpx; font-size: 24rpx;
color: #ffffff; color: #ffffff;
background-color: #dddddd;
box-shadow: 0rpx 6rpx 6rpx #999999;
} }
.work-order-from .li .input-black { .work-order-from .li .input-black {
@ -683,7 +483,7 @@
padding: 0 24rpx; padding: 0 24rpx;
position: fixed; position: sticky;
z-index: 2; z-index: 2;
box-sizing: border-box; box-sizing: border-box;
width: 100%; width: 100%;
@ -694,9 +494,7 @@
.details-nav .li { .details-nav .li {
width: 130rpx; width: 130rpx;
padding-top: 60rpx;
font-size: 30rpx; font-size: 30rpx;
padding-bottom: 35rpx;
} }
.details-nav .on { .details-nav .on {

View File

@ -10,6 +10,7 @@
<view class="xian"></view> <view class="xian"></view>
</view> </view>
<view class="screen"> <view class="screen">
<!-- 筛选状态查询日期查询 -->
<picker @change="bindPickerChange" :value="workeOrderStatusIndex" :range="array" :range-key="'title'"> <picker @change="bindPickerChange" :value="workeOrderStatusIndex" :range="array" :range-key="'title'">
<view class="li"> <view class="li">
<view class="text" v-if="workeOrderStatus!=''">{{workeOrderStatus}}</view> <view class="text" v-if="workeOrderStatus!=''">{{workeOrderStatus}}</view>
@ -29,7 +30,8 @@
</view> </view>
</view> </view>
<view class="project-list"> <view class="project-list">
<view class="li" @click="projectDetailsFun()" v-for="(item,index) in dataList" :key="index"> <!-- 列表循环体 -->
<view class="li" @click="projectDetailsFun(item.status,item.id,item.statusText,item.backgroundColor)" v-for="(item,index) in dataList" :key="index">
<view class="work-order-code">工单编号{{item.orderNum}}</view> <view class="work-order-code">工单编号{{item.orderNum}}</view>
<view class="message"> <view class="message">
<image class="img" src="../../static/del/img001.png" mode="aspectFill"></image> <image class="img" src="../../static/del/img001.png" mode="aspectFill"></image>
@ -56,120 +58,13 @@
<image class="img" src="../../static/iocn/dz2.png" mode="aspectFill"></image> <image class="img" src="../../static/iocn/dz2.png" mode="aspectFill"></image>
<view class="text">{{item.address}}</view> <view class="text">{{item.address}}</view>
</view> </view>
<view class="date" v-if="item.status!=8 && item.status!=9"> <!-- 订单不等于已完成和待回访并且访问人不是工程师 -->
<view @tap.stop="hurryUpEv(item.id)" class="date" v-if="item.status!=8 && item.status!=9 && role!=4">
催一催 <image class="img" src="../../static/iocn/ld.png" mode=""></image> 催一催 <image class="img" src="../../static/iocn/ld.png" mode=""></image>
</view> </view>
</view> </view>
</view> </view>
<!-- <view class="li" @click="projectDetailsFun()">
<view class="work-order-code">
工单编号222226666558
</view> </view>
<view class="message">
<image class="img" src="../../static/del/img001.png" mode="aspectFill"></image>
<view class="text">
<view class="title">
<view class="text clips1">
长沙市望城区xxxxxx项目名称
</view>
<view class="icon icon1">
已完成
</view>
</view>
<view class="serial-number">
<view class="type">
#网络故障#
</view>
<view class="date">
已故障2小时37分
</view>
</view>
<view class="specification">
紧急程度<view class="text"> 加急
</view>
</view>
<view class="specification">
主负责人陈志远
</view>
<view class="installation-site clips2">
故障描述LED显示屏开机后闪屏不显示内容主控电
脑提示网络不通
</view>
</view>
</view>
<view class="project-list-address">
<view class="address clips2">
<image class="img" src="../../static/iocn/dz2.png" mode="aspectFill"></image>
<view class="text">
湖南省长沙市高新开发区谷园路109号像素大厦1205
</view>
</view>
<view class="date">
催一催 <image class="img" src="../../static/iocn/ld.png" mode=""></image>
</view>
</view>
</view>
<view class="li" @click="projectDetailsFun()">
<view class="work-order-code">
工单编号222226666558
</view>
<view class="message">
<image class="img" src="../../static/del/img001.png" mode="aspectFill"></image>
<view class="text">
<view class="title">
<view class="text clips1">
长沙市望城区xxxxxx项目名称
</view>
<view class="icon icon3">
等待派工
</view>
</view>
<view class="serial-number">
<view class="type">
#网络故障#
</view>
<view class="date">
已故障2小时37分
</view>
</view>
<view class="specification">
紧急程度<view class="text"> 加急
</view>
</view>
<view class="specification">
主负责人陈志远
</view>
<view class="installation-site clips2">
故障描述LED显示屏开机后闪屏不显示内容主控电
脑提示网络不通
</view>
</view>
</view>
<view class="project-list-address">
<view class="address clips2">
<image class="img" src="../../static/iocn/dz2.png" mode="aspectFill"></image>
<view class="text">
湖南省长沙市高新开发区谷园路109号像素大厦1205
</view>
</view>
<view class="date">
催一催 <image class="img" src="../../static/iocn/ld.png" mode=""></image>
</view>
</view>
</view>
-->
</view>
</view> </view>
</container-subgroup-two> </container-subgroup-two>
@ -192,7 +87,7 @@
}) })
return { return {
statusBarHeight: uni.getSystemInfoSync().statusBarHeight + 40, statusBarHeight: uni.getSystemInfoSync().statusBarHeight + 40,
role: 4, // 1 2: 3: 4 role: 1, // 1 2: 3: 4
date: currentDate, date: currentDate,
workeOrderStatus:'工单状态', workeOrderStatus:'工单状态',
array: [ array: [
@ -216,6 +111,7 @@
orderNum:'222226666558', orderNum:'222226666558',
title:'长沙市望城区xxxxxx项目名称', title:'长沙市望城区xxxxxx项目名称',
status:1, status:1,
statusText:'待受理',
backgroundColor:'#ff0000', backgroundColor:'#ff0000',
faultType:'#网络故障#', faultType:'#网络故障#',
faultTime:'2小时37分', faultTime:'2小时37分',
@ -229,6 +125,7 @@
orderNum:'222226666558', orderNum:'222226666558',
title:'长沙市望城区xxxxxx项目名称', title:'长沙市望城区xxxxxx项目名称',
status:2, status:2,
statusText:'待指派',
backgroundColor:'#112233', backgroundColor:'#112233',
faultType:'#网络故障#', faultType:'#网络故障#',
faultTime:'2小时37分', faultTime:'2小时37分',
@ -242,6 +139,7 @@
orderNum:'222226666558', orderNum:'222226666558',
title:'长沙市望城区xxxxxx项目名称', title:'长沙市望城区xxxxxx项目名称',
status:3, status:3,
statusText:'待接单',
backgroundColor:'#ff00ff', backgroundColor:'#ff00ff',
faultType:'#网络故障#', faultType:'#网络故障#',
faultTime:'2小时37分', faultTime:'2小时37分',
@ -255,6 +153,7 @@
orderNum:'222226666558', orderNum:'222226666558',
title:'长沙市望城区xxxxxx项目名称', title:'长沙市望城区xxxxxx项目名称',
status:4, status:4,
statusText:'待维修',
backgroundColor:'#303545', backgroundColor:'#303545',
faultType:'#网络故障#', faultType:'#网络故障#',
faultTime:'2小时37分', faultTime:'2小时37分',
@ -268,6 +167,7 @@
orderNum:'222226666558', orderNum:'222226666558',
title:'长沙市望城区xxxxxx项目名称', title:'长沙市望城区xxxxxx项目名称',
status:5, status:5,
statusText:'维修中',
backgroundColor:'#006677', backgroundColor:'#006677',
faultType:'#网络故障#', faultType:'#网络故障#',
faultTime:'2小时37分', faultTime:'2小时37分',
@ -281,6 +181,7 @@
orderNum:'222226666558', orderNum:'222226666558',
title:'长沙市望城区xxxxxx项目名称', title:'长沙市望城区xxxxxx项目名称',
status:6, status:6,
statusText:'待收款',
backgroundColor:'#669955', backgroundColor:'#669955',
faultType:'#网络故障#', faultType:'#网络故障#',
faultTime:'2小时37分', faultTime:'2小时37分',
@ -294,6 +195,7 @@
orderNum:'222226666558', orderNum:'222226666558',
title:'长沙市望城区xxxxxx项目名称', title:'长沙市望城区xxxxxx项目名称',
status:7, status:7,
statusText:'待审批',
backgroundColor:'#558899', backgroundColor:'#558899',
faultType:'#网络故障#', faultType:'#网络故障#',
faultTime:'2小时37分', faultTime:'2小时37分',
@ -307,6 +209,7 @@
orderNum:'222226666558', orderNum:'222226666558',
title:'长沙市望城区xxxxxx项目名称', title:'长沙市望城区xxxxxx项目名称',
status:8, status:8,
statusText:'已完成',
backgroundColor:'#336655', backgroundColor:'#336655',
faultType:'#网络故障#', faultType:'#网络故障#',
faultTime:'2小时37分', faultTime:'2小时37分',
@ -320,6 +223,7 @@
orderNum:'222226666558', orderNum:'222226666558',
title:'长沙市望城区xxxxxx项目名称', title:'长沙市望城区xxxxxx项目名称',
status:9, status:9,
statusText:'待回访',
backgroundColor:'#224455', backgroundColor:'#224455',
faultType:'#网络故障#', faultType:'#网络故障#',
faultTime:'2小时37分', faultTime:'2小时37分',
@ -337,18 +241,34 @@
if(this.workeOrderStatusIndex!=-1) this.workeOrderStatus = ''; if(this.workeOrderStatusIndex!=-1) this.workeOrderStatus = '';
}, },
methods: { methods: {
projectDetailsFun() { //
hurryUpEv(id) {
if (this.role == 4) { this.$toolAll.tools.showToast(`已催单成功`);
},
//
projectDetailsFun(status,id,statusText,statusColor) {
if (uni.getStorageSync('type_id')==4 && status == 3) {
//
uni.showModal({
cancelText:'取消',
cancelColor:'#999999',
confirmColor:'#03affb',
confirmText:'确认',
content:'确认接单',
success: (res) => {
if(res.confirm){
uni.navigateTo({ uni.navigateTo({
url: "/pages/workOrder/workOrder" url: `/pages/workOrder/workOrder?id=${id}`
}) })
} else { }
uni.navigateTo({ }
url: "/pages/workOrder/details" })
} else {
//
uni.navigateTo({
url: `/pages/workOrder/details?id=${id}&status=${status}&statusText=${statusText}&statusColor=${statusColor}`
}) })
} }
}, },
bindPickerChange(data) { bindPickerChange(data) {
console.log(data) console.log(data)

View File

@ -1,221 +1,130 @@
<template> <template>
<view class="content"> <view class="content">
<statusNav returnColor="#c2c2c2" navBarTitle="处理工单"></statusNav> <statusNav returnColor="#c2c2c2" navBarTitle="处理工单"></statusNav>
<container-subgroup-two> <container-subgroup-two>
<view slot="content" style="margin: -20rpx -25rpx 0rpx;"> <view slot="content" style="margin: -20rpx -25rpx 0rpx;">
<view class="work-order-schedule"> <view class="work-order-schedule">
<view class="li"> <view class="li">
<view class="icon icon-after"> <view class="icon icon-after">1</view>
1 <view class="text">签到执行</view>
</view>
<view class="text">
签到执行
</view>
</view> </view>
<view class="li"> <view class="li">
<view class="icon icon-after"> <view class="icon icon-after">2</view>
2 <view class="text">填写维保单</view>
</view>
<view class="text">
填写维保单
</view>
</view> </view>
<view class="li"> <view class="li">
<view class="icon on"> <view class="icon on">3</view>
3 <view class="text">结算审核</view>
</view>
<view class="text">
结算审核
</view> </view>
</view> </view>
</view>
<view class="clearing-form"> <view class="clearing-form">
<view class="title"> <view class="title">结算方式</view>
结算方式
</view>
<view class="clearing-form-content"> <view class="clearing-form-content">
<view class="li" @click="clearingFormFun(index)" v-for="(item,index) in clearingForm"> <view class="li" @click="clearingFormFun(index)" v-for="(item,index) in clearingForm" :key="index">
<image class="icon" v-if="item.state" src="../../static/iocn/xuanz.png" mode=""></image> <image class="icon" v-if="item.state" src="../../static/iocn/xuanz.png" mode="" lazy-load></image>
<image class="icon" v-else src="../../static/iocn/xuan.png" mode=""></image> <image class="icon" v-else src="../../static/iocn/xuan.png" mode="" lazy-load></image>
{{item.title}} {{item.title}}
</view> </view>
</view> </view>
</view> </view>
<view class="work-order-from"> <view class="work-order-from">
<picker mode="date" :value="date" @change="serveDate"> <picker mode="date" @change="serveDate">
<view class="serve-date"> <view class="serve-date">
<view class="text"> <view class="text" v-if="serviceTime==''"></view>
请选择服务时间 <view class="text" style="color: #000000;" v-else>{{serviceTime}}</view>
</view>
<image class="icon" src="../../static/iocn/jt.png" mode=""></image> <image class="icon" src="../../static/iocn/jt.png" mode=""></image>
</view> </view>
</picker> </picker>
<view class="total-cost"> <view class="total-cost">
<view class="li"> <view class="li">
<view class="text"> <view class="text">上门费</view>
上门费 <view class="price">{{detailObj.doorToDoorFee}}</view>
</view>
<view class="price">
120.00
</view>
</view>
<view class="li">
<view class="text on">
税金
</view>
<view class="price">
120.00
</view>
</view> </view>
<view class="li"> <view class="li">
<view class="text"> <view class="text on">税金</view>
材料费 <view class="price">{{detailObj.taxes}}</view>
</view>
<view class="price">
120.00
</view>
</view> </view>
<view class="li"> <view class="li">
<view class="text"> <view class="text">材料费</view>
其他费用 <view class="price">{{detailObj.materialCost}}</view>
</view> </view>
<view class="price"> <view class="li">
120.00 <view class="text">其他费用</view>
<view class="price">{{detailObj.otherCost}}</view>
</view> </view>
</view> </view>
</view>
<view class="total-price"> <view class="total-price">
费用合计<text class="money">580.00</text> 费用合计<text class="money">{{totalPrice}}</text>
</view> </view>
<picker @change="bindPickerChange" :value="index" :range="array"> <picker @change="bindPickerChange" :value="paymentModeIndex" :range="array">
<view class="serve-date"> <view class="serve-date">
<view class="text"> <view class="text" v-if="paymentMode==''"></view>
请选择付款方式 <view class="text" v-else style="color: #000000;">{{paymentMode}}</view>
</view> <image class="icon" src="../../static/iocn/jt.png" mode="" lazy-load></image>
<image class="icon" src="../../static/iocn/jt.png" mode=""></image>
</view> </view>
</picker> </picker>
<view class="is-invoice"> <view class="is-invoice">
<view class="text"> <view class="text">是否开票</view>
是否开票
</view>
<view class="radio" @click="isInvoiceFun(true)"> <view class="radio" @click="isInvoiceFun(true)">
<image v-if="isInvoice" src="../../static/iocn/xz.png" class="icon" mode="" lazy-load></image>
<image v-if="isInvoice" src="../../static/iocn/xz.png" class="icon" mode=""></image> <view v-else class="icon1"></view>
<view v-else class="icon1">
</view>
<text></text> <text></text>
</view> </view>
<view class="radio" @click="isInvoiceFun(false)"> <view class="radio" @click="isInvoiceFun(false)">
<image v-if="!isInvoice" src="../../static/iocn/xz.png" class="icon" mode="" lazy-load></image>
<image v-if="!isInvoice" src="../../static/iocn/xz.png" class="icon" mode=""></image> <view v-else class="icon1"></view>
<view v-else class="icon1">
</view>
<text></text> <text></text>
</view> </view>
</view> </view>
<view class="is-invoice"> <view class="is-invoice">
<view class="text"> <view class="text">是否收款</view>
是否收款
</view>
<view class="radio" @click="isMoneyFun(true)"> <view class="radio" @click="isMoneyFun(true)">
<image v-if="isMoney" src="../../static/iocn/xz.png" class="icon" mode="" lazy-load></image>
<image v-if="isMoney" src="../../static/iocn/xz.png" class="icon" mode=""></image> <view v-else class="icon1"></view>
<view v-else class="icon1">
</view>
<text></text> <text></text>
</view> </view>
<view class="radio" @click="isMoneyFun(false)"> <view class="radio" @click="isMoneyFun(false)">
<image v-if="!isMoney" src="../../static/iocn/xz.png" class="icon" mode="" lazy-load></image>
<image v-if="!isMoney" src="../../static/iocn/xz.png" class="icon" mode=""></image> <view v-else class="icon1"></view>
<view v-else class="icon1">
</view>
<text></text> <text></text>
</view> </view>
</view> </view>
<view class="customerSignature"> <view class="customerSignature">
<view class="title"> <view class="title">客户签名</view>
客户签名
</view>
<view class='contents'> <view class='contents'>
<canvas class='firstCanvas' canvas-id="firstCanvas" @touchmove='move'
<canvas class='firstCanvas' canvas-id="firstCanvas" @touchmove='move' @touchstart='start($event)' @touchstart='start($event)' @touchend='end' @touchcancel='cancel' @longtap='tap'
@touchend='end' @touchcancel='cancel' @longtap='tap' disable-scroll='true' @error='error'> disable-scroll='true' @error='error'>
</canvas> </canvas>
<!-- <button @click='clearClick'>清除</button> --> <!-- <button @click='clearClick'>清除</button> -->
<!-- <button @click='saveClick'>保存图片</button> --> <!-- <button @click='saveClick'>保存图片</button> -->
</view> </view>
<view class="text" v-if="isCanvas"></view>
<view class="text" v-if="isCanvas">
请在此签名
</view> </view>
</view> <view class="money-receiving-code" @tap="openCollectionCodeEv">
<view class="money-receiving-code">
<view class="title"> <view class="title">
<image src="../../static/iocn/shoukuan.png" class="icon" mode=""></image> <image src="../../static/iocn/shoukuan.png" class="icon" mode="" lazy-load></image>
<view class="text">微信支付宝等收款码</view>
<view class="text"> </view>
微信支付宝等收款码 <image src="../../static/iocn/jt.png" mode="" class="img" lazy-load></image>
</view>
<view v-if="ifCollectionCode" :class="detailObj.collectionCode.length >= 3 ? 'disjbac' :'disac'" style="margin: 15rpx 0;">
<view class="width32 radius10" style="overflow: hidden;" :class="detailObj.collectionCode.length >= 3 ? '' :'mar-y20'" v-for="(item,index) in detailObj.collectionCode" :key="index">
<image :src="item" mode="aspectFill" class="width100" lazy-load style="vertical-align: middle;height: 240rpx;"></image>
</view> </view>
</view> </view>
<image src="../../static/iocn/jt.png" mode="" class="img"></image>
</view>
<view class="address"> <view class="address">
<image class="icon" src="../../static/iocn/dizi.png" mode=""></image> <image class="icon" src="../../static/iocn/dizi.png" mode="" lazy-load></image>
<view class="text "> <view class="text ">{{detailObj.address}}</view>
湖南省株洲市荷塘区红旗中路456号(五矿二十三冶)
</view> </view>
</view>
<view class="remark"> <view class="remark">
<view class="title"> <view class="title">备注内容</view>
备注内容 <textarea class="textarea" v-model="remarkText" placeholder="请输入备注内容" />
</view>
<textarea class="textarea" value="" placeholder="请输入备注内容" />
</view> </view>
</view> </view>
<button class="submit-button" type="default" @tap="submitEv"></button>
<button class="submit-button" type="default">提交审核</button>
</view> </view>
</container-subgroup-two> </container-subgroup-two>
</view> </view>
</template> </template>
@ -223,6 +132,7 @@
import statusNav from '../../components/status-nav.vue'; import statusNav from '../../components/status-nav.vue';
import footTabOne from "../../components/foot-tabs/foot-tab-one.vue" import footTabOne from "../../components/foot-tabs/foot-tab-one.vue"
import containerSubgroupTwo from '@/components/containers/container-subgroup-two.vue'; import containerSubgroupTwo from '@/components/containers/container-subgroup-two.vue';
import {base64ToPath} from '@/jsFile/base64-src.js';
var content = null; var content = null;
var touchs = []; var touchs = [];
var canvasw = 0; var canvasw = 0;
@ -242,32 +152,45 @@
}, },
data() { data() {
return { return {
signImage: '', clearingForm: [
date: "", {title: '单次付费',state: true,},
clearingForm: [{ {title: '质保免费',state: false,},
title: '单次付费', {title: '验收扫尾',state: false,},
state: true, {title: '包年签单',state: false,},
},
{
title: '质保免费',
state: false,
},
{
title: '验收扫尾',
state: false,
},
{
title: '包年签单',
state: false,
},
], ],
isCanvas: true,
array: ['微信', '支付宝', '现金', '类型'], array: ['微信', '支付宝', '现金', '类型'],
isInvoice: true, paymentModeIndex:0,
isMoney: true, serviceTime:'' ,//
detailObj:{
doorToDoorFee:'120.09',
taxes:'120.20',
materialCost:'120.02',
otherCost:'121.03',
address:'湖南省株洲市荷塘区红旗中路456号(五矿二十三冶)',
collectionCode:[
'/static/del/500478055.png',
'/static/del/img001.png',
'/static/del/500478055.png',
]
},
paymentMode:'',//
isInvoice: true,//
isMoney: true,//
isCanvas: true,
signImage: '',//
ifCollectionCode:false,//
remarkText:'',//
saveTimer:null,//
flag:true//
}
},
computed:{
totalPrice() {
let prices = 0;
prices = this.$toolAll.tools.operationEv(this.detailObj.doorToDoorFee,this.detailObj.taxes,'+',2);
prices = this.$toolAll.tools.operationEv(prices,this.detailObj.materialCost,'+',2);
prices = this.$toolAll.tools.operationEv(prices,this.detailObj.otherCost,'+',2);
return this.$toolAll.tools.addXiaoShu(prices);
} }
}, },
onLoad: function(options) { onLoad: function(options) {
@ -283,26 +206,68 @@
content.setLineJoin('round') content.setLineJoin('round')
}, },
methods: { methods: {
//
submitEv() {
if(this.checkEmpty()) {
if(this.flag) {
this.flag = false;
let exist = this.clearingForm.findIndex(item=>item.state==true);
let params = {
a:this.clearingForm[exist].title,
b:this.serviceTime,
c:this.detailObj.doorToDoorFee,
d:this.detailObj.taxes,
e:this.detailObj.materialCost,
f:this.detailObj.otherCost,
g:this.totalPrice,
h:this.paymentMode,
i:this.isInvoice,
j:this.isMoney,
k:this.signImage,
m:this.remarkText
}
console.log(params);
}
}
},
//
checkEmpty(){
let result = false;
if(!this.serviceTime) {
this.$toolAll.tools.showToast('请选择服务时间');
} else if(!this.paymentMode) {
this.$toolAll.tools.showToast('请选择付款方式');
} else if(!this.signImage) {
this.$toolAll.tools.showToast('请签名');
} else {
result = true;
}
return result;
},
//
openCollectionCodeEv(){
this.ifCollectionCode = !this.ifCollectionCode;
},
clearingFormFun(index) { clearingFormFun(index) {
for (var i = 0; i < this.clearingForm.length; i++) { for (var i = 0; i < this.clearingForm.length; i++) {
this.clearingForm[i].state = false this.clearingForm[i].state = false
} }
this.clearingForm[index].state = true this.clearingForm[index].state = true
}, },
bindPickerChange(){ bindPickerChange(data) {
this.paymentModeIndex = data.detail.value;
this.paymentMode = this.array[this.paymentModeIndex];
}, },
serveDate(data) { serveDate(data) {
console.log(data) console.log(data)
this.serviceTime = data.detail.value;
}, },
isInvoiceFun(is) { isInvoiceFun(is) {
this.isInvoice = is this.isInvoice = is
}, },
isMoneyFun(is) { isMoneyFun(is) {
this.isMoney = is this.isMoney = is
}, },
// //
// //
start: function(e) { start: function(e) {
@ -311,9 +276,8 @@
x: e.touches[0].x, x: e.touches[0].x,
y: e.touches[0].y, y: e.touches[0].y,
} }
touchs.push(point); touchs.push(point);
clearTimeout(this.saveTimer);
}, },
// //
move: function(e) { move: function(e) {
@ -326,7 +290,6 @@
this.draw(touchs) this.draw(touchs)
} }
}, },
// //
end: function(e) { end: function(e) {
console.log("触摸结束" + e) console.log("触摸结束" + e)
@ -334,23 +297,21 @@
for (let i = 0; i < touchs.length; i++) { for (let i = 0; i < touchs.length; i++) {
touchs.pop() touchs.pop()
} }
this.saveTimer = setTimeout(()=>{
this.saveClick();
},3000)
}, },
// //
cancel: function(e) { cancel: function(e) {
console.log("触摸取消" + e) console.log("触摸取消" + e)
}, },
// //
tap: function(e) { tap: function(e) {
console.log("长按手势" + e) console.log("长按手势" + e)
}, },
error: function(e) { error: function(e) {
console.log("画布触摸错误" + e) console.log("画布触摸错误" + e)
}, },
// //
draw: function(touchs) { draw: function(touchs) {
let point1 = touchs[0] let point1 = touchs[0]
@ -372,26 +333,20 @@
var that = this var that = this
uni.canvasToTempFilePath({ uni.canvasToTempFilePath({
canvasId: 'firstCanvas', canvasId: 'firstCanvas',
success: function(res) { success: function(res) {
// // base64
console.log(res.tempFilePath) base64ToPath(res.tempFilePath).then(path => {
// that.signImage = path;
that.signImage = res.tempFilePath console.log(that.signImage,308);
}).catch(error => {})
} }
}) })
} }
} }
} }
</script> </script>
<style> <style>
.submit-button { .submit-button {
width: 686rpx; width: 686rpx;
border-radius: 50rpx; border-radius: 50rpx;
@ -514,7 +469,7 @@
} }
.total-cost .li { .total-cost .li {
width: 355rpx; width: 49%;
height: 80rpx; height: 80rpx;
padding: 0 14rpx; padding: 0 14rpx;
background-color: #FFFFFF; background-color: #FFFFFF;
@ -624,7 +579,7 @@
.firstCanvas { .firstCanvas {
background-color: #FFFFFF; background-color: #FFFFFF;
width: 100%; width: 100%;
height: 250rpx; height: 320rpx;
} }
.contents image { .contents image {

View File

@ -2,75 +2,81 @@
<view> <view>
<status-nav navBarTitle="我的账户" returnColor="#c2c2c2"></status-nav> <status-nav navBarTitle="我的账户" returnColor="#c2c2c2"></status-nav>
<container-subgroup> <container-subgroup>
<view slot="content" style="margin: 0 -30rpx;"> <view slot="content" style="margin: -30rpx;">
<view class="disja tcenter bbot fon32"> <view class="disja tcenter bbot fon32 position-sticky pad-s30" style="background-color: #F5F5F5;">
<view @tap="switchStatus(true)" class="width50 pad-x30" :class="current ? 'account-active' : ''">我的账户</view> <view @tap="switchStatus(true)" class="width50 pad-x30" :class="current ? 'account-active' : ''">我的账户</view>
<view @tap="switchStatus(false)" class="width50 pad-x30" :class="!current ? 'account-active' : ''">未结算工单</view> <view @tap="switchStatus(false)" class="width50 pad-x30" :class="!current ? 'account-active' : ''">未结算工单</view>
</view> </view>
<!-- 我的账户 --> <!-- 我的账户 -->
<view v-if="current"> <view v-if="current">
<view class="bacf pad-sx30 mar-s20 mar-zy20 radius10" style="box-shadow: 0 5rpx 20rpx rgba(0,0,0,.2);"> <view class="bacf pad-sx30 mar-s30 mar-zy20 radius10" style="box-shadow: 0 5rpx 20rpx rgba(0,0,0,.2);">
<view class="bbot mar-zy20 disjbac pad-x30"> <view class="bbot mar-zy20 pad-x30 disjbac">
<view class="disjcac fc"> <view class="disjcac fc">
<view class="fon22 col9">账户总额()</view> <view class="fon22 col9">账户总额()</view>
<view class="fon42 bold mar-s20">266.00</view> <view class="fon42 bold mar-s20">{{capitalDetail.totalPrice}}</view>
</view> </view>
<view class="disjcac fc"> <view class="disjcac fc">
<view class="fon22 col9">联系客服?</view> <view class="fon22 col9" @tap="callPhone">?</view>
<view class="fon26 mar-s10 account-btn">查看明细</view> <view @tap="checkDetailedEv" class="fon26 mar-s10 account-btn">查看明细</view>
</view> </view>
</view> </view>
<view class=" mar-zy20 disjbac pad-s30"> <view class=" mar-zy20 disjbac pad-s30">
<view class="disjcac fc"> <view class="disjcac fc">
<view class="fon22 col9">工单费用()</view> <view class="fon22 col9">工单费用()</view>
<view class="fon42 bold mar-s20">266.00</view> <view class="fon42 bold mar-s20">{{capitalDetail.workOrderCost}}</view>
</view> </view>
<view style="width: 2rpx;height: 120rpx;background-color: #dddddd;margin-top: -10rpx;margin-bottom: -10rpx;"></view> <view style="width: 2rpx;height: 120rpx;background-color: #dddddd;margin-top: -10rpx;margin-bottom: -10rpx;"></view>
<view class="disjcac fc"> <view class="disjcac fc">
<view class="fon22 col9">技术佣金()</view> <view class="fon22 col9">技术佣金()</view>
<view class="fon42 bold mar-s20">266.00</view> <view class="fon42 bold mar-s20">{{capitalDetail.technicalCommission}}</view>
</view> </view>
</view> </view>
</view> </view>
<!-- 收支明细 --> <!-- 收支明细 -->
<view class="pad-zy30"> <view class="pad-zy30">
<view class="account-detailed mar-s50 mar-x30">收支明细</view> <view class="account-detailed mar-s50 mar-x30" :style="{color: ifDetail ? '#00a2e9' : '#000000'}">收支明细</view>
<view class="fon28 disjbac bold account-detailed-item" style="color: #222222;"> <view class="fon28 disjbac bold account-detailed-item" style="color: #222222;">
<view>金额</view> <view>金额</view>
<view>工单编号</view> <view>工单编号</view>
<view>方式</view> <view>方式</view>
<view>工单日期</view> <view>工单日期</view>
</view> </view>
<view class="fon24 disjbac account-detailed-item mar-s20" v-for="(item,index) in 20" :key="index" style="color: #4c4c4c;"> <view class="fon24 disjbac account-detailed-item mar-s20" v-for="(item,index) in incomeExpensesList" :key="index" style="color: #4c4c4c;">
<view class="clips1">-¥1088</view> <view class="clips1">-¥{{item.prices}}</view>
<view class="clips1">GD20220112-1001</view> <view class="clips1">{{item.workOrderNum}}</view>
<view>现金</view> <view>{{item.way}}</view>
<view class="clips1">2019-7-24</view> <view class="clips1">{{item.date}}</view>
</view> </view>
</view> </view>
</view> </view>
<!-- 未结算工单 --> <!-- 未结算工单 -->
<view v-else class="mar-s20 pad-zy10"> <view v-else class="mar-s30 pad-zy10">
<view class="bacf pad-sx20 pad-zy30 radius10 mar-x10" v-for="(item,index) in 10" :key="index"> <view class="bacf pad-sx20 pad-zy30 radius10 mar-x10" v-for="(item,index) in unsettledList" :key="index">
<view class="fon28 disjbac"> <view class="fon28 disjbac">
<view class="col3">株洲市XXX项目名称</view> <view class="col3">{{item.title}}</view>
<view class="col9">林小雨</view> <view class="col9">{{item.name}}</view>
</view> </view>
<view class="fon24 disjbac mar-sx10"> <view class="fon24 disjbac mar-sx10">
<view class="col9">工单编号GD20220112-1001</view> <view class="col9">工单编号{{item.number}}</view>
<view style="color: #00a2e9;">故障类型模组故障</view> <view style="color: #00a2e9;">故障类型{{item.type}}</view>
</view> </view>
<view class="fon24"> <view class="fon24">
<view class="col9 disac width100"><image src="/static/public/icon-account-time.png" mode="scaleToFill" style="width: 23rpx;height: 23rpx;" lazy-load class="pad-y10 flexs"></image>2022-01-12 13:25:16</view> <view class="col9 disac width100">
<image src="/static/public/icon-account-time.png" mode="scaleToFill" style="width: 23rpx;height: 23rpx;" lazy-load class="pad-y10 flexs"></image>
{{item.date}}
</view>
</view> </view>
<view class="fon26 disjbac mar-s10"> <view class="fon26 disjbac mar-s10">
<view class="" style="color: #ff0000;">维保已完成</view> <view class="" style="color: #ff0000;">{{item.status}}</view>
<view class="fon36"><text style="font-size: 24rpx;"></text>260.0</view> <view class="fon36"><text style="font-size: 24rpx;"></text>{{item.priceo}}</view>
</view> </view>
<view class="bbot" style="margin: 20rpx -30rpx;"></view> <view class="bbot" style="margin: 20rpx -30rpx;"></view>
<view class="fon24 col9 disac"><image src="/static/public/icon-account-address.png" mode="scaleToFill" style="width: 19rpx;height: 25rpx;" class="flexs mar-y10"></image>湖南省长沙市xx区1001栋6-12</view> <view class="fon24 col9 disac">
<image src="/static/public/icon-account-address.png" mode="scaleToFill" style="width: 19rpx;height: 25rpx;" class="flexs mar-y10"></image>
{{item.address}}
</view>
<view class="dis fe"> <view class="dis fe">
<view class="unsettled-btn">去结算</view> <view class="unsettled-btn" @tap="goSettlementEv(item.id)"></view>
</view> </view>
</view> </view>
</view> </view>
@ -84,16 +90,62 @@
data() { data() {
return { return {
current:true, current:true,
detailedList:[] detailedList:[],
capitalDetail:{
totalPrice:'0.00', //
workOrderCost:'0.00', //
technicalCommission:'0.00' //
},
//
incomeExpensesList:[
{prices:'1088',workOrderNum:'GD20220112-1001',way:'现金',date:'2019-7-24'},
],
unsettledList:[
{id:1,title:'株洲市XXX项目名称',name:'林小雨',number:'GD20220112-1001',date:'2022-01-12 13:25:16',type:'模组故障',status:'维保已完成',address:'湖南省长沙市xx区1001栋6-12',priceo:'260.0'},
{id:2,title:'株洲市XXX项目名称',name:'林小雨',number:'GD20220112-1001',date:'2022-01-12 13:25:16',type:'模组故障',status:'维保已完成',address:'湖南省长沙市xx区1001栋6-12',priceo:'260.0'},
{id:3,title:'株洲市XXX项目名称',name:'林小雨',number:'GD20220112-1001',date:'2022-01-12 13:25:16',type:'模组故障',status:'维保已完成',address:'湖南省长沙市xx区1001栋6-12',priceo:'260.0'},
{id:4,title:'株洲市XXX项目名称',name:'林小雨',number:'GD20220112-1001',date:'2022-01-12 13:25:16',type:'模组故障',status:'维保已完成',address:'湖南省长沙市xx区1001栋6-12',priceo:'260.0'},
],
ifDetail:false
} }
}, },
onLoad(op) { onLoad(op) {
op.index*1 ? this.current = false : this.current = true; op.index*1 ? this.current = false : this.current = true;
}, },
methods: { methods: {
//
goSettlementEv(id) {
uni.navigateTo({
url:`/pages/workOrder/workOrderThree?id=${id}`
})
},
// //
switchStatus(status){ switchStatus(status){
this.current = status; this.current = status;
uni.pageScrollTo({
scrollTop: 0,
duration:0
})
},
//
checkDetailedEv(){
this.ifDetail = true;
setTimeout(()=>{
this.ifDetail = false;
},2000)
const query = uni.createSelectorQuery().in(this);
query.select('.account-detailed').boundingClientRect(data => {
// console.log(data)
let targetLocation = data.top*1 - 102;
uni.pageScrollTo({
scrollTop: targetLocation,
duration:100
})
}).exec();
},
//
callPhone() {
this.$toolAll.tools.countCustomer('15616330510');
} }
} }
} }