304 lines
6.2 KiB
JavaScript
304 lines
6.2 KiB
JavaScript
// pages/sub/driver/add.js
|
|
import { uploadImage } from '../../../utils/util.js'
|
|
const app = getApp()
|
|
Page({
|
|
|
|
/**
|
|
* 页面的初始数据
|
|
*/
|
|
data: {
|
|
scrollTop: 0,
|
|
isIPX: app.globalData.isIPX,
|
|
rootUrl: app.AppService.apiConfig.configurl,
|
|
typeArr: [
|
|
{
|
|
data_id: '',
|
|
data_name: '请选择产品类型'
|
|
},
|
|
{
|
|
data_id: 'type-00',
|
|
data_name: '散装'
|
|
},
|
|
{
|
|
data_id: 'type-01',
|
|
data_name: '袋装'
|
|
}
|
|
],
|
|
typeIndex: 0,
|
|
varietyArr: [
|
|
{
|
|
data_id: '',
|
|
data_name: '请选择品种'
|
|
}
|
|
],
|
|
varietyIndex: 0,
|
|
supplierId: '',
|
|
supplierDetail: {
|
|
data_id: '',
|
|
data_man: '',
|
|
data_name: '',
|
|
data_phone: '',
|
|
data_address: ''
|
|
},
|
|
siteId: '',
|
|
siteDetail: {
|
|
data_id: '',
|
|
data_man: '',
|
|
data_name: '',
|
|
data_phone: '',
|
|
data_address: ''
|
|
},
|
|
deliveryDetail: {
|
|
driver_id: '',
|
|
product_type: '',
|
|
variety_num: '',
|
|
order_ton: '',
|
|
supplier_id: '',
|
|
site_id: '',
|
|
order_receipt: []
|
|
}
|
|
},
|
|
|
|
/**
|
|
* 生命周期函数--监听页面加载
|
|
*/
|
|
onLoad: function (options) {
|
|
this.getVarietyList()
|
|
},
|
|
|
|
/**
|
|
* 生命周期函数--监听页面初次渲染完成
|
|
*/
|
|
onReady: function () {
|
|
|
|
},
|
|
|
|
/**
|
|
* 生命周期函数--监听页面显示
|
|
*/
|
|
onShow: function () {
|
|
let deliveryDetail = this.data.deliveryDetail
|
|
deliveryDetail.supplier_id = this.data.supplierId
|
|
deliveryDetail.site_id = this.data.siteId
|
|
this.setData({
|
|
deliveryDetail
|
|
})
|
|
},
|
|
|
|
/**
|
|
* 生命周期函数--监听页面隐藏
|
|
*/
|
|
onHide: function () {
|
|
|
|
},
|
|
|
|
/**
|
|
* 生命周期函数--监听页面卸载
|
|
*/
|
|
onUnload: function () {
|
|
|
|
},
|
|
|
|
// 选择产品类型
|
|
bindTypeChange: function (e) {
|
|
const deliveryDetail = this.data.deliveryDetail
|
|
const typeIndex = e.detail.value
|
|
deliveryDetail.product_type = this.data.typeArr[typeIndex].data_id
|
|
this.setData({
|
|
typeIndex,
|
|
deliveryDetail
|
|
})
|
|
},
|
|
|
|
// 选择品种
|
|
bindVarietyChange: function (e) {
|
|
const deliveryDetail = this.data.deliveryDetail
|
|
const varietyIndex = e.detail.value
|
|
deliveryDetail.variety_num = this.data.varietyArr[varietyIndex].data_name
|
|
this.setData({
|
|
varietyIndex,
|
|
deliveryDetail
|
|
})
|
|
},
|
|
|
|
// 改变数量
|
|
bindChangeNum: function (e) {
|
|
const deliveryDetail = this.data.deliveryDetail
|
|
deliveryDetail.order_ton = e.detail.value
|
|
this.setData({
|
|
deliveryDetail
|
|
})
|
|
},
|
|
|
|
// 获取品种列表
|
|
getVarietyList: function () {
|
|
const url = '/mobile/get_data'
|
|
app.AppService.appRequest(url, 'POST', {
|
|
data_type: 'data-01',
|
|
page: 1,
|
|
page_len: 100,
|
|
}, (res) => {
|
|
const data = res.data.result || []
|
|
let varietyArr = this.data.varietyArr
|
|
varietyArr = varietyArr.concat(data)
|
|
this.setData({
|
|
varietyArr
|
|
})
|
|
})
|
|
},
|
|
|
|
//展示图片
|
|
previewImage: function (e) {
|
|
wx.previewImage({
|
|
current: '', // 当前显示图片的http链接
|
|
urls: [e.target.dataset.url] // 需要预览的图片http链接列表
|
|
})
|
|
},
|
|
|
|
//上传图片
|
|
upload: function (e) {
|
|
const count = 5 - this.data.deliveryDetail.order_receipt.length
|
|
uploadImage('', count).then((res) => {
|
|
const deliveryDetail = this.data.deliveryDetail
|
|
deliveryDetail.order_receipt = deliveryDetail.order_receipt.concat(res)
|
|
this.setData({
|
|
deliveryDetail
|
|
})
|
|
})
|
|
},
|
|
|
|
// 删除图片
|
|
delImg: function (e) {
|
|
const index = e.currentTarget.dataset.index
|
|
const type = e.currentTarget.dataset.type || 'order_receipt'
|
|
const deliveryDetail = this.data.deliveryDetail
|
|
let nowList = [] //新数据
|
|
let oldList = deliveryDetail[type] //原数据
|
|
|
|
for (let i = 0; i < oldList.length; i++) {
|
|
if (i == index) {
|
|
continue;
|
|
} else {
|
|
nowList.push(oldList[i])
|
|
}
|
|
}
|
|
deliveryDetail[type] = nowList
|
|
this.setData({
|
|
deliveryDetail
|
|
})
|
|
},
|
|
|
|
// 下单
|
|
submit: function () {
|
|
const data = this.data.deliveryDetail
|
|
let url = '/mobile/create_delivery'
|
|
if (!data.product_type) {
|
|
wx.showToast({
|
|
title: '请选择产品类型',
|
|
icon: 'none'
|
|
})
|
|
return
|
|
}
|
|
if (!data.variety_num) {
|
|
wx.showToast({
|
|
title: '请选择品种',
|
|
icon: 'none'
|
|
})
|
|
return
|
|
}
|
|
if (!data.order_ton) {
|
|
wx.showToast({
|
|
title: '请输入数量',
|
|
icon: 'none'
|
|
})
|
|
return
|
|
}
|
|
if (!data.supplier_id) {
|
|
wx.showToast({
|
|
title: '请选择供应商',
|
|
icon: 'none'
|
|
})
|
|
return
|
|
}
|
|
if (!data.site_id) {
|
|
wx.showToast({
|
|
title: '请选择工地',
|
|
icon: 'none'
|
|
})
|
|
return
|
|
}
|
|
|
|
app.AppService.appRequest(url, 'POST', data, (res) => {
|
|
const id = res.data.delivery_id
|
|
// 重置页面选项
|
|
this.setData({
|
|
typeIndex: 0,
|
|
varietyIndex: 0,
|
|
supplierId: '',
|
|
supplierDetail: {
|
|
data_id: '',
|
|
data_man: '',
|
|
data_name: '',
|
|
data_phone: '',
|
|
data_address: ''
|
|
},
|
|
siteId: '',
|
|
siteDetail: {
|
|
data_id: '',
|
|
data_man: '',
|
|
data_name: '',
|
|
data_phone: '',
|
|
data_address: ''
|
|
},
|
|
deliveryDetail: {
|
|
driver_id: '',
|
|
product_type: '',
|
|
variety_num: '',
|
|
order_ton: '',
|
|
supplier_id: '',
|
|
site_id: '',
|
|
order_receipt: []
|
|
}
|
|
})
|
|
wx.navigateTo({
|
|
url: `/driver/pages/add/addResult?id=${id}`
|
|
})
|
|
this.setData({
|
|
scrollTop: 0
|
|
})
|
|
})
|
|
},
|
|
|
|
// 跳转页面
|
|
navigateTo: function (e) {
|
|
const url = e.currentTarget.dataset.url
|
|
wx.navigateTo({
|
|
url: url,
|
|
})
|
|
},
|
|
|
|
/**
|
|
* 页面相关事件处理函数--监听用户下拉动作
|
|
*/
|
|
onPullDownRefresh: function () {
|
|
|
|
},
|
|
|
|
/**
|
|
* 页面上拉触底事件的处理函数
|
|
*/
|
|
onReachBottom: function () {
|
|
|
|
},
|
|
|
|
/**
|
|
* 用户点击右上角分享
|
|
*/
|
|
onShareAppMessage: function () {
|
|
return {
|
|
title: '南泰',
|
|
path: '/pages/login/login'
|
|
}
|
|
}
|
|
|
|
}) |