diff --git a/common/js/request.js b/common/js/request.js
index eae29a1..037f8d8 100644
--- a/common/js/request.js
+++ b/common/js/request.js
@@ -434,6 +434,14 @@ export default {
})
return res[1].data;
},
+ async applyFinishOrder(params = {}) {
+ let res = await uni.request({
+ url: '/order/detail/app/applyFinishOrder',
+ method: 'POST',
+ data: params
+ })
+ return res[1].data;
+ },
async getOrderDetail(params = {}) {
let res = await uni.request({
url: '/order/detail/app/detail',
diff --git a/pages/order-manage/finish-order.vue b/pages/order-manage/finish-order.vue
index 95b5887..4060059 100644
--- a/pages/order-manage/finish-order.vue
+++ b/pages/order-manage/finish-order.vue
@@ -6,53 +6,55 @@
上传完工照片
-
+
+ :style="'width: 120rpx; height: 120rpx; background-image:url(' + order.goodsLogoUrl + ');'">
- {{servInfo.name}}
-
+ {{order.goodsName}}
+
+ 商城订单
-
+
- 上传完工照片
+ 上传完工照片 {{finishImgList.length}}/3
(按订单要求上传)
-
-
+
+
-
+
-
+
-
-
+ 备注
+
+
-
+
@@ -62,14 +64,6 @@
export default {
data() {
return {
- servInfo: {
- name: '空调挂机柜机清洗服务',
- picUrl: 'https://ossweb-img.qq.com/images/lol/web201310/skin/big20000.jpg',
- tags: [{
- level: 'info',
- content: '商城订单'
- }]
- },
checkIndexArr: [],
servIndex: [
'本单准时上门',
@@ -82,7 +76,9 @@
'产生的费用是服务前说明并报给予客户,客户同意',
'已让客户验收,并提示客户验收内容,已完成此项'
],
- imgList: []
+ finishImgList: [],
+ remark: '',
+ order: null
}
},
onLoad(options) {
@@ -93,11 +89,95 @@
},
methods: {
loadData (orderInfo) {
- console.log(orderInfo)
+ this.order = orderInfo;
},
- checkedCurBox(index) {
- this.checkIndexArr[index] = 1;
+ chooseImgList(e, imgList) {
+ uni.chooseImage({
+ count: 3 - imgList.length, //默认9
+ sizeType: ['original', 'compressed'], //可以指定是原图还是压缩图,默认二者都有
+ sourceType: ['album'], //从相册选择
+ success: (res) => {
+ uni.showLoading({
+ title: '上传中',
+ mask: true
+ });
+ res.tempFilePaths.forEach((tmpUrl, index) => {
+ this.$request.uploadFile(tmpUrl).then((url) => {
+ imgList.push(url);
+ if (index === res.tempFilePaths.length - 1) {
+ uni.hideLoading();
+ }
+ });
+ });
+ }
+ });
+ },
+ viewImage(e, imgList) {
+ uni.previewImage({
+ urls: imgList,
+ current: e.currentTarget.dataset.url
+ });
+ },
+ delImg(e, imgList) {
+ uni.showModal({
+ title: '',
+ content: '确定要删除这张图片吗?',
+ cancelText: '取消',
+ confirmText: '确定',
+ success: res => {
+ if (res.confirm) {
+ imgList.splice(e.currentTarget.dataset.index, 1)
+ }
+ }
+ })
+ },
+ validData() {
+ let errMsg = null;
+ if (!this.finishImgList || this.finishImgList.length === 0) {
+ errMsg = "至少上传一张完工图片"
+ } else if (!this.order || !this.order.orderDetailId) {
+ errMsg = "订单信息异常,请稍后重新发起完单"
+ }
+ if (errMsg) {
+ uni.showToast({
+ title: errMsg,
+ icon: 'none'
+ })
+ return false;
+ }
+ return true;
+ },
+ async finishOrder() {
+ if (!this.validData()) {
+ return;
+ }
+
+ let res = await this.$request.applyFinishOrder({
+ orderDetailId: this.order.orderDetailId,
+ finishImgList: this.finishImgList,
+ remark: this.remark
+ });
+ if (res && res.code === 0) {
+ uni.showToast({
+ icon: 'success',
+ title: '提交成功'
+ })
+ } else if (res && res.msg) {
+ uni.showToast({
+ icon: 'none',
+ title: res.msg,
+ duration: 3000
+ })
+ } else {
+ uni.showToast({
+ icon: 'error',
+ title: '提交失败'
+ })
+ }
}
+ // checkedCurBox(index) {
+ // this.checkIndexArr[index] = 1;
+ // }
},
}
diff --git a/pages/order-manage/order-manage.vue b/pages/order-manage/order-manage.vue
index e109be4..a931f34 100644
--- a/pages/order-manage/order-manage.vue
+++ b/pages/order-manage/order-manage.vue
@@ -687,11 +687,11 @@
url: '/pages/order-manage/serv-detail?order=' + encodeURIComponent(JSON.stringify(order))
})
},
- // finishOrder(order) {
- // uni.navigateTo({
- // url: '/pages/order-manage/finish-order?order=' + encodeURIComponent(JSON.stringify(order))
- // })
- // },
+ finishOrder(order) {
+ uni.navigateTo({
+ url: '/pages/order-manage/finish-order?order=' + encodeURIComponent(JSON.stringify(order))
+ })
+ },
async updateMasterOrder(order, status) {
let res = await this.$request.updateMasterOrder({
id: order.orderMasterId,
@@ -704,23 +704,6 @@
})
}
},
- async finishOrder(order) {
- let curDate = new Date();
- let formatCurDate = curDate.getFullYear() + '-' + (curDate.getMonth() + 1) + '-' + curDate.getDate()
- + ' ' + curDate.getHours() + ':' + curDate.getMinutes() + ':' + curDate.getSeconds();
-
- let res = await this.updateOrderDetailStatus({
- id: order.orderDetailId,
- orderStatus: 4,
- workFinishTime: formatCurDate
- });
- if (res && res.code === 0) {
- this.reloadMasterOrderPage();
- uni.showToast({
- icon: 'success'
- })
- }
- },
updateRefundStatus(status, index) {
this.orderList[index].refundStatus = status;
},
diff --git a/pages/order-manage/serv-detail.vue b/pages/order-manage/serv-detail.vue
index 4e8bb36..4f656e7 100644
--- a/pages/order-manage/serv-detail.vue
+++ b/pages/order-manage/serv-detail.vue
@@ -100,6 +100,21 @@
+
+
+
+ 完工图片
+
+
+
+
+
+
+
+
+ 备注:{{servDetail.workerRemark}}
+
+
订单编码:{{servDetail.orderMasterCode}}
@@ -247,6 +262,12 @@
},
hideModal(e) {
this[e.currentTarget.dataset.modal] = false;
+ },
+ viewImage(e, imgList) {
+ uni.previewImage({
+ urls: imgList,
+ current: e.currentTarget.dataset.url
+ });
}
}
}