This commit is contained in:
2025-06-19 17:33:18 +08:00
commit f8f31dc4d9
437 changed files with 103080 additions and 0 deletions
@@ -0,0 +1,4 @@
{
"usingComponents": {},
"navigationBarTitleText": "操作成功"
}
@@ -0,0 +1,123 @@
/* pages/vehicleMaintenance/maintainSend/maintainSend.wxss */
.container {
.bg {
width: 100%;
height: 250px;
position: absolute;
top: 0;
image {
width: 100%;
height: 100%;
display: block;
}
}
.success {
position: absolute;
width: 100%;
top: 18px;
text-align: center;
image {
width: 85px;
height: 69px;
}
.title {
font-size: 20px;
font-weight: bold;
color: #FFFFFF;
margin-top: 8px;
}
.info {
width: 100%;
margin-top: 10px;
display: flex;
flex-wrap: wrap;
justify-content: center;
.info-top {
width: 90%;
height: 11px;
}
.info-bottom {
width: 87%;
height: 12px;
}
.info-content {
width: calc(85.7% - 16px);
padding: 8px;
background-color: #FFFFFF;
box-shadow: 0rpx 0px 10rpx 2rpx rgba(165, 165, 165, 0.34);
.info-title {
font-size: 16px;
font-weight: bold;
color: #4381FC;
text-align: left;
margin-bottom: 8px;
}
}
.info-button {
width: calc(85.7% - 16px);
padding: 8px;
background-color: #FFFFFF;
box-shadow: 0px 5px 10rpx 2rpx rgba(165, 165, 165, 0.34);
border-radius: 0px 0px 10px 10px;
display: flex;
justify-content: space-between;
.btn {
width: calc(50% - 8px);
height: 40px;
line-height: 40px;
border-radius: 8px;
text-align: center;
border: 1px solid #D6D6D6;
}
.apply {
background: linear-gradient(90deg, #3B7CFC 0%, #548BFC 100%);
color: #2E3A4F;
color: #fff;
font-size: 15px;
font-weight: bold;
}
.cancel {
border: 1px solid #4381FC;
background-color: #FFFFFF;
color: #4381FC;
}
}
}
}
.row {
width: calc(100% -16px);
display: flex;
margin-bottom: 8px;
.label {
width: 22%;
color: #858CA0;
font-size: 14px;
text-align: left;
}
.val {
width: 78%;
text-align: left;
color: #2E3A4F;
font-size: 14px;
word-break: break-word;
}
}
}
@@ -0,0 +1,234 @@
// pages/vehicleMaintenance/maintainSend/maintainSend.ts
Page({
/**
* 页面的初始数据
*/
data: {
message: {} as any, // 展示的信息
userInfo: {} as any, // 用户信息
doNotUnload: false // 是否触发页面卸载的navigateBack方法
},
// 前往下一状态的维修单
goRepair() {
let data = this.data.message;
// 如果步骤4 10审核不通过,返回上一步
// 报价3 <- 审核4 <- 复审10
if (
data.checkFlag == '2' &&
(data.flowStatus == 4 || data.flowStatus == 10)
) {
switch (data.flowStatus) {
case 4:
data.flowStatus = 3;
break;
case 10:
data.flowStatus = 4;
break;
}
}
// 审核后进入复核
else if (data.flowStatus == 4) {
data.flowStatus = 10;
}
// 复核后 到步骤6 维修中
else if (data.flowStatus == 10) {
data.flowStatus = 6;
}
// 如果步骤7确认维修结果不通过,返回步骤6
else if (data.checkFlag == '2' && data.flowStatus == 7) {
data.flowStatus = 6;
}
// 如果是数据录入,跳转道步骤8 已归档数据
else if (data.flowStatus == 100) {
data.flowStatus = 8;
}
// 如果是作废,跳转到已作废
else if (data.flowStatus == 9) {
data.flowStatus = 9;
} else data.flowStatus += 1;
wx.setStorageSync('selectMaintain', this.data.message);
let url = '';
switch (data.flowStatus) {
case 2:
url = '../../UpkeepBillSend/UpkeepBillSend';
break;
case 3:
url = '../../UpkeepBillSend/UpkeepBillSend';
break;
case 4:
url = '../../UpkeepBillCheck/UpkeepBillCheck';
break;
case 6:
url = '../../UpkeepBillProcedure/UpkeepBillProcedure';
break;
case 7:
url = '../../UpkeepBillProcedure/UpkeepBillProcedure';
break;
case 8:
url = '../../UpkeepBillResult/UpkeepBillResult';
break;
case 9:
url = '../../UpkeepBillResult/UpkeepBillResult';
break;
case 10:
url = '../../UpkeepBillCheck/UpkeepBillCheck';
break;
}
this.setData({
doNotUnload: true
});
wx.redirectTo({
url: url,
fail: e => {
console.log(e);
}
});
},
// 返回首页
backHome() {
if (this.data.message.flowStatus == 100) {
if (this.data.userInfo.type == '1') {
wx.reLaunch({
url: '/pages/index/index'
});
} else if (this.data.userInfo.type == '2') {
wx.reLaunch({
url: '/pages/manufacturerIndex/manufacturerIndex'
});
} else if (this.data.userInfo.type == '3') {
wx.reLaunch({
url: '/pages/projectIndex/projectIndex'
});
} else if (this.data.userInfo.type == '4') {
wx.reLaunch({
url: '/pages/maintenanceIndex/maintenanceIndex'
});
} else {
wx.reLaunch({
url: '/pages/login/login'
});
}
}
// 返回列表
else {
this.setData({
doNotUnload: true
});
if (this.data.message.flowStatus == 2) this.goBack(1);
else this.goBack(2);
}
},
goBack(delta: number) {
wx.navigateBack({
delta: delta,
success: function (res) {
// 通过eventChannel向被打开页面传送数据
if (getApp().EventChannel) getApp().EventChannel.emit('refresh');
},
fail: e => {
console.log(e);
}
});
},
getInf() {
// 获取信息
let info = wx.getStorageSync('message');
wx.removeStorage({ key: 'message' });
this.setData({
message: info
});
this.changeTitle(info);
},
// 获取用户信息
getUserInfo() {
let userInfo = wx.getStorageSync('userInfo');
this.setData({
userInfo: userInfo
});
},
// 修改页眉
changeTitle(info: any) {
let title = '操作成功';
switch (info.flowStatus) {
case 1:
title = '已提交';
break;
case 2:
title = '派单成功';
break;
case 3:
title = '报价成功';
break;
case 4:
title = '已提交';
break;
case 5:
title = '已提交';
break;
case 6:
title = '已提交';
break;
case 7:
title = '已提交';
break;
}
wx.setNavigationBarTitle({
title: title
});
},
/**
* 生命周期函数--监听页面加载
*/
onLoad() {},
/**
* 生命周期函数--监听页面初次渲染完成
*/
onReady() {
this.getInf();
this.getUserInfo();
},
/**
* 生命周期函数--监听页面显示
*/
onShow() {
// 不放onReady 是因为有可能切出去然后状态改了得跳转到别的页面
},
/**
* 生命周期函数--监听页面隐藏
*/
onHide() {},
/**
* 生命周期函数--监听页面卸载
*/
onUnload() {
if (!this.data.doNotUnload) {
// 非待派单
if (this.data.message.flowStatus !== 2) {
this.goBack(1);
} else if (getApp().EventChannel) getApp().EventChannel.emit('refresh');
} else {
this.setData({
doNotUnload: false
});
}
},
/**
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh() {},
/**
* 页面上拉触底事件的处理函数
*/
onReachBottom() {},
/**
* 用户点击右上角分享
*/
onShareAppMessage() {}
});
@@ -0,0 +1,144 @@
<!--pages/vehicleMaintenance/maintainSend/maintainSend.wxml-->
<view class="container">
<view class="bg">
<image src="../../../../images/bg_page_blue.png" mode="" />
</view>
<view class="success">
<image src="../../../../images/icon_success.png" mode="" />
<view class="title" wx:if="{{message.flowStatus == 1}}">已提交保养申请</view>
<view class="title" wx:if="{{message.flowStatus == 2}}">已派单</view>
<view class="title" wx:if="{{message.flowStatus == 3}}">已报价</view>
<view class="title" wx:if="{{message.flowStatus == 4 || message.flowStatus == 10}}">已提交</view>
<view class="title" wx:if="{{message.flowStatus == 6}}">已完成保养</view>
<view class="title" wx:if="{{message.flowStatus == 7 && message.finished}}">确认保养结果完成</view>
<view class="title" wx:if="{{message.flowStatus == 7 && !message.finished}}">确认保养结果未完成</view>
<view class="title" wx:if="{{message.flowStatus == 9}}">已作废</view>
<view class="title" wx:if="{{message.flowStatus == 100}}">保养数据录入成功</view>
<view class="info">
<image class="info-top" src="../../../../images/info-top.png" mode="" />
<view class="info-content" wx:if="{{message.flowStatus == 1}}">
<view class="row">
<view class="label">所属项目</view>
<view class="val">{{message.projectName}}</view>
</view>
<view class="row">
<view class="label">车牌号码</view>
<view class="val">{{message.plateNumber}}</view>
</view>
<view class="row">
<view class="label">申请时间</view>
<view class="val">{{message.date}}</view>
</view>
</view>
<view class="info-content" wx:if="{{message.flowStatus == 2}}">
<view class="row">
<view class="label">保养厂</view>
<view class="val">{{message.repairShop}}</view>
</view>
<view class="row">
<view class="label">联系人</view>
<view class="val">{{message.contact}}</view>
</view>
<view class="row">
<view class="label">联系号码</view>
<view class="val">{{message.phone}}</view>
</view>
</view>
<view class="info-content" wx:if="{{message.flowStatus == 3}}">
<view class="row">
<view class="label">保养单</view>
<view class="val">{{message.upkeepOffer}}</view>
</view>
<view class="row">
<view class="label">车牌号</view>
<view class="val">{{message.plateNumber}}</view>
</view>
<view class="row">
<view class="label">报价金额</view>
<view class="val">{{message.price}}元</view>
</view>
</view>
<view class="info-content" wx:if="{{message.flowStatus == 4}}">
<view class="info-title" style="color: #4381FC;" wx:if="{{message.checkResult == 1}}">审核通过</view>
<view class="info-title" style="color: red;" wx:if="{{message.checkResult == 2}}">审核不通过</view>
<view class="row">
<view class="label">审核人</view>
<view class="val">{{message.checkPeople}}</view>
</view>
<view class="row">
<view class="label">审核时间</view>
<view class="val">{{message.date}}</view>
</view>
<view class="row">
<view class="label">审核意见</view>
<view class="val">{{message.checkIdea ? message.checkIdea : '/'}}</view>
</view>
</view>
<view class="info-content" wx:if="{{message.flowStatus == 10}}">
<view class="info-title" style="color: #4381FC;" wx:if="{{message.checkResult == 1}}">复核通过</view>
<view class="info-title" style="color: red;" wx:if="{{message.checkResult == 2}}">复核不通过</view>
<view class="row">
<view class="label">复核人</view>
<view class="val">{{message.checkPeople}}</view>
</view>
<view class="row">
<view class="label">复核时间</view>
<view class="val">{{message.date}}</view>
</view>
<view class="row">
<view class="label">复核意见</view>
<view class="val">{{message.checkIdea ? message.checkIdea : '/'}}</view>
</view>
</view>
<view class="info-content" wx:if="{{message.flowStatus == 6}}">
<view class="row">
<view class="label">所属项目</view>
<view class="val">{{message.projectName}}</view>
</view>
<view class="row">
<view class="label">车牌号码</view>
<view class="val">{{message.plateNumber}}</view>
</view>
<view class="row">
<view class="label">完成时间</view>
<view class="val">{{message.date}}</view>
</view>
</view>
<view class="info-content" wx:if="{{message.flowStatus == 7}}">
<view class="info-title" style="color: #4381FC;" wx:if="{{message.finished}}">保养通过</view>
<view class="info-title" style="color: red;" wx:if="{{!message.finished}}">保养不通过</view>
<view class="row">
<view class="label">确认人</view>
<view class="val">{{message.checkPeople}}</view>
</view>
<view class="row">
<view class="label">确认时间</view>
<view class="val">{{message.date}}</view>
</view>
<view class="row">
<view class="label">确认意见</view>
<view class="val">{{message.checkIdea ? message.checkIdea : '/'}}</view>
</view>
</view>
<view class="info-content" wx:if="{{message.flowStatus == 9}}">
<view class="row">
<view class="label">作废人</view>
<view class="val">{{message.checkPeople}}</view>
</view>
<view class="row">
<view class="label">作废时间</view>
<view class="val">{{message.date}}</view>
</view>
<view class="row">
<view class="label">作废原因</view>
<view class="val">{{message.cancelIdea ? message.cancelIdea : '/'}}</view>
</view>
</view>
<image class="info-bottom" src="../../../../images/info-bottom.png" mode="" />
<view class="info-button">
<view class="btn cancel" catch:tap="goRepair">保养单详情</view>
<view class="btn apply" catch:tap="backHome">{{message.flowStatus == 100 ? '回首页' : '回列表'}}</view>
</view>
</view>
</view>
</view>