736 lines
23 KiB
JavaScript
736 lines
23 KiB
JavaScript
let util = require('../../../../utils/util')
|
||
let apiArr = require('../../../../api/partner')
|
||
const app = getApp({ allowDefault: true })
|
||
|
||
Page({
|
||
data: {
|
||
s: app.system.statusBarHeight, // 状态栏高度
|
||
n: (app.menu.top - app.system.statusBarHeight) * 2 + app.menu.height, // 导航栏高度
|
||
t: app.menu.top, // 胶囊局顶部距离
|
||
h: app.menu.height, // 胶囊高度
|
||
|
||
type: "",
|
||
id: "",
|
||
newOrderDesc: {},
|
||
newOrderDateShow: false,
|
||
newOrderDateAppointment: "",
|
||
msg: "", //安装说明
|
||
msg2: "", //更换说明
|
||
imgList: [],
|
||
imgList2: [],
|
||
repairOrderDesc: {},
|
||
partOrderDesc: {},
|
||
|
||
uninstallDesc: {},
|
||
uninstalldis: false,
|
||
uninstallMsg: "",
|
||
UninstallDate: false,
|
||
uninstall_time: "",
|
||
|
||
|
||
dis1: false,
|
||
dis2: false,
|
||
dis3: false,
|
||
deviceInfo: {
|
||
device_code: ""
|
||
},
|
||
deviceCode: "",
|
||
|
||
|
||
minDate: new Date().getTime(),
|
||
formatter(type, value) {
|
||
if (type === 'year') {
|
||
return `${value}年`;
|
||
}
|
||
if (type === 'month') {
|
||
return `${value}月`;
|
||
}
|
||
if (type === 'day') {
|
||
return `${value}日`;
|
||
}
|
||
return value;
|
||
},
|
||
},
|
||
|
||
back() {
|
||
let that = this
|
||
let pages = getCurrentPages() // 获取页面栈
|
||
let prevPage = pages[pages.length - 2] // 上一页的实例
|
||
if(prevPage.route == 'packages/partner/pages/newWorkOrder/newWorkOrder'){
|
||
wx.navigateTo({
|
||
url: '/packages/partner/pages/device/device',
|
||
})
|
||
}else{
|
||
if (that.data.type == 0) {
|
||
wx.reLaunch({
|
||
url: '/packages/partner/pages/WorkOrder/WorkOrder',
|
||
})
|
||
} else if (that.data.type == 1) {
|
||
wx.reLaunch({
|
||
url: '/packages/WaterPurifier/pages/upKeep/upKeep',
|
||
})
|
||
} else if (that.data.type == 2) {
|
||
wx.reLaunch({
|
||
url: '/packages/partner/pages/partsOrder/partsOrder',
|
||
})
|
||
} else if (that.data.type == 3) {
|
||
wx.reLaunch({
|
||
url: '/packages/partner/pages/removeOrder/removeOrder',
|
||
})
|
||
}
|
||
}
|
||
},
|
||
|
||
|
||
// 新装///////////////////////////////
|
||
//输入框
|
||
updateInstructions(e) {
|
||
let that = this
|
||
that.setData({
|
||
msg: e.detail.value
|
||
})
|
||
},
|
||
// 上传图片
|
||
uploadImage() {
|
||
let that = this
|
||
wx.showLoading({
|
||
title: '上传中...',
|
||
})
|
||
wx.chooseMedia({
|
||
count: 9,
|
||
mediaType: ['image'],
|
||
success: (res) => {
|
||
let tempFiles = res.tempFiles.map(file => file.tempFilePath);
|
||
let imgList = []
|
||
let imgList2 = []
|
||
let uploadCount = 0;
|
||
|
||
tempFiles.forEach((item, index) => {
|
||
util.uploadFileUrl(item, res => {
|
||
res = JSON.parse(res)
|
||
imgList[index] = util.img_url + res.data.path;
|
||
imgList2[index] = res.data.path
|
||
uploadCount++;
|
||
|
||
// 所有文件上传完成后更新数据
|
||
if (uploadCount === tempFiles.length) {
|
||
that.setData({
|
||
imgList: imgList,
|
||
imgList2
|
||
}, () => {
|
||
wx.hideLoading();
|
||
});
|
||
}
|
||
});
|
||
});
|
||
},
|
||
fail: err => {
|
||
wx.hideLoading()
|
||
console.log(err, 999);
|
||
}
|
||
});
|
||
},
|
||
// 删除图片
|
||
deleteImage(e) {
|
||
let that = this
|
||
const index = e.currentTarget.dataset.index;
|
||
let imgList = that.data.imgList
|
||
let imgList2 = that.data.imgList2
|
||
imgList.splice(index, 1)
|
||
imgList2.splice(index, 1)
|
||
this.setData({
|
||
imgList,
|
||
imgList2
|
||
});
|
||
},
|
||
getNewOrderDesc() {
|
||
let that = this
|
||
wx.showLoading({
|
||
title: '加载中...',
|
||
mask: true
|
||
})
|
||
util.postUrl4(apiArr.newOrderDesc, { install_id: Number(that.data.id) }, res => {
|
||
wx.hideLoading()
|
||
console.log(res);
|
||
res.product_icon2 = util.img_url + res.product_icon
|
||
let imgList = ''
|
||
let newArr = []
|
||
if (res.install_imgs) {
|
||
imgList = res.install_imgs.split(",")
|
||
newArr = []
|
||
imgList.forEach(item => {
|
||
newArr.push(util.img_url + item)
|
||
})
|
||
} else {
|
||
imgList = ''
|
||
newArr = []
|
||
}
|
||
that.setData({
|
||
newOrderDesc: res,
|
||
imgList: newArr,
|
||
msg: res.install_desc,
|
||
newOrderDateAppointment: res.remaining_days ? res.remaining_days : ''
|
||
})
|
||
|
||
if (res.status == 5) {
|
||
// that.getDeriveInfo()
|
||
let imgList2 = ''
|
||
let imgList = []
|
||
|
||
if (res.install_imgs) {
|
||
console.log(123);
|
||
imgList2 = res.install_imgs.split(',')
|
||
imgList = []
|
||
imgList2.forEach((item, index) => {
|
||
imgList.push(util.img_url + item)
|
||
})
|
||
} else {
|
||
console.log(456);
|
||
imgList2 = []
|
||
imgList = []
|
||
}
|
||
that.setData({
|
||
msg: res.install_desc,
|
||
imgList2,
|
||
imgList,
|
||
dis1: true
|
||
})
|
||
}
|
||
|
||
|
||
|
||
})
|
||
},
|
||
closeNewOrder() {
|
||
let that = this
|
||
that.setData({
|
||
newOrderDateShow: !that.data.newOrderDateShow
|
||
})
|
||
},
|
||
changeNewAppointment(e) {
|
||
let that = this
|
||
that.setData({
|
||
newOrderDateAppointment: e.detail.value
|
||
})
|
||
},
|
||
jihuoItem() {
|
||
let that = this
|
||
|
||
util.postUrl4(apiArr.BeActive, {
|
||
install_id: that.data.newOrderDesc.install_id,
|
||
remaining_days: Number(that.data.newOrderDateAppointment)
|
||
}, res => {
|
||
console.log(res);
|
||
if (res.msg == '操作成功') {
|
||
wx.showToast({
|
||
title: '激活成功!',
|
||
icon: "none"
|
||
})
|
||
setTimeout(() => {
|
||
that.back()
|
||
}, 1500)
|
||
}
|
||
})
|
||
},
|
||
completeNewOrder() {
|
||
let that = this
|
||
let content = '确认完成该工单吗?'
|
||
|
||
if (!that.data.msg) {
|
||
return wx.showToast({
|
||
title: '请填写安装说明',
|
||
icon: "none"
|
||
})
|
||
}
|
||
|
||
if (!that.data.deviceInfo.device_code) {
|
||
return wx.showToast({
|
||
title: '请扫设备二维码或填写设备编码',
|
||
icon: "none"
|
||
})
|
||
}
|
||
|
||
if (!that.data.imgList.length) {
|
||
return wx.showToast({
|
||
title: '请上传安装图片',
|
||
icon: "none"
|
||
})
|
||
}
|
||
|
||
wx.showModal({
|
||
title: '提示',
|
||
content: content,
|
||
success: (res) => {
|
||
if (res.confirm) {
|
||
util.postUrl4(apiArr.completeNewOrder, {
|
||
install_id: Number(that.data.id),
|
||
status: 3,
|
||
install_desc: that.data.msg,
|
||
install_imgs: that.data.imgList2.join(','),
|
||
install_time: util.getCurrentTime(),
|
||
device_id: that.data.deviceInfo.device_id,
|
||
product_id: that.data.deviceInfo.product_id
|
||
}, res => {
|
||
if (res.msg == '操作成功') {
|
||
// that.jihuoItem()
|
||
wx.showToast({
|
||
title: '创建成功!',
|
||
icon: "none"
|
||
})
|
||
setTimeout(() => {
|
||
// wx.navigateBack({
|
||
// delta: 1
|
||
// })
|
||
that.getNewOrderDesc()
|
||
}, 1500)
|
||
} else {
|
||
wx.showToast({
|
||
title: res.msg,
|
||
icon: "none"
|
||
})
|
||
}
|
||
})
|
||
}
|
||
}
|
||
});
|
||
},
|
||
cancelNewOrder() {
|
||
let that = this
|
||
util.postUrl4(apiArr.cancelNewOrder, {
|
||
install_id: Number(that.data.id),
|
||
}, res => {
|
||
wx.showToast({
|
||
title: res.msg,
|
||
})
|
||
if (res.msg == '操作成功') {
|
||
setTimeout(() => {
|
||
// wx.navigateBack({
|
||
// delta: 1
|
||
// })
|
||
that.back()
|
||
}, 1500);
|
||
}
|
||
})
|
||
},
|
||
scanQrcode() {
|
||
let that = this
|
||
wx.scanCode({
|
||
success: (res) => {
|
||
// 处理扫码结果
|
||
this.setData({
|
||
deviceCode: res.result
|
||
});
|
||
util.postUrl4(apiArr.getDeviceByCode, {
|
||
device_code: res.result,
|
||
install_id: that.data.id
|
||
}, res => {
|
||
that.setData({
|
||
deviceInfo: res
|
||
})
|
||
})
|
||
|
||
},
|
||
fail: (err) => {
|
||
wx.showToast({
|
||
title: '扫码失败',
|
||
icon: 'none'
|
||
});
|
||
}
|
||
});
|
||
},
|
||
iptDeviceCode(e) {
|
||
let that = this
|
||
that.setData({
|
||
"deviceInfo.device_code": e.detail.value
|
||
})
|
||
},
|
||
chooseDevice() {
|
||
let that = this
|
||
wx.navigateTo({
|
||
url: `/packages/partner/pages/chooseDevice/chooseDevice?id=${that.data.id}&product_id=${that.data.newOrderDesc.product_id}`,
|
||
})
|
||
},
|
||
// 新装///////////////////////////////
|
||
|
||
// 维修 ///////////////////////////////
|
||
getRepairOrderDesc() {
|
||
let that = this
|
||
wx.showLoading({
|
||
title: '加载中...',
|
||
mask: true
|
||
})
|
||
util.postUrl4(apiArr.RepairOrderDesc, {
|
||
repair_id: that.data.id
|
||
}, res => {
|
||
wx.hideLoading()
|
||
if (res.fault_imgs) {
|
||
res.fault_imgs = util.img_url + res.fault_imgs
|
||
}
|
||
that.setData({
|
||
repairOrderDesc: res
|
||
})
|
||
|
||
if (res.status == 3 || res.status == 4) {
|
||
let imgList2 = res.repair_imgs.split(',')
|
||
let imgList = []
|
||
imgList2.forEach((item, index) => {
|
||
imgList.push(util.img_url + item)
|
||
})
|
||
console.log(imgList);
|
||
that.setData({
|
||
msg: res.repair_desc,
|
||
imgList,
|
||
imgList2,
|
||
dis2: true
|
||
})
|
||
}
|
||
})
|
||
},
|
||
completeRepairOrder(e) {
|
||
let status = Number(e.currentTarget.dataset.type)
|
||
let that = this
|
||
let content = '确认完成该工单吗?'
|
||
if (status == 3) {
|
||
content = '确认完成该工单吗?'
|
||
} else {
|
||
content = '确认撤销该工单吗?'
|
||
}
|
||
wx.showModal({
|
||
title: '提示',
|
||
content: content,
|
||
success: (res) => {
|
||
if (res.confirm) {
|
||
util.postUrl4(apiArr.completeRepairOrder, {
|
||
repair_id: Number(that.data.id),
|
||
status,
|
||
repair_desc: that.data.msg,
|
||
repair_imgs: that.data.imgList2.join(','),
|
||
repair_time: util.getCurrentTime()
|
||
}, res => {
|
||
wx.showToast({
|
||
title: res.msg,
|
||
})
|
||
if (res.msg == '操作成功') {
|
||
setTimeout(() => {
|
||
// wx.navigateBack({
|
||
// delta: 1
|
||
// })
|
||
that.back()
|
||
}, 1500);
|
||
}
|
||
})
|
||
}
|
||
}
|
||
});
|
||
},
|
||
// 维修 ///////////////////////////////
|
||
|
||
// 滤芯更换 ///////////////////////////////
|
||
getPartOrderDesc() {
|
||
let that = this
|
||
wx.showLoading({
|
||
title: '加载中...',
|
||
mask: true
|
||
})
|
||
util.postUrl4(apiArr.PartOrderDesc, {
|
||
replace_id: that.data.id
|
||
}, res => {
|
||
wx.hideLoading()
|
||
that.setData({
|
||
partOrderDesc: res
|
||
})
|
||
|
||
if (res.status == 3 || res.status == 4) {
|
||
that.setData({
|
||
msg2: res.install_desc,
|
||
dis3: true
|
||
})
|
||
}
|
||
|
||
})
|
||
},
|
||
|
||
//没接口
|
||
completePartOrder(e) {
|
||
let status = Number(e.currentTarget.dataset.type)
|
||
let that = this
|
||
let content = '确认完成该工单吗?'
|
||
if (status == 3) {
|
||
content = '确认完成该工单吗?'
|
||
} else {
|
||
content = '确认撤销该工单吗?'
|
||
}
|
||
wx.showModal({
|
||
title: '提示',
|
||
content: content,
|
||
success: (res) => {
|
||
if (res.confirm) {
|
||
util.postUrl4(apiArr.completePartOrder, {
|
||
replace_id: Number(that.data.id),
|
||
status,
|
||
install_desc: that.data.msg2,
|
||
install_time: util.getCurrentTime()
|
||
}, res => {
|
||
wx.showToast({
|
||
title: res.msg,
|
||
})
|
||
if (res.msg == '操作成功') {
|
||
setTimeout(() => {
|
||
|
||
if (status == 3) {
|
||
wx.navigateTo({
|
||
url: '/packages/WaterPurifier/pages/device/deviceDesc/deviceDesc?device_id=' + that.data.partOrderDesc.device_id,
|
||
})
|
||
} else {
|
||
wx.navigateTo({
|
||
url: '/packages/partner/pages/partsOrder/partsOrder',
|
||
})
|
||
}
|
||
}, 1500);
|
||
}
|
||
})
|
||
}
|
||
}
|
||
});
|
||
},
|
||
updateInstructions2(e) {
|
||
let that = this
|
||
that.setData({
|
||
msg2: e.detail.value
|
||
})
|
||
},
|
||
// 滤芯更换 ///////////////////////////////
|
||
|
||
|
||
|
||
// 拆卸工单详情/////////////////////////////////////////////
|
||
getUninstallDesc() {
|
||
let that = this
|
||
wx.showLoading({
|
||
title: '加载中...',
|
||
mask: true
|
||
})
|
||
util.postUrl4(apiArr.getUninstallDesc, {
|
||
uninstall_id: that.data.id
|
||
}, res => {
|
||
wx.hideLoading()
|
||
let uninstalldis = false
|
||
if (res.status != 2) {
|
||
uninstalldis = true
|
||
}
|
||
|
||
let imgList = ''
|
||
let newArr = []
|
||
if (res.uninstall_imgs) {
|
||
imgList = res.uninstall_imgs.split(",")
|
||
imgList.forEach(item => {
|
||
newArr.push(util.img_url + item)
|
||
})
|
||
} else {
|
||
imgList = ''
|
||
newArr = []
|
||
}
|
||
|
||
|
||
that.setData({
|
||
uninstallDesc: res,
|
||
uninstall_time: res.uninstall_time,
|
||
uninstallMsg: res.uninstall_desc,
|
||
imgList: newArr,
|
||
uninstalldis
|
||
})
|
||
})
|
||
},
|
||
updateInstructions3(e) {
|
||
let that = this
|
||
that.setData({
|
||
uninstallMsg: e.detail.value
|
||
})
|
||
},
|
||
changeUninstallDate() {
|
||
let that = this
|
||
that.setData({
|
||
UninstallDate: !that.data.UninstallDate
|
||
})
|
||
},
|
||
onInput(event) {
|
||
let that = this
|
||
const date = new Date(event.detail); // 获取选中的 Date 对象
|
||
const year = date.getFullYear(); // 获取年份
|
||
const month = String(date.getMonth() + 1).padStart(2, '0'); // 月份从0开始,所以需要+1
|
||
const day = String(date.getDate()).padStart(2, '0');
|
||
const hours = String(date.getHours()).padStart(2, '0'); // 小时补零
|
||
const minutes = String(date.getMinutes()).padStart(2, '0'); // 分钟补零
|
||
const time = `${year}-${month}-${day} ${hours}:${minutes}`;
|
||
that.setData({
|
||
uninstall_time: time,
|
||
UninstallDate: false
|
||
})
|
||
},
|
||
onInput2(event) {
|
||
let that = this
|
||
const date = new Date(event.detail); // 获取选中的 Date 对象
|
||
const year = date.getFullYear(); // 获取年份
|
||
const month = String(date.getMonth() + 1).padStart(2, '0'); // 月份从0开始,所以需要+1
|
||
const day = String(date.getDate()).padStart(2, '0');
|
||
const hours = String(date.getHours()).padStart(2, '0'); // 小时补零
|
||
const minutes = String(date.getMinutes()).padStart(2, '0'); // 分钟补零
|
||
const time = `${year}-${month}-${day} ${hours}:${minutes}`;
|
||
that.setData({
|
||
newOrderDateAppointment: time,
|
||
newOrderDateShow: false
|
||
})
|
||
},
|
||
// 拆机
|
||
uninstallDesc() {
|
||
let that = this
|
||
|
||
if (!that.data.uninstallMsg) {
|
||
return wx.showToast({
|
||
title: '请填写拆除说明',
|
||
icon: "none"
|
||
})
|
||
}
|
||
if (!that.data.uninstall_time) {
|
||
return wx.showToast({
|
||
title: '请选择拆除时间',
|
||
icon: "none"
|
||
})
|
||
}
|
||
if (!that.data.imgList.length) {
|
||
return wx.showToast({
|
||
title: '请上传拆除图片',
|
||
icon: "none"
|
||
})
|
||
}
|
||
|
||
util.postUrl4(apiArr.unintsall, {
|
||
uninstall_id: that.data.uninstallDesc.uninstall_id,
|
||
uninstall_time: that.data.uninstall_time + ':00',
|
||
uninstall_desc: that.data.uninstallMsg,
|
||
uninstall_imgs: that.data.imgList2.join(','),
|
||
}, res => {
|
||
console.log(res);
|
||
if (res.msg == '操作成功') {
|
||
wx.showToast({
|
||
title: '拆机成功!',
|
||
icon: "none"
|
||
})
|
||
setTimeout(() => {
|
||
// wx.navigateBack({
|
||
// delta: 1
|
||
// })
|
||
that.setData({
|
||
uninstallMsg: "",
|
||
imgList2: [],
|
||
imgList: [],
|
||
uninstall_time: "",
|
||
})
|
||
that.getUninstallDesc()
|
||
}, 1500)
|
||
} else {
|
||
wx.showToast({
|
||
title: res.msg,
|
||
icon: "none"
|
||
})
|
||
}
|
||
})
|
||
},
|
||
|
||
//报废 入库
|
||
operate(e) {
|
||
let that = this
|
||
let status = e.currentTarget.dataset.type
|
||
let content = ''
|
||
if (status == 9) {
|
||
content = '确定要入库吗'
|
||
} else {
|
||
content = '确定要报废吗'
|
||
}
|
||
wx.showModal({
|
||
title: '提示',
|
||
content: content,
|
||
complete: (res) => {
|
||
if (res.cancel) {
|
||
|
||
}
|
||
|
||
if (res.confirm) {
|
||
util.postUrl4(apiArr.operate, {
|
||
uninstall_id: that.data.uninstallDesc.uninstall_id,
|
||
status: status
|
||
}, res => {
|
||
wx.showToast({
|
||
title: '操作成功',
|
||
icon: "none"
|
||
})
|
||
setTimeout(() => {
|
||
// wx.navigateBack({
|
||
// delta: 1
|
||
// })
|
||
that.back()
|
||
}, 1500)
|
||
})
|
||
}
|
||
}
|
||
})
|
||
|
||
},
|
||
|
||
|
||
|
||
//查询设备实时信息
|
||
getDeriveInfo() {
|
||
let that = this
|
||
util.postUrl4(apiArr.boardInfo, {
|
||
device_id: that.data.newOrderDesc.device_id
|
||
}, res => {
|
||
console.log(res);
|
||
})
|
||
},
|
||
|
||
|
||
|
||
onLoad(options) {
|
||
let that = this
|
||
// 这里可以根据options.id来设置不同的假数据
|
||
const id = options.id;
|
||
this.setData({
|
||
id,
|
||
type: options.type
|
||
});
|
||
|
||
if (options.type == 0) {
|
||
that.getNewOrderDesc()
|
||
} else if (options.type == 1) {
|
||
that.getRepairOrderDesc()
|
||
} else if (options.type == 2) {
|
||
that.getPartOrderDesc()
|
||
} else if (options.type == 3) {
|
||
that.getUninstallDesc()
|
||
}
|
||
|
||
wx.showShareMenu({
|
||
withShareTicket: true,
|
||
menus: ['shareAppMessage', 'shareTimeline']
|
||
})
|
||
|
||
},
|
||
|
||
onShareAppMessage() {
|
||
return {
|
||
title: '人人爱净水', // 分享卡片标题(必填)
|
||
path: '/pages/water_filter/water_filter', // 用户点击后跳转的路径(可选,默认当前页)
|
||
imageUrl: 'https://wechat-img-file.oss-cn-beijing.aliyuncs.com/share.png' // 自定义图片(可选,比例建议 5:4)
|
||
}
|
||
},
|
||
onShareTimeline() {
|
||
return {
|
||
title: '人人爱净水', // 自定义标题
|
||
query: '', // 自定义页面路径中的参数
|
||
imageUrl: 'https://wechat-img-file.oss-cn-beijing.aliyuncs.com/share.png' // 自定义分享图片路径
|
||
}
|
||
},
|
||
|
||
|
||
}); |