You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
210 lines
4.9 KiB
210 lines
4.9 KiB
// other/pages/unableAccept/unableAccept.js
|
|
const {
|
|
canNotAcceptance,
|
|
canNotAcceptanceDetail,
|
|
API_BASE_URL,
|
|
IMG_BASE_URL,
|
|
} = require('../../../api/api')
|
|
Page({
|
|
|
|
/**
|
|
* 页面的初始数据
|
|
*/
|
|
data: {
|
|
API_BASE_URL: API_BASE_URL,
|
|
IMG_BASE_URL: IMG_BASE_URL,
|
|
capture: ['camera', 'album'], //拍摄模式
|
|
reason: '',
|
|
imgPath: []
|
|
},
|
|
|
|
/**
|
|
* 生命周期函数--监听页面加载
|
|
*/
|
|
onLoad(options) {
|
|
this.setData({
|
|
id: options.id,
|
|
type: options.type,
|
|
});
|
|
this.getDetail()
|
|
},
|
|
|
|
/**
|
|
* 生命周期函数--监听页面显示
|
|
*/
|
|
onShow() {
|
|
|
|
},
|
|
/** 上传图片 **/
|
|
afteruploadPhotoRead(e) {
|
|
var that = this;
|
|
const choseType = Array.isArray(e.detail.file) ? (e.detail.file[0].choseType || undefined) : (e.detail.file.choseType || undefined); //camera相机 album相册
|
|
const name = e.currentTarget.dataset.name
|
|
console.log("上传后", this.data.direction, choseType, e);
|
|
|
|
if (Array.isArray(e.detail.file)) { //多张
|
|
var count = 0;
|
|
this.afteruploadPhotoReadS(e, count)
|
|
return
|
|
}
|
|
const {
|
|
file
|
|
} = e.detail;
|
|
wx.showLoading({
|
|
title: '上传中',
|
|
})
|
|
wx.uploadFile({
|
|
url: that.data.API_BASE_URL + 'common/weChat/uploadImage',
|
|
filePath: file.url,
|
|
name: 'file',
|
|
complete: function (res) {
|
|
console.log("上传图片", res)
|
|
wx.hideLoading()
|
|
if (res.statusCode == 200) {
|
|
wx.showToast({
|
|
title: '选择成功',
|
|
icon: 'none',
|
|
})
|
|
var item = {
|
|
url: "",
|
|
name: "",
|
|
}
|
|
item.url = file.url;
|
|
item.name = res.data;
|
|
that.data[name].push(item)
|
|
that.setData({
|
|
[`${name}`]: that.data[name]
|
|
})
|
|
} else {
|
|
wx.showToast({
|
|
title: '选择失败',
|
|
icon: 'error'
|
|
})
|
|
}
|
|
}
|
|
})
|
|
},
|
|
/** 上传多张图片递归 **/
|
|
afteruploadPhotoReadS(e, count) {
|
|
let ob = {
|
|
name: '',
|
|
url: '',
|
|
}
|
|
const name = e.currentTarget.dataset.name
|
|
wx.showLoading({
|
|
title: '加载第' + (count + 1) + '张照片中',
|
|
mask: true,
|
|
})
|
|
const element = e.detail.file[count];
|
|
var that = this;
|
|
wx.uploadFile({
|
|
url: that.data.API_BASE_URL + 'common/weChat/uploadImage',
|
|
filePath: element.url,
|
|
name: 'file',
|
|
success(res) {
|
|
wx.hideLoading()
|
|
if (res.statusCode == 200) {
|
|
count = count + 1;
|
|
ob.name = res.data
|
|
ob.url = element.url
|
|
that.data[name].push(ob);
|
|
that.setData({
|
|
[`${name}`]: that.data[name]
|
|
})
|
|
if (count == e.detail.file.length) {
|
|
wx.showToast({
|
|
title: '选择成功',
|
|
icon: 'none'
|
|
})
|
|
} else {
|
|
that.afteruploadPhotoReadS(e, count)
|
|
}
|
|
} else {
|
|
wx.showToast({
|
|
title: '选择失败',
|
|
icon: 'error'
|
|
})
|
|
}
|
|
}
|
|
})
|
|
},
|
|
/** 删除图片 **/
|
|
deleteImg(e) {
|
|
const name = e.currentTarget.dataset.name
|
|
const index = e.detail.index //删除图片的下标
|
|
this.data[name].splice(index, 1);
|
|
this.setData({
|
|
[`${name}`]: this.data[name]
|
|
})
|
|
},
|
|
/** 取消 **/
|
|
cancel(e) {
|
|
wx.showModal({
|
|
title: '提示',
|
|
content: '确定取消?',
|
|
complete: (res) => {
|
|
if (res.cancel) {}
|
|
if (res.confirm) {
|
|
wx.navigateBack()
|
|
}
|
|
|
|
}
|
|
})
|
|
},
|
|
//详情
|
|
getDetail(){
|
|
wx.showLoading({
|
|
title: "加载中"
|
|
});
|
|
canNotAcceptanceDetail({
|
|
detailId: this.data.id
|
|
}).then(res=>{
|
|
if(res.code == 200 && res.data){
|
|
this.setData({
|
|
reason: res.data.unAcceptReason,
|
|
imgPath: res.data.unAcceptFile?res.data.unAcceptFile.split(",").map(itm => {return {name: itm, url: IMG_BASE_URL + itm}}) : [],
|
|
})
|
|
}
|
|
wx.hideLoading();
|
|
});
|
|
},
|
|
//提交
|
|
submitFrom(){
|
|
if (!this.data.reason) {
|
|
wx.showToast({
|
|
title: '请输入无法验收原因',
|
|
icon: 'none',
|
|
duration: 2000
|
|
})
|
|
return
|
|
}
|
|
wx.showLoading({
|
|
title: '提交中',
|
|
mask: true
|
|
})
|
|
canNotAcceptance({
|
|
detailId: this.data.id,
|
|
reason: this.data.reason,
|
|
imgPath: this.data.imgPath.length > 0 ? this.data.imgPath.map(itm => itm.name).join(",") : "", //凭证
|
|
}).then((res) => {
|
|
wx.hideLoading()
|
|
if (res.code == 200) {
|
|
wx.showToast({
|
|
title: "操作成功",
|
|
icon: 'none',
|
|
success: function () {
|
|
setTimeout(function () {
|
|
//延时返回上一页面
|
|
wx.navigateBack()
|
|
}, 1800) //延迟时间
|
|
}
|
|
})
|
|
} else {
|
|
wx.showToast({
|
|
title: res.errMsg,
|
|
icon: 'none'
|
|
})
|
|
}
|
|
})
|
|
}
|
|
}) |