nantai-erp-wechat-mobile/driver/pages/add/add.js
2024-10-31 21:29:57 +08:00

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'
}
}
})