405 lines
9.4 KiB
TypeScript
405 lines
9.4 KiB
TypeScript
// pages/handoverVehicle/handoverVehicleRecord/handoverVehicleRecord.ts
|
||
import { getAction } from '../../../api/base';
|
||
const dayjs = require('dayjs');
|
||
|
||
Page({
|
||
/**
|
||
* 页面的初始数据
|
||
*/
|
||
data: {
|
||
tabActive: 0,
|
||
current: 1,
|
||
isLast: false,
|
||
loading: false,
|
||
projectOptions: [
|
||
{
|
||
text: '全部',
|
||
value: ''
|
||
}
|
||
],
|
||
filterProjectOptions: [
|
||
{
|
||
text: '全部',
|
||
value: ''
|
||
}
|
||
],
|
||
projectSearchVal: '',
|
||
selectProjectIndex: 0,
|
||
selectProject: {} as any,
|
||
vehicleTypeOptions: [
|
||
{
|
||
text: '全部',
|
||
value: ''
|
||
}
|
||
],
|
||
vehicleTypeIndex: 0,
|
||
vehicleType: {} as any,
|
||
checkStatusOptions: [
|
||
{
|
||
text: '全部',
|
||
value: ''
|
||
}
|
||
],
|
||
checkStatusIndex: 0,
|
||
checkStatus: {} as any,
|
||
receiveStatusOptions: [
|
||
{
|
||
text: '全部',
|
||
value: ''
|
||
},
|
||
{
|
||
text: '未交车',
|
||
value: '0'
|
||
},
|
||
{
|
||
text: '未收车',
|
||
value: '0.5'
|
||
},
|
||
{
|
||
text: '已收车',
|
||
value: '1'
|
||
}
|
||
],
|
||
receiveStatusIndex: 0,
|
||
receiveStatus: {} as any,
|
||
projectShow: false,
|
||
vehicleTypeShow: false,
|
||
checkStatusShow: false,
|
||
receiveStatusShow: false,
|
||
list1: [],
|
||
list2: [],
|
||
list3: []
|
||
},
|
||
|
||
tabOnClick(event: any) {
|
||
console.log(event.detail.name);
|
||
// 采购
|
||
if (event.detail.name === 0) this.getProjectOptions(4);
|
||
// 租赁
|
||
else if (event.detail.name === 1) this.getProjectOptions(1);
|
||
// 看情况要不要重置查询条件
|
||
this.setData({
|
||
current: 1,
|
||
isLast: false,
|
||
list1: [],
|
||
list2: [],
|
||
list3: [],
|
||
tabActive: event.detail.name,
|
||
receiveStatusIndex: 0,
|
||
receiveStatus: {},
|
||
checkStatusIndex: 0,
|
||
checkStatus: {},
|
||
selectProjectIndex: 0,
|
||
selectProject: {},
|
||
vehicleTypeIndex: 0,
|
||
vehicleType: {}
|
||
});
|
||
// 查询
|
||
this.getList();
|
||
},
|
||
getProjectOptions(type: number) {
|
||
// 改成合同的接口其他不动
|
||
getAction('api/contract/list', { contractType: type }).then((res: any) => {
|
||
if (res.code == 200) {
|
||
res.result.unshift({
|
||
id: '',
|
||
name: '全部'
|
||
});
|
||
let arr = [] as any;
|
||
res.result.forEach((item: any) => {
|
||
arr.push({
|
||
text: item.name,
|
||
value: item.id
|
||
});
|
||
});
|
||
this.setData({
|
||
projectOptions: arr,
|
||
filterProjectOptions: arr,
|
||
selectProjectIndex: 0,
|
||
projectSearchVal: ''
|
||
// selectProject: res.result[0]
|
||
});
|
||
} else {
|
||
wx.showToast({
|
||
title: res.message,
|
||
icon: 'none'
|
||
});
|
||
}
|
||
});
|
||
},
|
||
getDictOptions(dictCode: string) {
|
||
getAction('api/sys/dict/getDictItems/' + dictCode).then((res: any) => {
|
||
if (res.code == 200) {
|
||
if (dictCode == 'vehicle_type') {
|
||
this.setData({
|
||
vehicleTypeOptions: this.data.vehicleTypeOptions.concat(res.result),
|
||
vehicleTypeIndex: 0
|
||
// vehicleType: res.result[0]
|
||
});
|
||
} else {
|
||
this.setData({
|
||
checkStatusOptions: this.data.checkStatusOptions.concat(res.result),
|
||
checkStatusIndex: 0
|
||
// checkStatus: res.result[0]
|
||
});
|
||
}
|
||
} else {
|
||
wx.showToast({
|
||
title: res.message,
|
||
icon: 'none'
|
||
});
|
||
}
|
||
});
|
||
},
|
||
getList() {
|
||
console.log(this.data);
|
||
let parms = {
|
||
checkType: this.data.tabActive + 1,
|
||
contractId: this.data.selectProject.value,
|
||
templateId: '',
|
||
vehicleType: this.data.vehicleType.value,
|
||
checkStatus: this.data.checkStatus.value, // 验收结果(1合格,0不合格)
|
||
receiveStatus: this.data.receiveStatus.value, // 验收结果(1合格,0不合格)
|
||
pageNo: this.data.current,
|
||
pageSize: 10
|
||
};
|
||
wx.showLoading({
|
||
title: '加载中'
|
||
});
|
||
|
||
if (!this.data.loading) {
|
||
this.setData({
|
||
loading: true
|
||
});
|
||
}
|
||
getAction('api/vehicleCheck/page', parms).then((res: any) => {
|
||
wx.hideLoading();
|
||
this.setData({
|
||
loading: false
|
||
});
|
||
if (res.code == 200) {
|
||
let data: any = { ...this.data };
|
||
// data['list' + (this.data.tabActive + 1)] = res.result;
|
||
data['list' + (this.data.tabActive + 1)] = data[
|
||
'list' + (this.data.tabActive + 1)
|
||
].concat(res.result.records);
|
||
console.log(data);
|
||
this.setData(data);
|
||
if (
|
||
data['list' + (this.data.tabActive + 1)].length == res.result.total
|
||
) {
|
||
this.setData({
|
||
isLast: true
|
||
});
|
||
}
|
||
} else {
|
||
wx.showToast({
|
||
title: res.message,
|
||
icon: 'none'
|
||
});
|
||
}
|
||
});
|
||
},
|
||
pickerChange(event: any) {
|
||
//下拉框切换是否展示
|
||
let fieldName: any = event.currentTarget.dataset.fieldname;
|
||
let data: any = { ...this.data };
|
||
data[fieldName] = true;
|
||
this.setData(data);
|
||
},
|
||
hidePicker() {
|
||
this.setData({
|
||
projectShow: false,
|
||
vehicleTypeShow: false,
|
||
checkStatusShow: false,
|
||
receiveStatusShow: false
|
||
});
|
||
},
|
||
pickerConfirm(event: any) {
|
||
console.log(event);
|
||
//下拉框点击确认
|
||
let { fieldname } = event.currentTarget.dataset;
|
||
let detail = event.detail;
|
||
let data: any = { ...this.data };
|
||
data[fieldname] = detail.value;
|
||
data[fieldname + 'Index'] = detail.index;
|
||
// 初始化列表
|
||
data.current = 1;
|
||
data.isLast = false;
|
||
data.list1 = [];
|
||
data.list2 = [];
|
||
data.list3 = [];
|
||
this.setData(data);
|
||
this.hidePicker();
|
||
this.getList();
|
||
},
|
||
toDetail(e: any) {
|
||
let that = this;
|
||
if (this.data.tabActive == 0) {
|
||
wx.navigateTo({
|
||
url: '../procurementDelivery/procurementDelivery',
|
||
success: function (res) {
|
||
// 通过eventChannel向被打开页面传送数据
|
||
res.eventChannel.emit('eventName', {
|
||
...e.currentTarget.dataset.inf
|
||
});
|
||
},
|
||
fail: e => {
|
||
console.log(e);
|
||
}
|
||
});
|
||
} else if (this.data.tabActive == 1) {
|
||
wx.navigateTo({
|
||
url: '../rentalDelivery/rentalDelivery',
|
||
success: function (res) {
|
||
// 通过eventChannel向被打开页面传送数据
|
||
res.eventChannel.emit('eventName', {
|
||
...e.currentTarget.dataset.inf
|
||
});
|
||
},
|
||
fail: e => {
|
||
console.log(e);
|
||
}
|
||
});
|
||
} else {
|
||
wx.navigateTo({
|
||
url: '../rentalRetrieve/rentalRetrieve',
|
||
success: function (res) {
|
||
// 通过eventChannel向被打开页面传送数据
|
||
res.eventChannel.emit('eventName', {
|
||
...e.currentTarget.dataset.inf
|
||
});
|
||
},
|
||
fail: e => {
|
||
console.log(e);
|
||
}
|
||
});
|
||
}
|
||
},
|
||
eventReportAdd() {
|
||
// let that = this;
|
||
let url = '';
|
||
if (this.data.tabActive == 0) {
|
||
url = '../procurementDeliveryEdit/procurementDeliveryEdit';
|
||
} else if (this.data.tabActive == 1) {
|
||
url = '../rentalDeliveryEdit/rentalDeliveryEdit';
|
||
} else {
|
||
}
|
||
wx.navigateTo({
|
||
url: url,
|
||
success: function (res) {
|
||
// 通过eventChannel向被打开页面传送数据
|
||
res.eventChannel.emit('eventName', {
|
||
isAdd: true
|
||
});
|
||
},
|
||
fail: e => {
|
||
console.log(e);
|
||
}
|
||
});
|
||
},
|
||
lower(e: any) {
|
||
console.log(e.detail.direction == 'bottom');
|
||
if (this.data.isLast) {
|
||
wx.showToast({
|
||
title: '已经是最后一页',
|
||
icon: 'none'
|
||
});
|
||
return;
|
||
}
|
||
if (e.detail.direction == 'bottom' && !this.data.loading) {
|
||
// this.data.current += 1
|
||
this.setData({
|
||
loading: true,
|
||
current: (this.data.current += 1)
|
||
});
|
||
this.getList();
|
||
}
|
||
},
|
||
filterProject(event: any) {
|
||
console.log(123, event.detail);
|
||
|
||
let list = [] as any;
|
||
this.data.projectOptions.forEach((item: any) => {
|
||
if (item.text.toLowerCase().indexOf(event.detail.toLowerCase()) >= 0) {
|
||
list.push(item);
|
||
}
|
||
});
|
||
this.setData({
|
||
filterProjectOptions: list,
|
||
projectSearchVal: event.detail
|
||
});
|
||
},
|
||
/**
|
||
* 生命周期函数--监听页面加载
|
||
*/
|
||
onLoad() {},
|
||
|
||
/**
|
||
* 生命周期函数--监听页面初次渲染完成
|
||
*/
|
||
onReady() {
|
||
this.getProjectOptions(4);
|
||
this.getDictOptions('vehicle_type');
|
||
this.getDictOptions('check_status');
|
||
},
|
||
|
||
/**
|
||
* 生命周期函数--监听页面显示
|
||
*/
|
||
onShow() {
|
||
this.setData({
|
||
current: 1,
|
||
isLast: false,
|
||
list1: [],
|
||
list2: [],
|
||
list3: []
|
||
});
|
||
this.getList();
|
||
},
|
||
|
||
/**
|
||
* 生命周期函数--监听页面隐藏
|
||
*/
|
||
onHide() {},
|
||
|
||
/**
|
||
* 生命周期函数--监听页面卸载
|
||
*/
|
||
onUnload() {},
|
||
|
||
/**
|
||
* 页面相关事件处理函数--监听用户下拉动作
|
||
*/
|
||
onPullDownRefresh() {
|
||
this.setData({
|
||
selectProject: {},
|
||
vehicleType: {},
|
||
checkStatus: {}, // 验收结果(1合格,0不合格)
|
||
receiveStatusIndex: 0,
|
||
receiveStatus: {}, // 状态
|
||
checkStatusIndex: 0,
|
||
vehicleTypeIndex: 0,
|
||
selectProjectIndex: 0,
|
||
list1: [],
|
||
list2: [],
|
||
list3: [],
|
||
current: 1,
|
||
isLast: false
|
||
});
|
||
this.getList();
|
||
// 手动控制回弹
|
||
wx.stopPullDownRefresh();
|
||
},
|
||
|
||
/**
|
||
* 页面上拉触底事件的处理函数
|
||
*/
|
||
onReachBottom() {},
|
||
|
||
/**
|
||
* 用户点击右上角分享
|
||
*/
|
||
onShareAppMessage() {}
|
||
});
|