导入jsp

<%@ page contentType="text/html;charset=UTF-8" %>
<%@ page isELIgnored="false"%>
<%@ page language="java" pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>

<script type="text/javascript" src="<%=path %>/static/js/common/ui/Select3.js"></script>
<script type="text/javascript" src="<%=path %>/static/js/fee/basicDistributeFee.js"></script>
<script>
var basePath = '<%=path%>';
document.title = "基础运费结算"
</script>
<style type="text/css">
.mc-form-group label { width: 60px; }
.mc-form-group .form-control {width: 150px; }
.mc-form-group .btn { margin-left: 10px; }
.modal-overflow .modal-body{height:500px;overflow:auto !important;}
.form-horizontal label.three{
text-align : right;
font-size: 14px;
font-weight: 500;
}
.form-group h4{
font-weight: bold;
margin-left:20px;
}
.tdWidth{
width:110px;
}
thead > tr >td {
vertical-align: middle !important;
text-align: center;
}
.grid-table.grid-excel-table > tbody td.grid-cell-no-widget {
color: #444;
}
.ui-state-active {
color: #eb8f00 !important;
}
.grid-table.grid-excel-table.grid-group-table > tbody > tr.grid-row:not(:first-child) {
/*border-top-width: 5px !important;*/
}
.grid-table .grid-row.odd > td {
background-color: #D3D3D3;
}
.file {
position: relative;
display: inline-block;
background: #D0EEFF;
border: 1px solid #99D3F5;
border-radius: 4px;
padding: 4px 12px;
overflow: hidden;
color: #1E88C7;
text-decoration: none;
text-indent: 0;
line-height: 20px;
}
.file input {
position: absolute;
font-size: 100px;
right: 0;
top: 0;
opacity: 0;
}
.file:hover {
background: #AADFFD;
border-color: #78C3F3;
color: #004974;
text-decoration: none;
}
</style>
<div class="panel panel-default">
<div class="panel-heading">
<h3 class="panel-title">查询条件</h3>
</div>
<div class="panel-body">
<form id="search_form" class="form" role="form">
<table>
<tr>
<td>
<div class="form-group mc-form-group">
<label for="userName" class="control-label" >姓名:</label>
<input type="text" style="width: 310px;" id="userName" class="form-control w100" name="userName" placeholder="请输入司机姓名">
</div>
<div class ="form-group mc-form-group">
<button id="search_btn" type="button" style="width: 130px;" class="btn btn-primary">查询</button>
</div>
</td>
</tr>
<tr>
<td>
<div class="form-group mc-form-group">
<label for="company_status" class="control-label" >日期:</label>
<input type="text" id="deliveryTime" name="deliveryTime" class="form-control" value="${defaultDay }"
placeholder="请选择时间" onclick="WdatePicker({skin:'bootstrap',firstDayOfWeek:1,onpicked:function(dq){dateChange(dq.cal.getNewDateStr());}});" pattern="(\d{4})-(0\d{1}|1[0-2])-(0\d{1}|[12]\d{1}|3[01])" required/>
<%-- <input type="hidden" id="deliveryTime" name="deliveryTime" value="${defaultDay }"> --%>
<button id="yesterday_btn" onclick="selectDeliveryTime(0);" type="button" style="width: 60px;" class="btn "> 昨天</button>
<button id="today_btn" type="button" onclick="selectDeliveryTime(1);" style="width: 60px;" class="btn btn-primary">今天</button>
</div>
</td>
</tr>
<tr>
<td>
<div class="form-group mc-form-group">
<label for="routeType" class="control-label" >服务类型:</label>
<select class="form-control" onchange="getServiceBatch(this);" name="serviceId" id="select_service">
<option value="">全部</option>
<c:forEach items="${distservices }" var="s">
<option value="${s.id }">${s.name }</option>
</c:forEach>
</select>
</div>
</td>
</tr>
<tr>
<td>
<div class="form-group mc-form-group">
<label for="routeStatus" class="control-label" >配送批次:</label>
<select class="form-control" name="batchId" id="select_batch">
<option value="">全部</option>
</select>
</div>
</td>
</tr>
<tr>
<td>
<div class="form-group mc-form-group">
<label class="control-label" >仓库:</label>
<select id = "warehouseId" name="warehouseId" class="form-control">
<option value="">全部仓库</option>
<c:forEach items="${warehouses }" var="w">
<option value="${w.id }">${w.name }</option>
</c:forEach>
</select>
</div>
</td>
</tr>
<tr>
<td>
<div class="form-group mc-form-group">
<label class="control-label" >任务类型:</label>
<select id = "taskType" name="taskType" class="form-control">
<option value="">全部</option>
<option value="10">直送</option>
<option value="20">支线</option>
<option value="25">末端</option>
</select>
</div>
</td>
</tr>
</table>
<div class = "form-group fw-display-ib hidden">
<input name="per_page" value="20" class="form-control">
</div>
<div class = "form-group fw-display-ib hidden">
<input name="page" value="1" class="form-control" type="text" placeholder="第一页">
</div>
</form>
</div>

