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.
180 lines
5.0 KiB
180 lines
5.0 KiB
5 years ago
|
// pages/itemDetail/itemDetail.js
|
||
|
var api = require("../../api/itemDetail.js");
|
||
|
import {
|
||
|
$wuxToast
|
||
|
} from '../../dist/index'
|
||
|
const app = getApp();
|
||
|
Page({
|
||
|
/**
|
||
|
* 页面的初始数据
|
||
|
*/
|
||
|
data: {
|
||
|
itemId: "",
|
||
|
itemState: "",
|
||
|
detailData: {},
|
||
|
processList: [],
|
||
|
handleSubmitData: {},
|
||
|
visible: false
|
||
|
},
|
||
|
|
||
|
/**
|
||
|
* 生命周期函数--监听页面加载
|
||
|
*/
|
||
|
onLoad(options) {
|
||
|
this.setData({
|
||
|
itemId: options.itemId,
|
||
|
itemState: options.itemState
|
||
|
});
|
||
|
// 获取项目详情
|
||
|
api.getItemDetail(this.data.itemId).then(res => {
|
||
|
console.log(res.data);
|
||
|
this.setData({
|
||
|
detailData: {
|
||
|
id: res.data.id,
|
||
|
issueId: res.data.issueId,
|
||
|
eventId: res.data.eventId,
|
||
|
avatar: res.data.avatar,
|
||
|
nickname: res.data.nickname,
|
||
|
distributeTime: res.data.distributeTime,
|
||
|
partyFlag: res.data.partyFlag,
|
||
|
images: res.data.images,
|
||
|
content: res.data.content,
|
||
|
mobile: res.data.mobile,
|
||
|
address: res.data.address,
|
||
|
categoryName: res.data.categoryName,
|
||
|
statementNum: res.data.statementNum,
|
||
|
approveNum: res.data.approveNum,
|
||
|
opposeNum: res.data.opposeNum,
|
||
|
commentNum: res.data.commentNum,
|
||
|
browseNum: res.data.browseNum
|
||
|
}
|
||
|
});
|
||
|
// 获取项目处理进度
|
||
|
let getItemProcessList = new Promise((resolve, reject) => {
|
||
|
api.getItemProcessList(this.data.detailData.id).then(res => {
|
||
|
if (res.data.length > 0) {
|
||
|
delete res.data[res.data.length - 1].itemDeptDTOS
|
||
|
res.data[res.data.length - 1].state = 100
|
||
|
}
|
||
|
resolve(res.data);
|
||
|
});
|
||
|
});
|
||
|
// 获取议题处理进度
|
||
|
let getIssueProcessList = new Promise((resolve, reject) => {
|
||
|
api.getIssueProcessList(this.data.detailData.issueId).then(res => {
|
||
|
if (res.data.length > 0) {
|
||
|
res.data[res.data.length - 1].lastProcess = true
|
||
|
}
|
||
|
resolve(res.data);
|
||
|
});
|
||
|
});
|
||
|
|
||
|
Promise.all([getItemProcessList, getIssueProcessList])
|
||
|
.then(result => {
|
||
|
console.log(result);
|
||
|
let processList = [];
|
||
|
processList = processList.concat(result[0], result[1]);
|
||
|
processList[0].firstProcess = true
|
||
|
this.setData({
|
||
|
processList
|
||
|
});
|
||
|
})
|
||
|
.catch(error => {
|
||
|
console.log(error);
|
||
|
});
|
||
|
});
|
||
|
},
|
||
|
|
||
|
// 处理操作
|
||
|
onShowActionSheet(e) {
|
||
|
this.setData({
|
||
|
handleSubmitData: e.detail
|
||
|
});
|
||
|
},
|
||
|
|
||
|
// 提交居民意见
|
||
|
onBindFormSubmit(e) {
|
||
|
this.setData({
|
||
|
handleSubmitData: e.detail
|
||
|
});
|
||
|
|
||
|
|
||
|
if (this.data.handleSubmitData.state == undefined){
|
||
|
$wuxToast().show({
|
||
|
type: 'text',
|
||
|
duration: 3000,
|
||
|
color: '#fff',
|
||
|
text: '请选择处理选项',
|
||
|
success: () => console.log('')
|
||
|
})
|
||
|
return false
|
||
|
}else{
|
||
|
if (this.data.handleSubmitData.state === 1) { // 吹哨
|
||
|
if (this.data.handleSubmitData.deptResultDTOS.length < 1){
|
||
|
$wuxToast().show({
|
||
|
type: 'text',
|
||
|
duration: 3000,
|
||
|
color: '#fff',
|
||
|
text: '请选择流转对象',
|
||
|
success: () => console.log('')
|
||
|
})
|
||
|
return false
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
|
||
|
if (!this.data.handleSubmitData.outHandleAdvice) {
|
||
|
$wuxToast().show({
|
||
|
type: 'text',
|
||
|
duration: 3000,
|
||
|
color: '#fff',
|
||
|
text: '回复居民意见不能为空',
|
||
|
success: () => console.log('')
|
||
|
})
|
||
|
return false
|
||
|
}
|
||
|
|
||
|
if (!this.data.handleSubmitData.handleAdvice) {
|
||
|
$wuxToast().show({
|
||
|
type: 'text',
|
||
|
duration: 3000,
|
||
|
color: '#fff',
|
||
|
text: '项目处理意见不能为空',
|
||
|
success: () => console.log('')
|
||
|
})
|
||
|
return false
|
||
|
}
|
||
|
|
||
|
let params = {
|
||
|
id: this.data.detailData.id,
|
||
|
outHandleAdvice: this.data.handleSubmitData.outHandleAdvice !== undefined ? this.data.handleSubmitData.outHandleAdvice : "",
|
||
|
handleAdvice: this.data.handleSubmitData.handleAdvice !== undefined ? this.data.handleSubmitData.handleAdvice : "",
|
||
|
outHandleImages: this.data.handleSubmitData.outHandleImages !== undefined ? this.data.handleSubmitData.outHandleImages : [],
|
||
|
handleImages: this.data.handleSubmitData.handleImages !== undefined ? this.data.handleSubmitData.handleImages : [],
|
||
|
handleCategory: this.data.handleSubmitData.state !== undefined ? this.data.handleSubmitData.state : 0,
|
||
|
};
|
||
|
if (params.handleCategory === 1) { // 吹哨
|
||
|
params.deptResultDTOS = this.data.handleSubmitData.deptResultDTOS
|
||
|
} else if (params.handleCategory === 10) { // 结案
|
||
|
params.evaluateDeptDTOS = this.data.handleSubmitData.evaluateDeptDTOS
|
||
|
}
|
||
|
|
||
|
api.postItemHandleSubmit(params).then(res => {
|
||
|
console.log(res);
|
||
|
if (res.code === 0) {
|
||
|
// 显示提醒
|
||
|
this.setData({
|
||
|
visible: true
|
||
|
});
|
||
|
}
|
||
|
});
|
||
|
},
|
||
|
|
||
|
// 关闭提醒
|
||
|
onClose() {
|
||
|
this.setData({
|
||
|
visible: false
|
||
|
});
|
||
|
wx.navigateBack();
|
||
|
}
|
||
|
});
|