261 lines
5.0 KiB
JavaScript
261 lines
5.0 KiB
JavaScript
// pages/maintenance/index.js
|
||
var myRequest = require("../../utils/api.js");
|
||
Page({
|
||
|
||
/**
|
||
* 页面的初始数据
|
||
*/
|
||
data: {
|
||
desc:'',
|
||
show:false,
|
||
orderId:'',
|
||
accessory:[
|
||
],
|
||
searchValue:'',
|
||
accessorySearchList:'',
|
||
faultImg:[],
|
||
accessoryList:[
|
||
|
||
|
||
],
|
||
autosize:{
|
||
minHeight: 70
|
||
},
|
||
},
|
||
|
||
/**
|
||
* 生命周期函数--监听页面加载
|
||
*/
|
||
onLoad(options) {
|
||
|
||
let info = JSON.parse(options.item)
|
||
console.log(info)
|
||
this.setData({
|
||
orderId :info.orderId
|
||
})
|
||
let device = info.device
|
||
this.getdeviceParts(device.id)
|
||
},
|
||
getdeviceParts(deviceVersion){
|
||
let that =this;
|
||
myRequest.myRequest('deviceParts/list/'+deviceVersion,{
|
||
},'get').then(res=>{
|
||
|
||
this.setData({
|
||
accessory:res.data,
|
||
accessorySearchList:res.data
|
||
})
|
||
|
||
|
||
})
|
||
},
|
||
|
||
onClose(){
|
||
this.setData({
|
||
show:false,
|
||
searchValue:''
|
||
})
|
||
},
|
||
delAccessory(e){
|
||
console.log(e)
|
||
let index = e.currentTarget.dataset.index
|
||
let accessoryList = this.data.accessoryList
|
||
accessoryList.splice(index,1)
|
||
this.setData({
|
||
accessoryList
|
||
})
|
||
},
|
||
searchList(e){
|
||
console.log(e.detail)
|
||
let accessory = []
|
||
let list =this.data.accessorySearchList
|
||
if(e.detail){
|
||
|
||
accessory = list.filter(item=>{
|
||
return item.partsName.indexOf(e.detail)!=-1
|
||
})
|
||
}else{
|
||
accessory = list
|
||
}
|
||
this.setData({
|
||
accessory
|
||
})
|
||
|
||
|
||
|
||
},
|
||
saveComplete(){
|
||
console.log(this.data.accessoryList)
|
||
if(this.data.desc==''){
|
||
wx.showToast({
|
||
title: '请输入维修事项',
|
||
icon:'none'
|
||
})
|
||
return
|
||
}
|
||
if(this.data.faultImg.length<3){
|
||
wx.showToast({
|
||
title: '请上传维修图片,不少于3张',
|
||
icon:'none'
|
||
})
|
||
return
|
||
}
|
||
let parts = this.data.accessoryList.map(item=>{
|
||
return {
|
||
partsId:item.partsId,
|
||
quantity:item.num,
|
||
price:item.price
|
||
}
|
||
})
|
||
let img= this.data.faultImg.map(item=>{
|
||
return item.url
|
||
})
|
||
let parma = {
|
||
parts,
|
||
desc:this.data.desc,
|
||
img
|
||
}
|
||
|
||
let orderId = this.data.orderId
|
||
myRequest.myRequest('deviceRepairOrder/supporter/complete/'+this.data.orderId,parma,'post').then(res=>{
|
||
wx.showToast({
|
||
title: '提交成功',
|
||
icon:'none'
|
||
})
|
||
setTimeout(() => {
|
||
wx.navigateBack({
|
||
delta: 1,
|
||
success: function (e) {
|
||
var page = getCurrentPages().pop();
|
||
if (page == undefined || page == null) return;
|
||
page.onLoad({id:orderId}); // 刷新数据
|
||
}
|
||
});
|
||
}, 1000);
|
||
|
||
|
||
})
|
||
},
|
||
onChangeDesc(e){
|
||
this.setData({
|
||
desc:e.detail
|
||
})
|
||
},
|
||
selectItem(e){
|
||
|
||
let data = e.currentTarget.dataset.item
|
||
console.log(data)
|
||
let accessoryList = this.data.accessoryList
|
||
accessoryList.push({
|
||
name:data.partsName,
|
||
type:data.partsModel,
|
||
price:data.price,
|
||
partsId:data.partsId,
|
||
num:'1'
|
||
})
|
||
this.setData({accessoryList,show:false,searchValue:''})
|
||
},
|
||
onChangeNum(e){
|
||
console.log(e.currentTarget.dataset.index)
|
||
let index = e.currentTarget.dataset.index
|
||
let accessoryList =this.data.accessoryList
|
||
accessoryList[index].num = e.detail
|
||
this.setData({
|
||
accessoryList
|
||
})
|
||
},
|
||
addAccessory(){
|
||
this.setData({
|
||
show:true
|
||
})
|
||
},
|
||
bindDel(e){
|
||
console.log(e)
|
||
let faultImg= this.data.faultImg
|
||
let delList = faultImg.splice(e.detail.index,1)
|
||
myRequest.myRequest('wx/oss/'+delList[0].ossId,{
|
||
},'delete').then(res=>{
|
||
this.setData({faultImg})
|
||
})
|
||
|
||
},
|
||
uploadFile(url) {
|
||
return new Promise((resolve, reject) => {
|
||
myRequest.updateImg({
|
||
file: url
|
||
}).then(res => {
|
||
resolve(res)
|
||
})
|
||
})
|
||
|
||
},
|
||
afterRead(event) {
|
||
const {
|
||
file
|
||
} = event.detail;
|
||
let that = this;
|
||
let upload = []
|
||
file.forEach(element => {
|
||
upload.push(this.uploadFile(element.url))
|
||
})
|
||
Promise.all(upload).then(res => {
|
||
|
||
let faultImg = that.data.faultImg
|
||
faultImg=[...faultImg,...res]
|
||
that.setData({
|
||
faultImg
|
||
});
|
||
})
|
||
},
|
||
onChange(){},
|
||
/**
|
||
* 生命周期函数--监听页面初次渲染完成
|
||
*/
|
||
onReady() {
|
||
|
||
},
|
||
|
||
/**
|
||
* 生命周期函数--监听页面显示
|
||
*/
|
||
onShow() {
|
||
|
||
},
|
||
clickCell(){
|
||
|
||
},
|
||
/**
|
||
* 生命周期函数--监听页面隐藏
|
||
*/
|
||
onHide() {
|
||
|
||
},
|
||
|
||
/**
|
||
* 生命周期函数--监听页面卸载
|
||
*/
|
||
onUnload() {
|
||
|
||
},
|
||
|
||
/**
|
||
* 页面相关事件处理函数--监听用户下拉动作
|
||
*/
|
||
onPullDownRefresh() {
|
||
|
||
},
|
||
|
||
/**
|
||
* 页面上拉触底事件的处理函数
|
||
*/
|
||
onReachBottom() {
|
||
|
||
},
|
||
|
||
/**
|
||
* 用户点击右上角分享
|
||
*/
|
||
onShareAppMessage() {
|
||
|
||
}
|
||
}) |