import {
requestOrderList,
requestDeliveryList,
ChabgeStateOrders,
requestDelOrder,
RejectItemOrders,
requestPrintOrder } from '../../http/orderListApi'
import { centToYuan } from '../../unit/priceUtil'
import Toast from '@vant/weapp/toast/toast';
import Dialog from '@vant/weapp/dialog/dialog';
var dayjs = require('dayjs')
Page({
data: {
beforeClose: {},
LoadingMore: true,
noDataMore:false,
productionDate:"",
expirationDate:"",
page:1,
size:10,
tabTop: '0',
navInfo:{},
customerList: [],
current: 1,
autoplay: true,
valueKey: "",
interval: 5000,
navigation: { type: 'dots' },
activeSeled:0,
orderStatus:15,
showaction:false,
showReason:false,
Reasonvalue:"",
actionsList: [
{
name: '编辑',
value:"edit"
},
{
name: '打印',
value:"print"
},
{
name: '取消',
value: 'cancel',
},
],
publicData:{},
fatherList: [
{
tabsName: '待发货',
orderState:15,
ordersList: []
},
{
tabsName: '已发货',
orderState:'hasSend',
ordersList: []
}
],
layout: 1,
},
goodListPagination: {
index: 1,
num: 20,
},
privateData: {
tabIndex: 0,
},
goTop(){
if (wx.pageScrollTo) {
wx.pageScrollTo({
scrollTop: 0
})
}
},
onLoad() {
var that = this
that.setData({
beforeClose: (action) => this.onBeforeClose(action),
productionDate:dayjs().format('YYYY-MM-DD'),
expirationDate:dayjs().year() + '-12-01',
})
},
onShow() {
this.setData({
fatherList:[ {
tabsName: '待发货',
orderState:15,
ordersList: []
},
{
tabsName: '已发货',
orderState:'hasSend',
ordersList: []
}]
})
this.getDataFun("");
},
ChangeTab(event){
let indexSeled =Number(event.detail.index)
console.log(indexSeled)
if(indexSeled==0){
this.setData({
actionsList:[
{ name: '编辑', value:"edit" },
{ name: '打印', value:"print" },
{ name: '取消', value: 'cancel', },
],
});
}else{
this.setData({
actionsList:[
{ name: '打印', value:"print" },
{ name: '取消', value: 'reject', },
],
});
}
this.setData({
page:1,
LoadingMore:true,
noDataMore:false,
activeSeled: indexSeled,
orderStatus:this.data.fatherList[indexSeled].orderState,
fatherList:[ {
tabsName: '待发货',
orderState:15,
ordersList: []
},
{
tabsName: '已发货',
orderState:'hasSend',
ordersList: []
}]
});
this.getDataFun()
this.goTop()
},
goMore(event){
this.setData({
showaction: true,
publicData:event.currentTarget.dataset.bean
});
},
onClose(){
this.setData({
showaction: false
});
},
ChangeGoods(event){
let that =this;
let itemData = event.currentTarget.dataset.bean;
Dialog.confirm({
title: '提示',
message: '确认发货吗?',
})
.then(() => {
that.sendFun(itemData,)
})
.catch(() => {
// on cancel
});
},
sendFun(itemData){
var that =this;
let newdata = itemData.detailList.map((item) => {
return {
productId:item.productInfo.id,
productionDate:that.data.productionDate,
expirationDate:that.data.expirationDate,
shipNum: item.productNum,
};
})
let postdata={
orderId:itemData.orderId,
items:newdata,
}
ChabgeStateOrders(postdata).then((res) => {
wx.showToast({
icon: 'none',
title: "发货成功",
})
that.PublicFun()
})
},
onSelect(event) {
console.log(event.detail);
let actVal= event.detail.value;
if(actVal=='edit'){
this.editItemOrder(this.data.publicData)
}
if(actVal=='cancel'){
this.cancelOrders(this.data.publicData)
}
if(actVal=='reject'){
this.RejectOrders(this.data.publicData)
}
if(actVal=='print'){
this.printItemOrder(this.data.publicData)
}
},
clickItem(e){
console.log(e.currentTarget.dataset.bean)
let itemData= e.currentTarget.dataset.bean;
return
wx.navigateTo({
url: `/pages/EditOrder/EditOrder?MyOrderID=${itemID}`,
});
},
RejectOrders(itemData){
let that =this;
Dialog.confirm({
title: '提示',
message: '确认取消吗?',
})
.then(() => {
that.RejectItem(itemData)
})
.catch(() => {
// on cancel
});
},
RejectItem(itemData){
let that =this;
RejectItemOrders({
delId:itemData.delId,
canceledRemark:"取消订单"
}).then((res) => {
console.log(res)
wx.showToast({
icon: 'none',
title: "取消成功",
})
that.PublicFun()
})
},
CloseReason(){
this.setData({
showReason: false
});
},
ReasonConfirm(){
this.setData({
showReason: true
});
},
cancelOrders(){
var that =this;
that.setData({
showReason: true,
});
},
onBeforeClose: function(action) {
console.log(action)
var that =this;
if(action == 'confirm'){
console.log(this.data.Reasonvalue)
if(this.data.Reasonvalue==""){
wx.showToast({
icon: 'none',
title: "请输入原因",
})
}else{
let itemData = this.data.publicData;
requestDelOrder({
ordId:itemData.orderId,
reason:that.data.Reasonvalue
}).then((res) => {
wx.showToast({
icon: 'none',
title: "取消成功",
})
that.PublicFun()
that.setData({
showReason: false
});
})
}
}else{
this.setData({
showReason: false
});
}
},
editItemOrder(itemData){
let itemID = itemData.orderId;
console.log(itemID)
wx.navigateTo({
url: `/pages/EditOrder/EditOrder?MyOrderID=${itemID}`,
});
},
printItemOrder(itemData){
let postdata={
orderNo:itemData.orderNo
}
let that =this;
requestPrintOrder(postdata).then((res) => {
wx.showToast({
icon: 'none',
title: "打印成功",
})
})
},
getDataFun(){
var that =this;
let postdata= {
pageIndex: that.data.page,
pageSize: 10,
}
let NOsendDate={
// "supplyStartDate":dayjs().startOf('month').format('YYYY-MM-DD'),
// "supplyEndDate":dayjs().endOf('month').format('YYYY-MM-DD'),
"supplyStartDate":"2023-05-01",
"supplyEndDate":"2023-06-30",
}
let HaveSendDate={
beginDate:"2023-05-01",
endDate:"2023-06-30",
// beginDate:dayjs().startOf('month').format('YYYY-MM-DD'),
// endDate:dayjs().endOf('month').format('YYYY-MM-DD'),
statusCode:"DELIVERED"
}
let PromiseReault;
if(this.data.fatherList[that.data.activeSeled].orderState==15){
PromiseReault = requestOrderList({...postdata,...NOsendDate,orderStatus: that.data.orderStatus,});
}
if(this.data.fatherList[that.data.activeSeled].orderState=='hasSend'){
PromiseReault = requestDeliveryList({...postdata,...HaveSendDate});
}
PromiseReault.then(res => {
if(this.data.fatherList[that.data.activeSeled].orderState==15){
var BuildData= res.data.list
}
if(this.data.fatherList[that.data.activeSeled].orderState=='hasSend'){
var BuildData= res.data.data
}
let resultData= BuildData.map((item) => {
return changeItem(item)
});
function changeItem(item){
var objItem={};
if(that.data.fatherList[that.data.activeSeled].orderState==15){
// ccccccccc
objItem={
...item,
supplyDate:dayjs(item.supplyDate).format('YYYY-MM-DD'),
orderAmount:centToYuan(item.orderAmount),
goodsName:item.detailList.map((item) => {
return item.productInfo.name
}).join(", "),
}
}else{
objItem={
goodsName:item.deliveryDtlList.map((item) => {
return item.productName
}).join(", "),
orderNo:item.orderNo,
delId:item.delId,
customerName:item.delCustomerName,
supplyDate:dayjs(item.delSupplyDate).format('YYYY-MM-DD'),
ordSupplierName:item.enterpriseName,
orderAmount:centToYuan(item.delAmount),
}
}
return objItem;
}
setTimeout(() => {
if(resultData.length < 10){
that.setData({
LoadingMore:false,
noDataMore:true,
})
}
that.data.fatherList[that.data.activeSeled].ordersList= that.data.fatherList[that.data.activeSeled].ordersList.concat(resultData)
that.setData({
fatherList: that.data.fatherList
});
}, 100);
}).finally(() => {
// this.editSaveLoading = false;
});
},
onReachBottom() {
var that = this;
if(that.data.noDataMore==false){
this.setData({
page: that.data.page + 1
})
this.getDataFun('')
}
},
PublicFun(){
var that=this;
setTimeout(function () {
that.setData({
page:1,
LoadingMore:true,
noDataMore:false,
activeSeled: that.data.activeSeled,
orderStatus:that.data.fatherList[that.data.activeSeled].orderState,
fatherList:[ {
tabsName: '待发货',
orderState:15,
ordersList: []
},
{
tabsName: '已发货',
orderState:'hasSend',
ordersList: []
}]
});
that.getDataFun()
that.goTop()
}, 1500);
},
goDetail(event){
let itemData= event.currentTarget.dataset.bean;
console.log(itemData)
const BuildData = JSON.stringify(itemData);
wx.navigateTo({ url: `/pages/editOrder/editOrder?detInfo=`+ encodeURIComponent(BuildData) });
},
});
网友评论