</div>
<div id="export_form_div"></div>
<div class="panel panel-default closeCountDiv">
本次共查询出<span id="span_totalCount">0</span>条数据
<span style="float:right;line-height: 20px;display: block;">
统计信息: &nbsp; &nbsp;
费用合计: <span id="totalAmount">0</span>元 &nbsp;
基础运费: <span id="totalBasicAmount">0</span>元 &nbsp;
多送客户奖励: <span id="totalMoreSend">0</span>元 &nbsp;
补货奖励: <span id="totalBuhuo">0</span>元 &nbsp; &nbsp;
超距配送奖励: <span id="totalOverRange">0</span>元 &nbsp; &nbsp;
<i style="float:right;line-height: 20px;" class='fa fa-times-circle' onclick="closeCountDiv();"></i>
</span>
</div>
<section id = "ui-grid">
<div>
<!--这里是提示信息,用于发送成功以后提醒-->
<div class="grid-message -auto-binded" id="message" data-grid-id="route_grid_index" style="display: block;"></div>
<div class="grid-head">
<ul class="nav nav-tabs">
<li class="pull-right btn-toolbar btn-group">
<a href="#" id="saveFee" class="btn btn-link pull-left" data-grid-id="route_grid_index" data-toggle="grid.run_callback" title="save"><button>保存</button></a>
<a href="#" id="syncTask" class="btn btn-link pull-left" data-grid-id="route_grid_index" data-toggle="grid.run_callback"title="sync"><button>同步任务</button></a>
<a href="#" id="makeFee" class="btn btn-link pull-left" style="display: none;" data-grid-id="route_grid_index" data-toggle="grid.run_callback" title="oneJ"><button>一键做账</button></a>
<a href="#" id="exportExcel" class="btn btn-link pull-left" data-grid-id="route_grid_index" data-toggle="grid.run_callback" title="exportExcel"><button>表格导出</button></a>
<a href="#" id="add_btn" class="btn btn-link pull-left" data-grid-id="user_grid_index" data-toggle="grid.run_callback" title="New"><button>导入Excel</button></a>
</li>
</ul>
</div>
<div id="collection_panel"></div>
<script>
function broweExcle(){
var filePath = $("input[type='file']").val();
if(filePath.indexOf("xls")!=-1||filePath.indexOf("xlsx")!=-1 ){
var arr=filePath.split('\\');
var fileName=arr[arr.length-1];
$(".showFileName").val(fileName);
}else{
alert("导入的不是有效Excel文件!");
$(".showFileName").val("");
return false
}
}
</script>
<script id="import_render_tmpl" type="text/x-handlebars-template">
<div id="dialog_message"></div>
<form method="POST" enctype ="multipart/form-data" id = "importForm">
<div class="form-group fw-mb15">
<h4>请选择Excel文件(<span style="color:red;">*必填</span>)</h4><br>
<label class="col-sm-2"><span style="color:red;">*</span>Excel文件:</label>
<div class="col-sm-6">
<input type="text" class="form-control showFileName" readonly="readonly">
</div>
<div class="col-sm-2">
<a href="javascript:;" class="file" onchange="broweExcle()">浏览
<input type="file" name="fileupload" id="fileupload" accept=".xlsx,.xls">
</a>
</div>
</div>
</form>
</script>
<!-- 校验失败后显示 TODO-->
<script id="checkError_table_tmpl" type="text/x-handlebars-template">
<table class="table table-bordered table-hover">
<thead>
<tr>
<th>序号</th>
<th>校验结果</th>
<th>任务单号</th>
</tr>
</thead>
<tbody>
{{#each checkErrorList}}
<tr>
<td>{{addOne @index}}</td>
<td>{{verifyResult}}</td>
<td>{{taskbillNo}}</td>
</tr>
{{/each}}
</tbody>
</table>
</script>

<script>
var handleHelper = Handlebars.registerHelper("addOne", function (index) {
//返回+1之后的结果
return index + 1;
});


/*YC*/
function getFormData(formId) {
var arr = $('#' + formId).serializeArray();
var result = {};
for ( var i = 0; i < arr.length; i++) {
result[arr[i].name] = arr[i].value;
}
return result;
}
/*转换时间戳为日期*/
function formatDate(timestamp){
date=new Date(parseInt(timestamp) * 1000);
var year=date.getFullYear();
var month=date.getMonth()+1;
var date=date.getDate();
return year+"-"+month+"-"+date;
}
// 引入组件初始化
seajs.use(["common/ui/Select3"], function(Select3) {
Select3.init($("#select_service"));
Select3.init($("#select_batch"));
Select3.init($("#warehouseId"));
Select3.init($("#taskType"));
})

</script>

<script>
var cbSearch = function() {
$("#search_btn").trigger("click")
}
/*var $warehouseId = $("#warehouseId")
var $routeStatus = $("#routeStatus")
var $routeType = $("#routeType")
$warehouseId.change(cbSearch)
$routeStatus.change(cbSearch)
$routeType.change(cbSearch)
// 引入组件初始化
seajs.use(["common/ui/Select3"], function(Select3) {
Select3.init($warehouseId)
Select3.init($routeStatus)
Select3.init($routeType)
})*/

/*grid options*/
var options = {
id: "route_grid_index",
recordClassNames: ["Route"],
columns: [
{ name : '_single_select',hidden:true,sortable : false, renderer : 'FW.MultiSelectColumnRenderer', virtual : true, css: '-single-select fw-w30'},
{ label: "id", name: "id",hidden:true},
{ label: "序号",renderer: 'FW.OrderRenderer',htmlSafe: true,style: "width:1%"},
{ label: "司机姓名", name: "userName", renderer:'FW.NameNoRenderer',htmlSafe: true,style: "width:5%"},
/*{ label: "配送日期", name: "deliveryTime",renderer : 'FW.DeliveryTimeRenderer',virtual:true,hidden:true},*/
{ label: "配送服务", name: "serviceId", renderer:'FW.ServiceRenderer', virtual:true,htmlSafe: true,style: "width:4%"},
{ label: "配送批次", name: "batchId", renderer : 'FW.BatchRenderer', virtual:true,htmlSafe: true,style: "width:4%"},
{ label: "任务单号", name: "taskbillNo",htmlSafe: true,style: "width:4%"},
{ label: "任务类型", name: "taskType",renderer:'FW.TaskTypeRenderer',htmlSafe: true,style: "width:3%"},
{ label: "来源", name: "userSourceName",htmlSafe: true,style: "width:3%"},
{ label: "车型", name: "cartypeName",htmlSafe: true,style: "width:3%"},
{ label: "仓库", name: "warehouseName",virtual:true,htmlSafe: true,style: "width:4%"},
{ label: "线路/站点", name: "originName",htmlSafe: true,style: "width:5%"},
{ label: "费用合计/元", name: "totalAmount",renderer : 'FW.InputTotalAmountRenderer',virtual:true,htmlSafe: true,style: "width:5%"},
{ label: "基础运费", name: "basicAmount",renderer : 'FW.InputBasicAmountRenderer', virtual:true,htmlSafe: true,style: "width:5%"},
{ label: "配送门店数", name: "distributeCustomerNum",virtual:true,htmlSafe: true,style: "width:2%"},
{ label: "取件门店数", name: "pickupCustomerNum",virtual:true,htmlSafe: true,style: "width:2%"},
{ label: "多送客户奖励", name: "rewardAdditionalAmount",renderer : 'FW.InputDuoSongAmountRenderer', virtual:true,htmlSafe: true,style: "width:5%"},
{ label: "补货奖励", name: "rewardReplenishmentAmount",renderer : 'FW.InputBuhuoAmountRenderer', virtual:true,htmlSafe: true,style: "width:5%"},
{ label: "超距配送奖励", name: "rewardOverRangeAmount",renderer : 'FW.InputChaojuAmountRenderer', virtual:true,htmlSafe: true,style: "width:5%"},
{ label: "超额配送奖励", name: "rewardOverQuotaAmount",renderer : 'FW.InputChaoEAmountRenderer', virtual:true,htmlSafe: true,style: "width:5%"},
{ label: "救援奖励", name: "rewardHelpAmount",renderer : 'FW.InputJiuYuanAmountRenderer', virtual:true,htmlSafe: true,style: "width:5%"},
{ label: "被投诉罚款", name: "punishBeComplaintAmount",renderer : 'FW.InputBeiTouSuAmountRenderer', virtual:true,htmlSafe: true,style: "width:5%"},
{ label: "被救援扣除", name: "punishBeHelpedAmount",renderer : 'FW.InputBeiJiuYuanAmountRenderer', virtual:true,htmlSafe: true,style: "width:5%"},
{ label: "迟到罚款", name: "punishLateAmount",renderer : 'FW.InputChiDaoAmountRenderer', virtual:true,htmlSafe: true,style: "width:5%"},
{ label: "其它", name: "otherAmount",renderer : 'FW.InputQiTaAmountRenderer', virtual:true,htmlSafe: true,style: "width:5%"},
{ label: "备注", name: "remark",renderer : 'FW.InputBeiZhuAmountRenderer', virtual:true,htmlSafe: true,style: "width:5%"}
],
target: $("#collection_panel"),
loadAfterRendered: true,
url: '<%=path%>/distributeFee/queryBasicDistributeFeeList',
pagination: true,
scrollable: true,
defaultParams: getFormData("search_form")
};

var gridPanel = new FW.Grid(options);
/*获取所有选择的*/
gridPanel.selectedStatus = function() {
return this.selectedRecords().map(function(record) {
return record.get("status");
});
};

gridPanel.render();
//查询按钮
$('#search_btn').click(function(){

//更新统计信息
$('#totalAmount').html(0);
$('#totalBasicAmount').html(0);
$('#totalMoreSend').html(0);
$('#totalBuhuo').html(0);
$('#totalOverRange').html(0);

var params = getFormData("search_form");
gridPanel.updateDefaultParams(params);
$.get('<%=path%>/distributeFee/queryBasicDistributeFeeList', params,
function(data){
gridPanel.setData(data);
showCountDiv();
$('#span_totalCount').text(data.total);

//更新右上角数据
//$('#totalTaskbill').text(data.totalTaskbill);
//$('#totalUser').text(data.totalUser);
//$('#totalAmount').text(data.totalAmount);
},
"json");
});

</script>
</div>
</section>
<script type="text/javascript" src="<%=path%>/static/js/vendor/highlight.min.js"></script>
<script type="text/javascript" src="<%=path%>/static/js/plugin/ajaxfileupload.js"></script>
<script>
$(function(){
//hljs.initHighlightingOnLoad();
//var today=new Date();
//$('#deliveryTime').val(today.getFullYear()+"-"+(today.getMonth()+1)+"-"+today.getDate());
});

var serviceBatchs = $.parseJSON('${serviceBatchs}');
var services = $.parseJSON('${services}');;
var sources = $.parseJSON('${sources}');
/* 获取批次 */
function getServiceBatch(select){
var serviceId = $(select).val();
if(serviceId==""){
var tmpHtml = ' <option value="">全部批次</option>';
$('#select_batch').html(tmpHtml);
return false;
}

var tmpBathcs = serviceBatchs[serviceId];

if(!tmpBathcs){
$('#select_batch').html('');
}

var selectHtml = '<option value="">全部批次</option>';
$.each(tmpBathcs,function(i,o){
selectHtml += '<option value="';
selectHtml += o.id;
selectHtml += '">';
selectHtml += o.name;
selectHtml += '</option>';
});

$('#select_batch').html(selectHtml);
}

/*昨天/今天*/
function selectDeliveryTime(type){
//清空配送时间
$('#yesterday_btn').removeClass("btn-primary");
$('#today_btn').removeClass("btn-primary");

var date=new Date();
var year=date.getFullYear();
var month=date.getMonth()+1;
if(type==0){
//昨天
var yesterday = generateDate(type);
$('#yesterday_btn').addClass("btn-primary");
//$('#deliveryTime').val(yesterday);
$('#deliveryTime').val(yesterday);
}else{
//今天
var today = generateDate(type);
$('#today_btn').addClass("btn-primary");
//$('#deliveryTime').val(today);
$('#deliveryTime').val(today);
}
}

function generateDate(type){
if(type==0){
var dd = new Date();
dd.setDate(dd.getDate()-1);//获取上一天的日期
var y = dd.getFullYear();
var m = dd.getMonth()+1;//获取当前月份的日期
var d = dd.getDate();
return y+"-"+m+"-"+d;
}else{
var date = new Date();
var year = date.getFullYear();
var month = date.getMonth()+1;
var day= date.getDate();
return year+"-"+month+"-"+day;
}
}
/*日期改变*/
function dateChange(date){
$('#yesterday_btn').removeClass("btn-primary");
$('#today_btn').removeClass("btn-primary");

//$('#deliveryTime').val( (new Date(date)).getTime()/1000 );
//$('#deliveryTime').val(date)
}

/* 关闭显示查询数据量div */
function closeCountDiv(){
$(".closeCountDiv").css("display","none");
}
function showCountDiv(){
$(".closeCountDiv").css("display","block");
}

/*同步任务*/
$('#syncTask').click(function(){
$.ajax({
url: '<%=path %>/distributeFee/syncTaskbill',
async: true,
type:'post',
dataType:'json',
data: getFormData("search_form"),
success: function(data){
if (data.flag){
TMS.Message.info(data.message,$('#message'),2000);
$('#search_btn').trigger('click');
}else {
TMS.Message.error(data.message,$('#message'),2000);
}
}
});
});

/*导出*/
$('#exportExcel').click(function(){
if(gridPanel.getData().total==0){
alert("没有要导出的内容!");
return false;
}

var deliveryTime = $('#deliveryTime').val();
var userName = $('#userName').val();
var serviceId = $('#select_service').val();
var batchId = $('#select_batch').val();
var warehouseId = $('#warehouseId').val();
var taskType = $('#taskType').val();
var cityName = $("#city_switch option:selected ").text();
var form = '<form style="display:none" id="exportForm" action="'+'<%=path %>/distributeFee/exportBasicDistributeFees'+'">';
form += '<input type="hidden" name="deliveryTime" value="'+ deliveryTime +'"/>';
form += '<input type="hidden" name="userName" value="'+ userName +'"/>';
form += '<input type="hidden" name="serviceId" value="'+ serviceId +'"/>';
form += '<input type="hidden" name="batchId" value="'+ batchId +'"/>';
form += '<input type="hidden" name="warehouseId" value="'+ warehouseId +'"/>';
form += '<input type="hidden" name="taskType" value="'+ taskType +'"/>';
form += '<input type="hidden" name="cityName" value="'+ cityName +'"/>';
form += '</form>';

$('#export_form_div').html(form);
$('#exportForm').submit();
});

var importDialog = {};
/*导入*/
$("#add_btn").click(function() {
var data = {
action: ''
};
importDialog = new UserAddActionDialog.asDialog({data:data});
importDialog.show({}, {header: '导入Excel'});
});

/*校验失败的弹窗*/
var checkError_Table_DialogOption = {
header: '',
handlers: [
{label:"关闭", class:"-step-cancel"}
],
};

/*dialog生成函数*/
var checkError_Table_Dialog = FW.Component.pinleiTTT = Class.create(FW.Component.Base, FW.Component.WizardSupport, {
render: function() {
var source = $('#checkError_table_tmpl').html();
var template = Handlebars.compile(source);
var context = this.option("data");
var $dom = $(template(context));
this._setDom($dom);

//prepareDialog();

return this.$dom;
}
});
FW.Component.ActAsDialog(checkError_Table_Dialog, checkError_Table_DialogOption);

/*dialog生成函数*/
var UserAddActionDialog = FW.Component.UserAdd = Class.create(FW.Component.Base, FW.Component.WizardSupport, {
render: function() {
var source = $("#import_render_tmpl").html();
var template = Handlebars.compile(source);
var context = this.option("data");
var $dom = $(template(context));

this._setDom($dom);
return this.$dom;
}
});
var UserAddActionDialogOption = {
header: '',
width:'700px',
height:'150px',
handlers: [
{
label: "上传",
callback: function () {
$dialog = this.$dialog;
$component = this.component;
var val = $(".showFileName").val();
if(val==null||""==val){
alert("导入文件为空!");
return false;
}
//文件上传地址
//初始化,主要是设置上传参数,以及事件处理方法(回调函数)
$("#importForm").ajaxSubmit({
url:'<%=path%>/distributeFee/importData',
dataType:"json",
success:function(d) {
importDialog.$dialog.parent().next().remove();
importDialog.$dialog.parent().remove();
if (d.ret==1) { //成功
TMS.Message.info(d.message,$('#message'),2000);
$('#search_btn').trigger('click');
setTimeout('location.reload()', 1000);
} else if(d.ret==2){ //失败
TMS.Message.error(d.message,$('#message'),2000);
$('#search_btn').trigger('click');
setTimeout('location.reload()', 1000);
} else if(d.ret==0) {//校验失败,蹦出一个框
new checkError_Table_Dialog.asDialog({data: {
"checkErrorList": d.retData
}}).show({}, {header: "数据校验失败列表"});
}
}
});
return false;
}
}
]

};
FW.Component.ActAsDialog(UserAddActionDialog, UserAddActionDialogOption);
/*自动保存*/
var time = 1000*60;//毫秒
//setInterval(autoSave,time);
function autoSave(){
Fee.saveFees('auto_save');
}

/*保存*/
$('#saveFee').click(function(){
Fee.saveFees('manual_save');
});
</script>
<%@ page contentType="text/html;charset=UTF-8" %>
<%@ page isELIgnored="false"%>
<%@ page language="java" pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>

<script type="text/javascript" src="<%=path %>/static/js/common/ui/Select3.js"></script>
<script type="text/javascript" src="<%=path %>/static/js/fee/basicDistributeFee.js"></script>
<script>
var basePath = '<%=path%>';
document.title = "基础运费结算"
</script>
<style type="text/css">
.mc-form-group label { width: 60px; }
.mc-form-group .form-control {width: 150px; }
.mc-form-group .btn { margin-left: 10px; }
.modal-overflow .modal-body{height:500px;overflow:auto !important;}
.form-horizontal label.three{
text-align : right;
font-size: 14px;
font-weight: 500;
}
.form-group h4{
font-weight: bold;
margin-left:20px;
}
.tdWidth{
width:110px;
}
thead > tr >td {
vertical-align: middle !important;
text-align: center;
}
.grid-table.grid-excel-table > tbody td.grid-cell-no-widget {
color: #444;
}
.ui-state-active {
color: #eb8f00 !important;
}
.grid-table.grid-excel-table.grid-group-table > tbody > tr.grid-row:not(:first-child) {
/*border-top-width: 5px !important;*/
}
.grid-table .grid-row.odd > td {
background-color: #D3D3D3;
}
.file {
position: relative;
display: inline-block;
background: #D0EEFF;
border: 1px solid #99D3F5;
border-radius: 4px;
padding: 4px 12px;
overflow: hidden;
color: #1E88C7;
text-decoration: none;
text-indent: 0;
line-height: 20px;
}
.file input {
position: absolute;
font-size: 100px;
right: 0;
top: 0;
opacity: 0;
}
.file:hover {
background: #AADFFD;
border-color: #78C3F3;
color: #004974;
text-decoration: none;
}
</style>
<div class="panel panel-default">
<div class="panel-heading">
<h3 class="panel-title">查询条件</h3>
</div>
<div class="panel-body">
<form id="search_form" class="form" role="form">
<table>
<tr>
<td>
<div class="form-group mc-form-group">
<label for="userName" class="control-label" >姓名:</label>
<input type="text" style="width: 310px;" id="userName" class="form-control w100" name="userName" placeholder="请输入司机姓名">
</div>
<div class ="form-group mc-form-group">
<button id="search_btn" type="button" style="width: 130px;" class="btn btn-primary">查询</button>
</div>
</td>
</tr>
<tr>
<td>
<div class="form-group mc-form-group">
<label for="company_status" class="control-label" >日期:</label>
<input type="text" id="deliveryTime" name="deliveryTime" class="form-control" value="${defaultDay }"
placeholder="请选择时间" onclick="WdatePicker({skin:'bootstrap',firstDayOfWeek:1,onpicked:function(dq){dateChange(dq.cal.getNewDateStr());}});" pattern="(\d{4})-(0\d{1}|1[0-2])-(0\d{1}|[12]\d{1}|3[01])" required/>
<%-- <input type="hidden" id="deliveryTime" name="deliveryTime" value="${defaultDay }"> --%>
<button id="yesterday_btn" onclick="selectDeliveryTime(0);" type="button" style="width: 60px;" class="btn "> 昨天</button>
<button id="today_btn" type="button" onclick="selectDeliveryTime(1);" style="width: 60px;" class="btn btn-primary">今天</button>
</div>
</td>
</tr>
<tr>
<td>
<div class="form-group mc-form-group">
<label for="routeType" class="control-label" >服务类型:</label>
<select class="form-control" onchange="getServiceBatch(this);" name="serviceId" id="select_service">
<option value="">全部</option>
<c:forEach items="${distservices }" var="s">
<option value="${s.id }">${s.name }</option>
</c:forEach>
</select>
</div>
</td>
</tr>
<tr>
<td>
<div class="form-group mc-form-group">
<label for="routeStatus" class="control-label" >配送批次:</label>
<select class="form-control" name="batchId" id="select_batch">
<option value="">全部</option>
</select>
</div>
</td>
</tr>
<tr>
<td>
<div class="form-group mc-form-group">
<label class="control-label" >仓库:</label>
<select id = "warehouseId" name="warehouseId" class="form-control">
<option value="">全部仓库</option>
<c:forEach items="${warehouses }" var="w">
<option value="${w.id }">${w.name }</option>
</c:forEach>
</select>
</div>
</td>
</tr>
<tr>
<td>
<div class="form-group mc-form-group">
<label class="control-label" >任务类型:</label>
<select id = "taskType" name="taskType" class="form-control">
<option value="">全部</option>
<option value="10">直送</option>
<option value="20">支线</option>
<option value="25">末端</option>
</select>
</div>
</td>
</tr>
</table>
<div class = "form-group fw-display-ib hidden">
<input name="per_page" value="20" class="form-control">
</div>
<div class = "form-group fw-display-ib hidden">
<input name="page" value="1" class="form-control" type="text" placeholder="第一页">
</div>
</form>
</div>

</div>
<div id="export_form_div"></div>
<div class="panel panel-default closeCountDiv">
本次共查询出<span id="span_totalCount">0</span>条数据
<span style="float:right;line-height: 20px;display: block;">
统计信息: &nbsp; &nbsp;
费用合计: <span id="totalAmount">0</span>元 &nbsp;
基础运费: <span id="totalBasicAmount">0</span>元 &nbsp;
多送客户奖励: <span id="totalMoreSend">0</span>元 &nbsp;
补货奖励: <span id="totalBuhuo">0</span>元 &nbsp; &nbsp;
超距配送奖励: <span id="totalOverRange">0</span>元 &nbsp; &nbsp;
<i style="float:right;line-height: 20px;" class='fa fa-times-circle' onclick="closeCountDiv();"></i>
</span>
</div>
<section id = "ui-grid">
<div>
<!--这里是提示信息,用于发送成功以后提醒-->
<div class="grid-message -auto-binded" id="message" data-grid-id="route_grid_index" style="display: block;"></div>
<div class="grid-head">
<ul class="nav nav-tabs">
<li class="pull-right btn-toolbar btn-group">
<a href="#" id="saveFee" class="btn btn-link pull-left" data-grid-id="route_grid_index" data-toggle="grid.run_callback" title="save"><button>保存</button></a>
<a href="#" id="syncTask" class="btn btn-link pull-left" data-grid-id="route_grid_index" data-toggle="grid.run_callback"title="sync"><button>同步任务</button></a>
<a href="#" id="makeFee" class="btn btn-link pull-left" style="display: none;" data-grid-id="route_grid_index" data-toggle="grid.run_callback" title="oneJ"><button>一键做账</button></a>
<a href="#" id="exportExcel" class="btn btn-link pull-left" data-grid-id="route_grid_index" data-toggle="grid.run_callback" title="exportExcel"><button>表格导出</button></a>
<a href="#" id="add_btn" class="btn btn-link pull-left" data-grid-id="user_grid_index" data-toggle="grid.run_callback" title="New"><button>导入Excel</button></a>
</li>
</ul>
</div>
<div id="collection_panel"></div>
<script>
function broweExcle(){
var filePath = $("input[type='file']").val();
if(filePath.indexOf("xls")!=-1||filePath.indexOf("xlsx")!=-1 ){
var arr=filePath.split('\\');
var fileName=arr[arr.length-1];
$(".showFileName").val(fileName);
}else{
alert("导入的不是有效Excel文件!");
$(".showFileName").val("");
return false
}
}
</script>
<script id="import_render_tmpl" type="text/x-handlebars-template">
<div id="dialog_message"></div>
<form method="POST" enctype ="multipart/form-data" id = "importForm">
<div class="form-group fw-mb15">
<h4>请选择Excel文件(<span style="color:red;">*必填</span>)</h4><br>
<label class="col-sm-2"><span style="color:red;">*</span>Excel文件:</label>
<div class="col-sm-6">
<input type="text" class="form-control showFileName" readonly="readonly">
</div>
<div class="col-sm-2">
<a href="javascript:;" class="file" onchange="broweExcle()">浏览
<input type="file" name="fileupload" id="fileupload" accept=".xlsx,.xls">
</a>
</div>
</div>
</form>
</script>
<!-- 校验失败后显示 TODO-->
<script id="checkError_table_tmpl" type="text/x-handlebars-template">
<table class="table table-bordered table-hover">
<thead>
<tr>
<th>序号</th>
<th>校验结果</th>
<th>任务单号</th>
</tr>
</thead>
<tbody>
{{#each checkErrorList}}
<tr>
<td>{{addOne @index}}</td>
<td>{{verifyResult}}</td>
<td>{{taskbillNo}}</td>
</tr>
{{/each}}
</tbody>
</table>
</script>

<script>
var handleHelper = Handlebars.registerHelper("addOne", function (index) {
//返回+1之后的结果
return index + 1;
});


/*YC*/
function getFormData(formId) {
var arr = $('#' + formId).serializeArray();
var result = {};
for ( var i = 0; i < arr.length; i++) {
result[arr[i].name] = arr[i].value;
}
return result;
}
/*转换时间戳为日期*/
function formatDate(timestamp){
date=new Date(parseInt(timestamp) * 1000);
var year=date.getFullYear();
var month=date.getMonth()+1;
var date=date.getDate();
return year+"-"+month+"-"+date;
}
// 引入组件初始化
seajs.use(["common/ui/Select3"], function(Select3) {
Select3.init($("#select_service"));
Select3.init($("#select_batch"));
Select3.init($("#warehouseId"));
Select3.init($("#taskType"));
})

</script>

<script>
var cbSearch = function() {
$("#search_btn").trigger("click")
}
/*var $warehouseId = $("#warehouseId")
var $routeStatus = $("#routeStatus")
var $routeType = $("#routeType")
$warehouseId.change(cbSearch)
$routeStatus.change(cbSearch)
$routeType.change(cbSearch)
// 引入组件初始化
seajs.use(["common/ui/Select3"], function(Select3) {
Select3.init($warehouseId)
Select3.init($routeStatus)
Select3.init($routeType)
})*/

/*grid options*/
var options = {
id: "route_grid_index",
recordClassNames: ["Route"],
columns: [
{ name : '_single_select',hidden:true,sortable : false, renderer : 'FW.MultiSelectColumnRenderer', virtual : true, css: '-single-select fw-w30'},
{ label: "id", name: "id",hidden:true},
{ label: "序号",renderer: 'FW.OrderRenderer',htmlSafe: true,style: "width:1%"},
{ label: "司机姓名", name: "userName", renderer:'FW.NameNoRenderer',htmlSafe: true,style: "width:5%"},
/*{ label: "配送日期", name: "deliveryTime",renderer : 'FW.DeliveryTimeRenderer',virtual:true,hidden:true},*/
{ label: "配送服务", name: "serviceId", renderer:'FW.ServiceRenderer', virtual:true,htmlSafe: true,style: "width:4%"},
{ label: "配送批次", name: "batchId", renderer : 'FW.BatchRenderer', virtual:true,htmlSafe: true,style: "width:4%"},
{ label: "任务单号", name: "taskbillNo",htmlSafe: true,style: "width:4%"},
{ label: "任务类型", name: "taskType",renderer:'FW.TaskTypeRenderer',htmlSafe: true,style: "width:3%"},
{ label: "来源", name: "userSourceName",htmlSafe: true,style: "width:3%"},
{ label: "车型", name: "cartypeName",htmlSafe: true,style: "width:3%"},
{ label: "仓库", name: "warehouseName",virtual:true,htmlSafe: true,style: "width:4%"},
{ label: "线路/站点", name: "originName",htmlSafe: true,style: "width:5%"},
{ label: "费用合计/元", name: "totalAmount",renderer : 'FW.InputTotalAmountRenderer',virtual:true,htmlSafe: true,style: "width:5%"},
{ label: "基础运费", name: "basicAmount",renderer : 'FW.InputBasicAmountRenderer', virtual:true,htmlSafe: true,style: "width:5%"},
{ label: "配送门店数", name: "distributeCustomerNum",virtual:true,htmlSafe: true,style: "width:2%"},
{ label: "取件门店数", name: "pickupCustomerNum",virtual:true,htmlSafe: true,style: "width:2%"},
{ label: "多送客户奖励", name: "rewardAdditionalAmount",renderer : 'FW.InputDuoSongAmountRenderer', virtual:true,htmlSafe: true,style: "width:5%"},
{ label: "补货奖励", name: "rewardReplenishmentAmount",renderer : 'FW.InputBuhuoAmountRenderer', virtual:true,htmlSafe: true,style: "width:5%"},
{ label: "超距配送奖励", name: "rewardOverRangeAmount",renderer : 'FW.InputChaojuAmountRenderer', virtual:true,htmlSafe: true,style: "width:5%"},
{ label: "超额配送奖励", name: "rewardOverQuotaAmount",renderer : 'FW.InputChaoEAmountRenderer', virtual:true,htmlSafe: true,style: "width:5%"},
{ label: "救援奖励", name: "rewardHelpAmount",renderer : 'FW.InputJiuYuanAmountRenderer', virtual:true,htmlSafe: true,style: "width:5%"},
{ label: "被投诉罚款", name: "punishBeComplaintAmount",renderer : 'FW.InputBeiTouSuAmountRenderer', virtual:true,htmlSafe: true,style: "width:5%"},
{ label: "被救援扣除", name: "punishBeHelpedAmount",renderer : 'FW.InputBeiJiuYuanAmountRenderer', virtual:true,htmlSafe: true,style: "width:5%"},
{ label: "迟到罚款", name: "punishLateAmount",renderer : 'FW.InputChiDaoAmountRenderer', virtual:true,htmlSafe: true,style: "width:5%"},
{ label: "其它", name: "otherAmount",renderer : 'FW.InputQiTaAmountRenderer', virtual:true,htmlSafe: true,style: "width:5%"},
{ label: "备注", name: "remark",renderer : 'FW.InputBeiZhuAmountRenderer', virtual:true,htmlSafe: true,style: "width:5%"}
],
target: $("#collection_panel"),
loadAfterRendered: true,
url: '<%=path%>/distributeFee/queryBasicDistributeFeeList',
pagination: true,
scrollable: true,
defaultParams: getFormData("search_form")
};

var gridPanel = new FW.Grid(options);
/*获取所有选择的*/
gridPanel.selectedStatus = function() {
return this.selectedRecords().map(function(record) {
return record.get("status");
});
};

gridPanel.render();
//查询按钮
$('#search_btn').click(function(){

//更新统计信息
$('#totalAmount').html(0);
$('#totalBasicAmount').html(0);
$('#totalMoreSend').html(0);
$('#totalBuhuo').html(0);
$('#totalOverRange').html(0);

var params = getFormData("search_form");
gridPanel.updateDefaultParams(params);
$.get('<%=path%>/distributeFee/queryBasicDistributeFeeList', params,
function(data){
gridPanel.setData(data);
showCountDiv();
$('#span_totalCount').text(data.total);

//更新右上角数据
//$('#totalTaskbill').text(data.totalTaskbill);
//$('#totalUser').text(data.totalUser);
//$('#totalAmount').text(data.totalAmount);
},
"json");
});

</script>
</div>
</section>
<script type="text/javascript" src="<%=path%>/static/js/vendor/highlight.min.js"></script>
<script type="text/javascript" src="<%=path%>/static/js/plugin/ajaxfileupload.js"></script>
<script>
$(function(){
//hljs.initHighlightingOnLoad();
//var today=new Date();
//$('#deliveryTime').val(today.getFullYear()+"-"+(today.getMonth()+1)+"-"+today.getDate());
});

var serviceBatchs = $.parseJSON('${serviceBatchs}');
var services = $.parseJSON('${services}');;
var sources = $.parseJSON('${sources}');
/* 获取批次 */
function getServiceBatch(select){
var serviceId = $(select).val();
if(serviceId==""){
var tmpHtml = ' <option value="">全部批次</option>';
$('#select_batch').html(tmpHtml);
return false;
}

var tmpBathcs = serviceBatchs[serviceId];

if(!tmpBathcs){
$('#select_batch').html('');
}

var selectHtml = '<option value="">全部批次</option>';
$.each(tmpBathcs,function(i,o){
selectHtml += '<option value="';
selectHtml += o.id;
selectHtml += '">';
selectHtml += o.name;
selectHtml += '</option>';
});

$('#select_batch').html(selectHtml);
}

/*昨天/今天*/
function selectDeliveryTime(type){
//清空配送时间
$('#yesterday_btn').removeClass("btn-primary");
$('#today_btn').removeClass("btn-primary");

var date=new Date();
var year=date.getFullYear();
var month=date.getMonth()+1;
if(type==0){
//昨天
var yesterday = generateDate(type);
$('#yesterday_btn').addClass("btn-primary");
//$('#deliveryTime').val(yesterday);
$('#deliveryTime').val(yesterday);
}else{
//今天
var today = generateDate(type);
$('#today_btn').addClass("btn-primary");
//$('#deliveryTime').val(today);
$('#deliveryTime').val(today);
}
}

function generateDate(type){
if(type==0){
var dd = new Date();
dd.setDate(dd.getDate()-1);//获取上一天的日期
var y = dd.getFullYear();
var m = dd.getMonth()+1;//获取当前月份的日期
var d = dd.getDate();
return y+"-"+m+"-"+d;
}else{
var date = new Date();
var year = date.getFullYear();
var month = date.getMonth()+1;
var day= date.getDate();
return year+"-"+month+"-"+day;
}
}
/*日期改变*/
function dateChange(date){
$('#yesterday_btn').removeClass("btn-primary");
$('#today_btn').removeClass("btn-primary");

//$('#deliveryTime').val( (new Date(date)).getTime()/1000 );
//$('#deliveryTime').val(date)
}

/* 关闭显示查询数据量div */
function closeCountDiv(){
$(".closeCountDiv").css("display","none");
}
function showCountDiv(){
$(".closeCountDiv").css("display","block");
}

/*同步任务*/
$('#syncTask').click(function(){
$.ajax({
url: '<%=path %>/distributeFee/syncTaskbill',
async: true,
type:'post',
dataType:'json',
data: getFormData("search_form"),
success: function(data){
if (data.flag){
TMS.Message.info(data.message,$('#message'),2000);
$('#search_btn').trigger('click');
}else {
TMS.Message.error(data.message,$('#message'),2000);
}
}
});
});

/*导出*/
$('#exportExcel').click(function(){
if(gridPanel.getData().total==0){
alert("没有要导出的内容!");
return false;
}

var deliveryTime = $('#deliveryTime').val();
var userName = $('#userName').val();
var serviceId = $('#select_service').val();
var batchId = $('#select_batch').val();
var warehouseId = $('#warehouseId').val();
var taskType = $('#taskType').val();
var cityName = $("#city_switch option:selected ").text();
var form = '<form style="display:none" id="exportForm" action="'+'<%=path %>/distributeFee/exportBasicDistributeFees'+'">';
form += '<input type="hidden" name="deliveryTime" value="'+ deliveryTime +'"/>';
form += '<input type="hidden" name="userName" value="'+ userName +'"/>';
form += '<input type="hidden" name="serviceId" value="'+ serviceId +'"/>';
form += '<input type="hidden" name="batchId" value="'+ batchId +'"/>';
form += '<input type="hidden" name="warehouseId" value="'+ warehouseId +'"/>';
form += '<input type="hidden" name="taskType" value="'+ taskType +'"/>';
form += '<input type="hidden" name="cityName" value="'+ cityName +'"/>';
form += '</form>';

$('#export_form_div').html(form);
$('#exportForm').submit();
});

var importDialog = {};
/*导入*/
$("#add_btn").click(function() {
var data = {
action: ''
};
importDialog = new UserAddActionDialog.asDialog({data:data});
importDialog.show({}, {header: '导入Excel'});
});

/*校验失败的弹窗*/
var checkError_Table_DialogOption = {
header: '',
handlers: [
{label:"关闭", class:"-step-cancel"}
],
};

/*dialog生成函数*/
var checkError_Table_Dialog = FW.Component.pinleiTTT = Class.create(FW.Component.Base, FW.Component.WizardSupport, {
render: function() {
var source = $('#checkError_table_tmpl').html();
var template = Handlebars.compile(source);
var context = this.option("data");
var $dom = $(template(context));
this._setDom($dom);

//prepareDialog();

return this.$dom;
}
});
FW.Component.ActAsDialog(checkError_Table_Dialog, checkError_Table_DialogOption);

/*dialog生成函数*/
var UserAddActionDialog = FW.Component.UserAdd = Class.create(FW.Component.Base, FW.Component.WizardSupport, {
render: function() {
var source = $("#import_render_tmpl").html();
var template = Handlebars.compile(source);
var context = this.option("data");
var $dom = $(template(context));

this._setDom($dom);
return this.$dom;
}
});
var UserAddActionDialogOption = {
header: '',
width:'700px',
height:'150px',
handlers: [
{
label: "上传",
callback: function () {
$dialog = this.$dialog;
$component = this.component;
var val = $(".showFileName").val();
if(val==null||""==val){
alert("导入文件为空!");
return false;
}
//文件上传地址
//初始化,主要是设置上传参数,以及事件处理方法(回调函数)
$("#importForm").ajaxSubmit({
url:'<%=path%>/distributeFee/importData',
dataType:"json",
success:function(d) {
importDialog.$dialog.parent().next().remove();
importDialog.$dialog.parent().remove();
if (d.ret==1) { //成功
TMS.Message.info(d.message,$('#message'),2000);
$('#search_btn').trigger('click');
setTimeout('location.reload()', 1000);
} else if(d.ret==2){ //失败
TMS.Message.error(d.message,$('#message'),2000);
$('#search_btn').trigger('click');
setTimeout('location.reload()', 1000);
} else if(d.ret==0) {//校验失败,蹦出一个框
new checkError_Table_Dialog.asDialog({data: {
"checkErrorList": d.retData
}}).show({}, {header: "数据校验失败列表"});
}
}
});
return false;
}
}
]

};
FW.Component.ActAsDialog(UserAddActionDialog, UserAddActionDialogOption);
/*自动保存*/
var time = 1000*60;//毫秒
//setInterval(autoSave,time);
function autoSave(){
Fee.saveFees('auto_save');
}

/*保存*/
$('#saveFee').click(function(){
Fee.saveFees('manual_save');
});
</script>
posted @ 2016-07-21 15:00  雄狮_杜  阅读(284)  评论(0编辑  收藏  举报