333 lines
11 KiB
JavaScript
333 lines
11 KiB
JavaScript
apiready = function() {
|
||
var ctrl = {
|
||
init: {},
|
||
bind: {},
|
||
employeeId: null,
|
||
roleId: null,
|
||
orderContent: null,
|
||
emptyTips: null,
|
||
orderType: -1, // 状态 -1:全部 0:未接单 1:未处理 2:处理中 3:已处理
|
||
currentPage: 1,
|
||
pageSize: 10,
|
||
isLoading: false,
|
||
startDateStr: '',
|
||
endDateStr: '',
|
||
}
|
||
|
||
ctrl.init = function() {
|
||
// 适配安卓状态栏
|
||
CommonModel.fitInStatusBar();
|
||
var searcherTop = $('#heightHeader').height();
|
||
$('#searcher').css('top',searcherTop);
|
||
|
||
ctrl.employeeId = $api.getStorage('employeeId');
|
||
ctrl.roleId = $api.getStorage('roleId');
|
||
ctrl.emptyTips = $("#empty-tips");
|
||
ctrl.orderContent = $('#systemOrderList');
|
||
ctrl.ipStartTime = $("#ipStartTime");
|
||
ctrl.lbStartTime = $("#lbStartTime");
|
||
ctrl.ipEndTime = $("#ipEndTime");
|
||
ctrl.lbEndTime = $("#lbEndTime");
|
||
|
||
//工单 状态发生变化
|
||
api.addEventListener({
|
||
name: 'orderListChanged'
|
||
}, ctrl.orderListChanged);
|
||
|
||
ctrl.bind();
|
||
|
||
ctrl.initOrderList();
|
||
}
|
||
ctrl.bind = function() {
|
||
//点击返回按钮
|
||
$api.addEvt($api.dom("#back"), "touchend", function() {
|
||
api.closeWin();
|
||
});
|
||
|
||
// 开始日期 监听日期选择器的改变事件
|
||
$("#ipStartTime").on("change", function () {
|
||
ctrl.startDateStr = ctrl.ipStartTime.val();
|
||
if (ctrl.startDateStr && ctrl.startDateStr != "") {
|
||
ctrl.lbStartTime.html(ctrl.startDateStr);
|
||
} else {
|
||
ctrl.lbStartTime.html("开始日期");
|
||
}
|
||
});
|
||
|
||
// 结束日期 监听日期选择器的改变事件
|
||
$("#ipEndTime").on("change", function endDateChanged() {
|
||
ctrl.endDateStr = ctrl.ipEndTime.val();
|
||
if (ctrl.endDateStr && ctrl.endDateStr != "") {
|
||
ctrl.lbEndTime.html(ctrl.endDateStr);
|
||
} else {
|
||
ctrl.lbEndTime.html("结束日期");
|
||
}
|
||
});
|
||
|
||
// 点击 查询
|
||
$("#btn-query").on("touchend", ctrl.initOrderList);
|
||
|
||
// 点击“全部” btn
|
||
$("#all").on("touchend", function() {
|
||
ctrl.orderType = -1;
|
||
ctrl.currentPage = 1;
|
||
$(this).siblings('.bg-touch').removeClass('bg-yellow');
|
||
$(this).addClass('bg-yellow');
|
||
ctrl.initOrderList();
|
||
});
|
||
|
||
// 点击“未接单” btn
|
||
$("#btn-unaccpted").on("touchend", function() {
|
||
ctrl.orderType = 0;
|
||
ctrl.currentPage = 1;
|
||
$(this).siblings('.bg-touch').removeClass('bg-yellow');
|
||
$(this).addClass('bg-yellow');
|
||
ctrl.initOrderList();
|
||
});
|
||
|
||
// 点击“未处理” btn
|
||
$("#btn-unhandled").on("touchend", function() {
|
||
ctrl.orderType = 1;
|
||
ctrl.currentPage = 1;
|
||
$(this).siblings('.bg-touch').removeClass('bg-yellow');
|
||
$(this).addClass('bg-yellow');
|
||
ctrl.initOrderList();
|
||
});
|
||
|
||
// 点击“处理中” btn
|
||
$("#btn-handling").on("touchend", function() {
|
||
ctrl.orderType = 2;
|
||
ctrl.currentPage = 1;
|
||
$(this).siblings('.bg-touch').removeClass('bg-yellow');
|
||
$(this).addClass('bg-yellow');
|
||
ctrl.initOrderList();
|
||
});
|
||
|
||
// 点击“已完成” btn
|
||
$("#btn-finished").on("touchend", function() {
|
||
ctrl.orderType = 3;
|
||
ctrl.currentPage = 1;
|
||
$(this).siblings('.bg-touch').removeClass('bg-yellow');
|
||
$(this).addClass('bg-yellow');
|
||
ctrl.initOrderList();
|
||
});
|
||
|
||
// 点击 “创建工单”
|
||
$("#create-systemOrder-btn").on("touchend", function() {
|
||
api.openWin({
|
||
'name': 'systemOrderCreate',
|
||
'url': 'widget://html/feature/systemOrderCreate.html'
|
||
});
|
||
});
|
||
|
||
// 点击系统工单 ,跳转到详情页
|
||
$("#systemOrderList").on("touchend", ".left", function() {
|
||
var orderId = $(this).data("systemorderid");
|
||
var type = $(this).data("type");
|
||
|
||
api.openWin({
|
||
'name': 'systemOrderDetail',
|
||
'url': 'widget://html/feature/systemOrderDetail.html',
|
||
'pageParam': {
|
||
id: orderId,
|
||
type: type
|
||
}
|
||
})
|
||
});
|
||
|
||
// 点击 派单
|
||
$("#systemOrderList").on("touchend", ".delivery-btn", function(e) {
|
||
e.stopPropagation();
|
||
|
||
var orderId = $(this).data("orderid");
|
||
|
||
api.openWin({
|
||
'name': 'systemOrderEdit',
|
||
'url': 'widget://html/feature/systemOrderEdit.html',
|
||
'pageParam': {
|
||
id: orderId
|
||
}
|
||
})
|
||
});
|
||
|
||
// 下拉刷新
|
||
// api.setRefreshHeaderInfo({
|
||
// bgColor: "#CCCCCC",
|
||
// textColor: "#FFFFFF"
|
||
// }, function(ret, err) {
|
||
// // 根据当前选择的tab 刷新对应的内容
|
||
// ctrl.currentPage = 1;
|
||
// ctrl.getOrderList();
|
||
// });
|
||
|
||
//监听滚动到底部事件
|
||
api.addEventListener({
|
||
name: 'scrolltobottom',
|
||
extra: {
|
||
threshold: 0 //设置距离底部多少距离时触发,默认值为0,数字类型
|
||
}
|
||
}, function(ret, err) {
|
||
if (!ctrl.isLoading) {
|
||
if (ctrl.currentPage >= ctrl.totalPages) {
|
||
toast("没有更多了");
|
||
return;
|
||
} else {
|
||
ctrl.currentPage++;
|
||
ctrl.getOrderList();
|
||
}
|
||
}
|
||
});
|
||
}
|
||
|
||
// 弹出提示框
|
||
ctrl.toast = function(msg) {
|
||
api.toast({
|
||
msg: msg,
|
||
duration: 3000,
|
||
locaiton: 'top'
|
||
});
|
||
}
|
||
|
||
// 创建工单完成 触发的事件处理
|
||
ctrl.orderListChanged = function(ret, err) {
|
||
ctrl.initOrderList();
|
||
};
|
||
|
||
// 初始化系统工单列表
|
||
ctrl.initOrderList = function () {
|
||
ctrl.clearOrderList();
|
||
|
||
ctrl.getOrderList();
|
||
};
|
||
|
||
// 清空工单列表
|
||
ctrl.clearOrderList = function () {
|
||
this.orderContent.empty();
|
||
};
|
||
|
||
// 获取工单列表
|
||
ctrl.getOrderList = function () {
|
||
api.showProgress();
|
||
|
||
var url = '/test/gong-dan/queryByList/'
|
||
+ this.currentPage + '/'
|
||
+ this.pageSize + '/'
|
||
+ this.orderType + '/'
|
||
+ this.employeeId + '/'
|
||
+ this.roleId;
|
||
|
||
var data = {};
|
||
|
||
if (ctrl.startDateStr) {
|
||
data.start = CommonModel.getFomattedDate((new Date(ctrl.startDateStr.replace(/-/g, '/'))).getTime(), 'yyyy-MM-dd') + ' 00:00:00';
|
||
};
|
||
|
||
if (ctrl.endDateStr) {
|
||
data.end = CommonModel.getFomattedDate((new Date(ctrl.endDateStr.replace(/-/g, '/'))).getTime(), 'yyyy-MM-dd') + ' 23:59:59';
|
||
};
|
||
|
||
$api.post(url, data, function(res, err) {
|
||
if (err) {
|
||
ctrl.toast("网络请求失败");
|
||
api.hideProgress();
|
||
} else {
|
||
if (!res.code || res.code != "200") {
|
||
ctrl.toast("服务器响应错误");
|
||
api.hideProgress();
|
||
} else {
|
||
ctrl.totalPages = res.data.pages;
|
||
ctrl.renderOrderList(res.data.records);
|
||
}
|
||
}
|
||
});
|
||
};
|
||
|
||
// 渲染 工单列表
|
||
ctrl.renderOrderList = function (records) {
|
||
var length = records.length;
|
||
if (length > 0) {
|
||
this.orderContent.show();
|
||
this.emptyTips.hide();
|
||
|
||
for (var i = 0; i < length; i++) {
|
||
var item = records[i];
|
||
ctrl.createOrderDom(item);
|
||
}
|
||
} else {
|
||
this.orderContent.hide();
|
||
this.emptyTips.show();
|
||
};
|
||
|
||
api.hideProgress();
|
||
};
|
||
|
||
// 创建 工单 DOM
|
||
ctrl.createOrderDom = function (item) {
|
||
var id = item.id;
|
||
var prName = item.prName;
|
||
var miaoShu = item.miaoShu;
|
||
var tiJiaoShiJian = item.tiJiaoShiJian.split(' ')[0];
|
||
var tiJiaoRenName = item.tiJiaoRenName;
|
||
var type = item.zhuangTai;
|
||
var textColor = '';
|
||
var status = '';
|
||
|
||
// -1:全部 0:未接单 1:未处理 2:处理中 3:已处理
|
||
switch (type) {
|
||
case 0:
|
||
textColor = 'text-red';
|
||
status = '未接单';
|
||
break;
|
||
case 1:
|
||
textColor = 'text-gray';
|
||
status = '未处理';
|
||
break;
|
||
case 2:
|
||
textColor = 'text-yellow';
|
||
status = '处理中';
|
||
break;
|
||
case 3:
|
||
textColor = 'text-green';
|
||
status = '已完成';
|
||
break;
|
||
};
|
||
|
||
var template = ''
|
||
template += '<div class="systemOrder">'
|
||
template += '<div class="left" data-systemorderid="{id}" data-type={type}>'
|
||
template += '<div class="icon-con"><img src="../../image/black-pr-icon.png"></div>'
|
||
template += '<div class="content font1">'
|
||
template += '<div class="pr-name-con"><span class="pr-name">{prName}</span> '
|
||
template += '</div>'
|
||
template += '<div class="width100 ellipsis color-red">{miaoShu}</div>'
|
||
template += '</div>'
|
||
template += '</div>'
|
||
template += '<div class="right text-align-r">'
|
||
template += '<div class="text-gray">{time}'
|
||
template += '<span class="{textColor}" style="margin-left: 0.4rem;">{status}</span>'
|
||
template += '</div>'
|
||
template += '<div class="height4"></div>'
|
||
template += '<div>创建人: {person}'
|
||
if (type == 0) {
|
||
template += '<button class="delivery-btn" data-orderid={orderid}>派单</button></div>'
|
||
}
|
||
template += '</div>'
|
||
template += '</div>'
|
||
template += '</div>'
|
||
|
||
template = template.replace("{id}", id)
|
||
.replace("{type}", type)
|
||
.replace("{prName}", prName)
|
||
.replace("{miaoShu}", miaoShu)
|
||
.replace("{time}", tiJiaoShiJian)
|
||
.replace("{textColor}", textColor)
|
||
.replace("{status}", status)
|
||
.replace("{person}", tiJiaoRenName)
|
||
.replace("{orderid}", id);
|
||
|
||
ctrl.orderContent.append(template);
|
||
};
|
||
|
||
ctrl.init();
|
||
}
|