1.主JSP
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ page import="aisino.reportform.model.base.SessionInfo"%>
<%
String contextPath = request.getContextPath();
SessionInfo sessionInfo = (SessionInfo) session
.getAttribute("sessionInfo");
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>增值税发票风险防控系统</title>
<jsp:include page="../../../inc.jsp"></jsp:include>
<style type = "text/css">
.begin{
align-items: center;
justify-content: center;
}
.searchTime{
width:70%
}
.buttonTime{
width:30%
}
.datagrid-htable tr{
rowspan:2;
}
.gb{
background-color:transparent;
}
</style>
<script>
var export_flag=0;
function onLoadSuccess() {
if(document.getElementById("contractRecord-total")){//判断合计是否已存在(防止排序时合计重复加载)
return;
}
var beginTime = $("#dateBoxBegin").datebox("getValue");
var endTime = $("#dateBoxEnd").datebox("getValue");
var kjnsrsbh = $("#kjnsrsbh").val();
var kjmc = $("#kjmc").val();
var search_type = $("#lx").val();
if(search_type==0){
search_type='';
}
if(search_type==1){
search_type='指定扣缴类';
}
if(search_type==2){
search_type='法定源泉类';
}
$.ajax({
url: sy.contextPath + '/base/contract-record!doNotNeedSecurity_compute.sy',
type: "post",
data: {
"export_flag" : export_flag,
"beginTime": beginTime,
"endTime": endTime,
"kjnsrsbh": kjnsrsbh,
"kjmc": kjmc,
"search_type": search_type
},
dataType: "json",
success: function (result) {
//alert(result.success);
//alert(result.obj.compute_list.length);
//alert(result.obj.compute_list[0].ZYBSESDS);
for(var i=0;i<result.obj.compute_list.length;i++){
var ZYBSEZZS = 0;
if(result.obj.compute_list[i].ZYBSEZZS!=null&&result.obj.compute_list[i].ZYBSEZZS!=''&&result.obj.compute_list[i].ZYBSEZZS!='undefined'){
ZYBSEZZS = result.obj.compute_list[i].ZYBSEZZS;
}
var ZYBSESDS = 0;
if(result.obj.compute_list[i].ZYBSESDS!=null&&result.obj.compute_list[i].ZYBSESDS!=''&&result.obj.compute_list[i].ZYBSESDS!='undefined'){
ZYBSESDS = result.obj.compute_list[i].ZYBSESDS;
}
$('#mainInfo').datagrid('appendRow', {
//action:'<span>合计</span>',
YBSEZZS: '<span style="font-weight:bold" >'+ ZYBSEZZS +'</span>',
YBSESDS: '<span style="font-weight:bold" class="YBSESDS">' + ZYBSESDS + '</span>',
});
}
}
});
}
/* //添加“合计”行
function onLoadSuccess() {
if(document.getElementById("nonResidentFixedDividendTaX-total")){//判断合计是否已存在(防止排序时合计重复加载)
return;
}
$('#mainInfo').datagrid('appendRow', {
//action:'<span>合计</span>',
YBSEZZS: '<span style="font-weight:bold" >'+ compute("YBSEZZS") +'</span>',
YBSESDS: '<span style="font-weight:bold" class="YBSESDS">' + compute("YBSESDS") + '</span>',
});
}
//合计列值计算方法
function compute(colName) {
//var grid=$('#mainInfo').datagrid('getData');
var rows = $('#mainInfo').datagrid('getRows');
var total = 0;
for (var i = 0; i < rows.length; i++) {
if(rows[i][colName]!='undefined'&&rows[i][colName]!=''&&rows[i][colName]!=null){
total += parseFloat(rows[i][colName]);
}else{
total += 0;
}
}
return total;
} */
//更新汇率
var dialog;
function updateRate(){
dialog = sy.modalDialog({
title : '更新汇率',
url : sy.contextPath + '/securityJsp/base/linsa/contractRecord_updateRate.jsp',
height : 350,
width : 500
});
}
//修改列表数据
var dialog;
function update(bh,xl,zzs,sds,lxr,dh,bz,fjmqynsrsbh){
//alert(bh);
dialog = sy.modalDialog({
title : '设置',
url : sy.contextPath + '/securityJsp/base/linsa/contractRecord_update.jsp?bh='+bh
+"&xl="+encodeURI(encodeURI(xl))+"&sds="+encodeURI(encodeURI(sds))
+"&zzs="+encodeURI(encodeURI(zzs))+"&lxr="+encodeURI(encodeURI(lxr))
+"&dh="+encodeURI(encodeURI(dh))+"&bz="+encodeURI(encodeURI(bz))
+"&fjmqynsrsbh="+encodeURI(encodeURI(fjmqynsrsbh)),
height : 300,
width : 400
});
}
var export_flag=0;
//导出EXCEL
function export_excle(){
var beginTime = $("#dateBoxBegin").datebox("getValue");
var endTime = $("#dateBoxEnd").datebox("getValue");
var kjnsrsbh = $("#kjnsrsbh").val();
var kjmc = $("#kjmc").val();
var search_type = $("#lx").val();
if(search_type==0){
search_type='';
}
if(search_type==1){
search_type='指定扣缴类';
}
if(search_type==2){
search_type='法定源泉类';
}
$.post(sy.contextPath + '/base/contract-record!doNotNeedSessionAndSecurity_export.sy', {
export_flag:export_flag,beginTime:beginTime,endTime:endTime,kjnsrsbh:kjnsrsbh,kjmc:kjmc,search_type:search_type
}, function(data) {
if(data.success){
$('#dd').dialog('open');
$('#downloadurl').attr("href",sy.contextPath+"/upload/"+data.msg);
}else{
alert("没有查询到相关数据!");
}
}, 'json');
}
/* 在这里书写对应的代码,包括了对应的ajax */
$(document).ready(function(){
$("#searchBtn").click(function(){
var search = $('#searchBox').searchbox('menu');
});
var datagrid = $('#mainInfo').datagrid({
toolbar:'#toolBar',
striped:true, // 配置每一行的颜色为不同
fitColumns:false, //自动宽度
rownumbers : true, //行号
pagination : true, //分页
scrollbarSize :0,
pageSize : 50,
//onLoadSuccess: compute,
showFooter:true, //显示合计
url:sy.contextPath + '/base/contract-record!doNotNeedSessionAndSecurity_findByType.sy',
//固定在左边的列
frozenColumns: [[
{field:'设置',rowspan:2,colspan:1,title:'操作',width:100,align:'center',formatter: function(value,row,index){
var str='';
if(row.KJYWRMC!=null&&row.KJYWRNSRSBH!=null){//判断是否为合计行
str=sy.formatString('<input type="button" value="设置" id="shezhi" onclick="update(\'{0}\',\'{1}\',\'{2}\',\'{3}\',\'{4}\',\'{5}\',\'{6}\',\'{7}\');"/>',
row.HTDJBH,row.SDLXXL,row.KJZZSSL,row.KJSDSSL,row.LXR,row.DH,row.BZXX,row.FJMQYNSRSBH);
}else{//为合计行
str+='<span style="font-weight:bold" id="contractRecord-total">合计</span>';
}
return str;
}}
]],
columns:[[
{field:'ID',rowspan:2,colspan:1,title:'序号',width:100,hidden:true},
{field:'HTBARQ',rowspan:2,colspan:1,title:'合同备案日期',width:100,align:'center'},
//{field:'KJYWRMC',rowspan:2,colspan:1,title:'扣缴义务人<br>名称',width:100,align:'center'},
{field:'KJYWRMC',rowspan:2,colspan:1,title:'扣缴义务人<br>名称',width:300,align:'center',formatter: function(value,row,index){
if(value==undefined){
value = "";
};
var str='';
str=sy.formatString('<input class="gb" type="text" title="'+value+'" value="'+value+'" style="width:300px; border: 0px;text-align:center;"/>');
return str;
}},
{field:'KJYWRNSRSBH',rowspan:2,colspan:1,title:'扣缴义务人<br>纳税人识别号',width:150,align:'center'},
{field:'KJYWLX',rowspan:2,colspan:1,title:'扣缴义务类型',width:100,align:'center'},
{field:'LXR',rowspan:2,colspan:1,title:'联系人',width:100,align:'center'},
{field:'DH',rowspan:2,colspan:1,title:'电话',width:100,align:'center'},
{field:'FJMQYNSRSBH',rowspan:2,colspan:1,title:'非居民企业<br>纳税人识别号',width:150,align:'center'},
//{field:'FJMQYMC',rowspan:2,colspan:1,title:'非居民<br>企业名称',width:100,align:'center'},
{field:'FJMQYMC',rowspan:2,colspan:1,title:'非居民<br>企业名称',width:200,align:'center',formatter: function(value,row,index){
if(value==undefined){
value = "";
};
var str='';
str=sy.formatString('<input class="gb" type="text" title="'+value+'" value="'+value+'" style="width:200px; border: 0px;text-align:center;"/>');
return str;
}},
//{field:'FJMYWMC',rowspan:2,colspan:1,title:'非居民<br>英文企业名称',width:100,align:'center'},
{field:'FJMYWMC',rowspan:2,colspan:1,title:'非居民<br>英文企业名称',width:200,align:'center',formatter: function(value,row,index){
if(value==undefined){
value = "";
};
var str='';
str=sy.formatString('<input class="gb" type="text" title="'+value+'" value="'+value+'" style="width:200px; border: 0px;text-align:center;"/>');
return str;
}},
//{field:'FJMYWDZ',rowspan:2,colspan:1,title:'非居民<br>英文地址',width:100,align:'center'},
{field:'FJMYWDZ',rowspan:2,colspan:1,title:'非居民<br>英文地址',width:200,align:'center',formatter: function(value,row,index){
if(value==undefined){
value = "";
};
var str='';
str=sy.formatString('<input class="gb" type="text" title="'+value+'" value="'+value+'" style="width:200px; border: 0px;text-align:center;"/>');
return str;
}},
//{field:'GJ',rowspan:2,colspan:1,title:'国家',width:100,align:'center'},
{field:'GJ',rowspan:2,colspan:1,title:'国家',width:150,align:'center',formatter: function(value,row,index){
if(value==undefined){
value = "";
};
var str='';
str=sy.formatString('<input class="gb" type="text" title="'+value+'" value="'+value+'" style="width:150px; border: 0px;text-align:center;"/>');
return str;
}},
//{field:'HTXMMC',rowspan:2,colspan:1,title:'合同项目名称',width:100,align:'center'},
{field:'HTXMMC',rowspan:2,colspan:1,title:'合同项目名称',width:150,align:'center',formatter: function(value,row,index){
if(value==undefined){
value = "";
};
var str='';
str=sy.formatString('<input class="gb" type="text" title="'+value+'" value="'+value+'" style="width:150px; border: 0px;text-align:center;"/>');
return str;
}},
{field:'HTDJBH',rowspan:2,colspan:1,title:'合同登记编号',width:150,align:'center'},
{field:'HTH',rowspan:2,colspan:1,title:'合同号',width:100,align:'center'},
{field:'HTQDRQ',rowspan:2,colspan:1,title:'合同签订日期',width:100,align:'center'},
{field:'HTZFCS',rowspan:2,colspan:1,title:'合同支付次数',width:100,align:'center'},
{field:'HTZXQSSJ',rowspan:2,colspan:1,title:'合同执行<br>起始时间',width:100,align:'center'},
{field:'HTZXZZSJ',rowspan:2,colspan:1,title:'合同执行<br>终止时间',width:100,align:'center'},
{field:'',rowspan:1,colspan:2,title:'合同总价款',width:200,align:'center'},
{field:'',rowspan:1,colspan:4,title:'已支付金额<br>(支付备案信息)',width:400,align:'center'},
{field:'',rowspan:1,colspan:2,title:'所得类型',width:200,align:'center'},
{field:'',rowspan:1,colspan:2,title:'应纳税额',width:200,align:'center'},
{field:'',rowspan:1,colspan:2,title:'应补(退)税额',width:100,align:'center'},
{field:'',rowspan:1,colspan:2,title:'税款入库日期',width:100,align:'center'},
{field:'',rowspan:1,colspan:2,title:'扣缴税额',width:200,align:'center'},
{field:'',rowspan:1,colspan:2,title:'扣缴税率',width:200,align:'center'},
//{field:'BZXX',rowspan:2,colspan:1,title:'备注',width:100,align:'center'}
{field:'BZXX',rowspan:2,colspan:1,title:'备注',width:150,align:'center',formatter: function(value,row,index){
if(value==undefined){
value = "";
};
var str='';
str=sy.formatString('<input class="gb" type="text" title="'+value+'" value="'+value+'" style="width:150px; border: 0px;text-align:center;"/>');
return str;
}}
],[
{field:'BZMC',rowspan:1,colspan:1,title:'币种',width:100,align:'center'},
{field:'HTZJK',rowspan:1,colspan:1,title:'外币金额',width:100,align:'center'},
{field:'YZFHBMC',rowspan:1,colspan:1,title:'币种',width:100,align:'center'},
{field:'YZFJE',rowspan:1,colspan:1,title:'外币金额',width:100,align:'center'},
{field:'HL',rowspan:1,colspan:1,title:'汇率',width:100,align:'center'},
{field:'ZHRMB',rowspan:1,colspan:1,title:'折合人民币',width:100,align:'center'},
//{field:'SDLXDL',rowspan:1,colspan:1,title:'大类',width:100,align:'center'},
{field:'SDLXDL',rowspan:2,colspan:1,title:'大类',width:150,align:'center',formatter: function(value,row,index){
if(value==undefined){
value = "";
};
var str='';
str=sy.formatString('<input class="gb" type="text" title="'+value+'" value="'+value+'" style="width:150px; border: 0px;text-align:center;"/>');
return str;
}},
//{field:'SDLXXL',rowspan:1,colspan:1,title:'明细',width:100,align:'center'},
{field:'SDLXXL',rowspan:2,colspan:1,title:'明细',width:150,align:'center',formatter: function(value,row,index){
if(value==undefined){
value = "";
};
var str='';
str=sy.formatString('<input class="gb" type="text" title="'+value+'" value="'+value+'" style="width:150px; border: 0px;text-align:center;"/>');
return str;
}},
{field:'YNSEZZS',rowspan:1,colspan:1,title:'增值税',width:100,align:'center'},
{field:'YNSESDS',rowspan:1,colspan:1,title:'所得税',width:100,align:'center'},
{field:'YBSEZZS',rowspan:1,colspan:1,title:'增值税',width:100,align:'center'},
{field:'YBSESDS',rowspan:1,colspan:1,title:'所得税',width:100,align:'center'},
{field:'SKRKRQZZS',rowspan:1,colspan:1,title:'增值税',width:100,align:'center'},
{field:'SKRKRQSDS',rowspan:1,colspan:1,title:'所得税',width:100,align:'center'},
{field:'KJ_ZZS',rowspan:1,colspan:1,title:'增值税',width:100,align:'center'},
{field:'KJ_SDS',rowspan:1,colspan:1,title:'所得税',width:100,align:'center'},
{field:'KJZZSSL',rowspan:1,colspan:1,title:'增值税',width:100,align:'center'},
{field:'KJSDSSL',rowspan:1,colspan:1,title:'所得税',width:100,align:'center'}
]],
onLoadSuccess:function(data){
onLoadSuccess();//添加“合计”行
}
/* var dataGrid = null;
//获取数据传过来的所有数据
onLoadSuccess: function(data){
if(dataGrid == null){
dataGrid = data;
}
$.messager.progress('close');
console.log(data.total);
} */
});
var mydate = new Date();
var nowTime=mydate.toLocaleString();
/* 定义时间的搜索 */
$("#dateBoxBegin").datebox({
required:false,
currentText:nowTime
});
$("#dateBoxEnd").datebox({
required:false,
currentText:nowTime
});
});
/*查找所有派单内容的方法*/
function toFind(type){
/*这里进行当前查询内容的赋值*/
var nowType = type;
if(nowType == "bySearch"){
var beginTime = $("#dateBoxBegin").datebox("getValue");
var endTime = $("#dateBoxEnd").datebox("getValue");
var kjnsrsbh = $("#kjnsrsbh").val();
var kjmc = $("#kjmc").val();
var search_type = $("#lx").val();
export_flag=1;
if(search_type==0){
search_type='';
}
if(search_type==1){
search_type='指定扣缴类';
}
if(search_type==2){
search_type='法定源泉类';
}
$('#mainInfo').datagrid('load',{
"nowType":nowType,
"beginTime":beginTime,
"endTime":endTime,
"kjnsrsbh":kjnsrsbh,
"kjmc":kjmc,
"search_type":search_type,
});
};
}
</script>
</head>
<body>
<!-- 一个大的div,这个div,用来对时间进行布局 -->
<div class = "begin easyui-layout">
<div id="toolBar">
<table>
<tr>
<td>
<span style="padding-left:4vw;">合同备案日期起:</span>
<input id="dateBoxBegin" class="easyui-textbox" >
合同备案日期止:
<input id="dateBoxEnd" type="text">
<select id="lx" name="lx" style="width:10.5vw;height:1.8vw;" class="easyui-textbox">
<option value="0">请选择</option>
<option value="1">指定扣缴类</option>
<option value="2">法定源泉类</option>
</select>
</td>
</tr>
<tr>
<td><span style="width=20px;">扣缴义务人纳税人识别号:</span>
<input id="kjnsrsbh" type="text" class="easyui-textbox" data-options="iconCls:'ext-icon-brick_go'" >
扣缴义务人名称:
<input id="kjmc" type="text" class="easyui-textbox" data-options="iconCls:'ext-icon-brick_go'" >
<a href="javascript:void(0);" class="easyui-linkbutton"
data-options="iconCls:'ext-icon-zoom_out'" onclick = "toFind('bySearch')">搜索</a>
<a href="javascript:void(0);" class="easyui-linkbutton"
data-options="iconCls:'ext-icon-disk'"
onclick="export_excle();">导出excel</a>
<a href="javascript:void(0);" class="easyui-linkbutton"
data-options="iconCls:'ext-icon-brick_go'"
onclick="updateRate();">更新汇率</a>
</td>
</tr>
</table>
</div>
</div>
<!-- 创建分页 beagin -->
<table id="mainInfo" class="datagrid" style="width: 100%;" data-options="fit:true,border:false">
</table>
<div title="excel文件下载" closed="true" modal="true" class="easyui-dialog" id="dd" style="width:200px;height:120px;padding:10px">
<a id="downloadurl" class="easyui-linkbutton" data-options="iconCls:'ext-icon-disk'">下载excel文件</a>
</div>
</body>
</html>
2.修改页面
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ page import="java.util.UUID"%>
<%@ page import="aisino.reportform.model.base.SessionInfo"%>
<%
UUID uuid = UUID.randomUUID();
SessionInfo sessionInfo = (SessionInfo) session.getAttribute("sessionInfo");
String name=sessionInfo.getUser().getName();
String lx=sessionInfo.getUser().getLx();
%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<%
/* String bt= java.net.URLDecoder.decode(request.getParameter("bt"),"UTF-8"); */
%>
<!DOCTYPE HTML>
<html>
<head>
<jsp:include page="../../../inc.jsp"></jsp:include>
<title>设置</title>
<style>
#save{
position:relative;
right:10px;
}
</style>
<script >
//保存修改
function doSave(){
var bh = "<%=request.getParameter("bh").toString()%>";
var xl = $("#xl").val();
var sds = $("#sds").val();
var zzs = $("#zzs").val();
var fjmqynsrsbh = $("#fjmqynsrsbh").val();
//alert(bh);
if(xl!=null&&xl!=""&&sds!=null&&sds!=""&&zzs!=null&&zzs!=""){
}else{
$.messager.alert('提示', '请将设置信息填写完整!', 'info');
return;
}
$.messager.confirm('提示','确定保存?',function(result){
if(result){
$.messager.progress({
title:'请稍后',
msg:'数据提交中...'
});
$("#targetForm").form("submit",{
url:sy.contextPath + '/base/contract-record!doNotNeedSecurity_update.sy?bh='+bh+"&xl="+encodeURI(encodeURI(xl))+"&sds="+encodeURI(encodeURI(sds))+"&zzs="+encodeURI(encodeURI(zzs))
+"&lxr="+encodeURI(encodeURI(lxr))+"&dh="+encodeURI(encodeURI(dh))+"&fjmqynsrsbh="+encodeURI(encodeURI(fjmqynsrsbh)),
onSubmit: function () {
},
success:function(data){
$.messager.progress('close');
var data = eval('(' + data + ')');
if(data.success){
alert(data.msg);
//$.messager.alert('提示', data.msg, 'info');
parent.$("#mainInfo").datagrid('reload');
parent.dialog.dialog("close");
}else{
$.messager.alert('提示', '设置失败!'+data.msg, 'error');
}
}
});
}
});
}
$(document).ready(function(){
var yxl = "<%=java.net.URLDecoder.decode(request.getParameter("xl").toString(),"UTF-8")%>";
var yzzs = "<%=java.net.URLDecoder.decode(request.getParameter("zzs").toString(),"UTF-8")%>";
var ysds = "<%=java.net.URLDecoder.decode(request.getParameter("sds").toString().toString(),"UTF-8")%>";
var ylxr = "<%=java.net.URLDecoder.decode(request.getParameter("lxr").toString(),"UTF-8")%>";
var ydh = "<%=java.net.URLDecoder.decode(request.getParameter("dh").toString().toString(),"UTF-8")%>";
var ybz = "<%=java.net.URLDecoder.decode(request.getParameter("bz").toString().toString(),"UTF-8")%>";
var yfjmqynsrsbh = "<%=java.net.URLDecoder.decode(request.getParameter("fjmqynsrsbh").toString().toString(),"UTF-8")%>";
//alert(yzzs);
if(yxl!='undefined'){
$("#xl").val(yxl);
}
if(yzzs!='undefined'){
$("#zzs").val(yzzs);
}
if(ysds!='undefined'){
$("#sds").val(ysds);
}
if(ylxr!='undefined'){
$("#lxr").val(ylxr);
}
if(ydh!='undefined'){
$("#dh").val(ydh);
}
if(ybz!='undefined'){
$("#bz").val(ybz);
}
if(yfjmqynsrsbh!='undefined'){
$("#fjmqynsrsbh").val(yfjmqynsrsbh);
}
});
</script>
</head>
<body class="easyui-layout" data-options="fit:true,border:false">
<form id="targetForm" enctype="multipart/form-data" method="post" class="form">
<br />
<fieldset>
<legend>设置</legend>
<table class="table" style="width: 100%;font-size:14px">
<tr>
<th>所得类型(小类)</th>
<td><input id="xl" type="text" name="xl" class="easyui-textbox"/></td>
</tr>
<tr>
<th>扣缴税率(增值税)</th>
<td><input id="zzs" type="text" name="zzs" class="easyui-textbox"/></td>
</tr>
<tr>
<th>扣缴税率(所得税)</th>
<td><input id="sds" type="text" name="sds" class="easyui-textbox"/></td>
</tr>
<tr>
<th>联系人</th>
<td><input id="lxr" type="text" name="lxr" class="easyui-textbox"/></td>
</tr>
<tr>
<th>电话</th>
<td><input id="dh" type="text" name="dh" class="easyui-textbox"/></td>
</tr>
<tr>
<th>备注</th>
<td><input id="bz" type="text" name="bz" class="easyui-textbox"/></td>
</tr>
<tr>
<th></th>
<td><input type="hidden" id="fjmqynsrsbh" type="text" name="fjmqynsrsbh"></input></td>
</tr>
</table>
</fieldset>
<fieldset>
<tr>
<div style="text-align:right">
<td style="text-align:center;width:100%">
<a href="javascript:void(0);" class="easyui-linkbutton" style="display:inline-block" iconCls="icon-save" onclick="doSave();"><span id="save" >保存</span></a>
</td>
</div>
</tr>
</fieldset>
</form>
</body>
</html>
3.更新汇率
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ page import="java.util.UUID"%>
<%@ page import="aisino.reportform.model.base.SessionInfo"%>
<%
UUID uuid = UUID.randomUUID();
SessionInfo sessionInfo = (SessionInfo) session.getAttribute("sessionInfo");
String name=sessionInfo.getUser().getName();
String lx=sessionInfo.getUser().getLx();
%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<%
/* String bt= java.net.URLDecoder.decode(request.getParameter("bt"),"UTF-8"); */
%>
<!DOCTYPE HTML>
<html>
<head>
<jsp:include page="../../../inc.jsp"></jsp:include>
<title>更新汇率</title>
<link href="../../../css/jquery.searchableSelect.css" rel="stylesheet" type="text/css">
<script src="../../../js/jquery.searchableSelect.js"></script>
<style>
.searchable-select-holder{
text-align:left;
}
#save{
position:relative;
right:10px;
}
</style>
<script >
//保存修改
function doSave(){
var hl = $("#hl").val();
var bz = $("#bz option:selected").val();
var bzmc = $("#bz option:selected").text();
//alert(bzmc);
if(bz!=null&&bz!=""&&hl!=null&&hl!=""){
}else{
$.messager.alert('提示', '请将修改信息填写完整!', 'info');
return;
}
$.messager.confirm('提示','确定保存?',function(result){
if(result){
$.messager.progress({
title:'请稍后',
msg:'数据提交中...'
});
$("#targetForm").form("submit",{
url:sy.contextPath + '/base/contract-record!doNotNeedSecurity_updateRate.sy?hl='+hl+"&bz="+encodeURI(encodeURI(bz))+"&bzmc="+encodeURI(encodeURI(bzmc)),
onSubmit: function () {
},
success:function(data){
$.messager.progress('close');
var data = eval('(' + data + ')');
if(data.success){
parent.$("#mainInfo").datagrid('reload');
parent.dialog.dialog("close");
}else{
$.messager.alert('提示', '修改失败!'+data.msg, 'error');
}
}
});
}
});
}
$(document).ready(function(){
$.ajax({
url: sy.contextPath + '/base/contract-record!doNotNeedSecurity_getRate.sy',
type: "post",
dataType: "json",
success: function (result) {
//alert(result.success);
//alert(result.obj.bzList.length);
//alert(result.obj.bzList[0].HBSZ_DM);
//删除所有内容
$("#bz option").remove();
for(var i=0;i<result.obj.bzList.length;i++){
$("#bz").append(
'<option value="'+result.obj.bzList[i].HBSZ_DM+'">'+result.obj.bzList[i].HBMC+'</option>'
);
}
$('select').searchableSelect();
}
});
});
</script>
</head>
<body class="easyui-layout" data-options="fit:true,border:false">
<form id="targetForm" enctype="multipart/form-data" method="post" class="form">
<br />
<fieldset>
<legend>更新汇率</legend>
<table class="table" style="width: 100%;font-size:14px">
<tr>
<th>
<select id="bz" name="bz" style="width:200px;">
</select>
</th>
<td><input id="hl" type="text" name="hl" style="height:30px;"/></td>
</tr>
</table>
</fieldset>
<fieldset>
<br>
<tr>
<div style="text-align:right">
<td style="text-align:center;width:100%">
<a href="javascript:void(0);" class="easyui-linkbutton" style="display:inline-block;height:30px;" iconCls="icon-save" onclick="doSave();"><span id="save" >保存</span></a>
</td>
</div>
</tr>
</fieldset>
</form>
</body>
</html>
4.Java类
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.math.BigDecimal;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
import org.apache.poi.hssf.usermodel.HSSFCellStyle;
import org.apache.poi.hssf.util.CellRangeAddress;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.xssf.usermodel.XSSFCellStyle;
import org.apache.poi.xssf.usermodel.XSSFFont;
import org.apache.poi.xssf.usermodel.XSSFRow;
import org.apache.poi.xssf.usermodel.XSSFSheet;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import org.apache.struts2.ServletActionContext;
import org.apache.struts2.convention.annotation.Action;
import org.apache.struts2.convention.annotation.Namespace;
import org.springframework.beans.factory.annotation.Autowired;
import aisino.reportform.action.BaseAction;
import aisino.reportform.model.base.SessionInfo;
import aisino.reportform.model.base.TF_pd;
import aisino.reportform.model.easyui.Grid;
import aisino.reportform.model.easyui.Json;
import aisino.reportform.service.base.FindDispatchActionServicel;
/**
*
* @Title:ContractRecordAction
* @Description: 合同管理台账控制器
* @author linsa
* @version V1.04
* @date 2018年6月25日
*/
@Namespace("/base")
@Action
public class ContractRecordAction extends BaseAction<TF_pd> {
@Autowired
private FindDispatchActionServicel findDispatchActionServicel;
public void setFindDispatchActionServicel(
FindDispatchActionServicel findDispatchActionServicel) {
this.findDispatchActionServicel = findDispatchActionServicel;
}
//台账列表
public void doNotNeedSessionAndSecurity_findByType() {
/* 首先new一个json类出来,用来保存json数据 */
Grid grid = new Grid();
Json json = new Json();
try {
this.getRequest().setCharacterEncoding("utf-8");
this.getResponse().setCharacterEncoding("utf-8");
/* 得到当前从页面传递回来的类型参数 */
String type = this.getRequest().getParameter("nowType");
String hql = "select a.HTBARQ,a.HTDJBH,a.KJYWRMC,a.KJYWRNSRSBH,a.KJYWLX,a.LXR,a.DH,"
+"a.FJMYWMC,a.FJMYWDZ,a.FJMQYNSRSBH,a.FJMQYMC,a.GJ,a.HTXMMC,a.HTH,a.HTZJK,"
+"a.HTQDRQ,a.BZXX,a.HTZFCS,a.YZFHBMC,a.YZFJE,a.SDLXDL,a.SDLXXL,"
+"a.YNSEZZS,a.YNSESDS,a.YBSEZZS,a.YBSESDS,a.BZMC,"
+"a.HTZXQSSJ,a.HTZXZZSJ,a.SKRKRQSDS,a.SKRKRQZZS,a.KJ_ZZS,a.KJ_SDS,"
+"a.KJZZSSL,a.KJSDSSL,b.HL,a.YZFJE*b.HL ZHRMB from FHMQYDWZFXX a "
+ "LEFT JOIN BZXX b on a.YZFHBSZ_DM=b.BZSZDM";
String sql = "select count(*) from FHMQYDWZFXX";
int number = -1; // 这个是判断查询那种类型的内容
List list = new ArrayList();
long listSize = 0; // 返回页面的大小。
int number1 = Integer.parseInt(this.getRequest().getParameter(
"page")); // 当前页数
int number2 = Integer.parseInt(this.getRequest().getParameter(
"rows")); // 每页大小
if ("bySearch".equals(type)) {
// 根据时间进行查询
String beginTime = this.getRequest().getParameter("beginTime"); // 开始查询
String endTime = this.getRequest().getParameter("endTime"); // 结束时间
// 根据扣缴义务人纳税人识别号或扣缴义务人名称进行查询
String kjnsrsbh = this.getRequest().getParameter("kjnsrsbh"); // 扣缴义务人纳税人识别号
String kjmc = this.getRequest().getParameter("kjmc"); // 扣缴义务人名称
// 根据扣缴义务类型进行查询
String search_type = this.getRequest().getParameter("search_type"); // 扣缴义务类型
hql += " where 1=1";
sql += " where 1=1";
if(beginTime != null && !"".equals(beginTime)){
hql += " and a.HTBARQ >= '" + beginTime.replace("-", "")
+ "'";
sql += " and HTBARQ >= '" + beginTime.replace("-", "")
+ "'";
}
if(endTime != null && !"".equals(endTime)){
hql += " and a.HTBARQ <= '" + endTime.replace("-", "")
+ "'";
sql += " and HTBARQ <= '" + endTime.replace("-", "")
+ "'";
}
if((kjnsrsbh != null && !"".equals(kjnsrsbh))||(kjmc != null && !"".equals(kjmc))){
hql += " and (a.KJYWRNSRSBH = '" + kjnsrsbh
+ "' or a.KJYWRMC = '" +kjmc
+ "')";
sql += " and (KJYWRNSRSBH = '" + kjnsrsbh
+ "' or KJYWRMC = '" +kjmc
+ "')";
}
if(search_type != null && !"".equals(search_type)){
hql += " and a.KJYWLX = '" + search_type
+ "'";
sql += " and KJYWLX = '" + search_type
+ "'";
}
}
hql += " ORDER BY a.HTBARQ asc";
list = findDispatchActionServicel.findBySql(hql, number1, number2);
Long total = findDispatchActionServicel.countBySql(sql);
listSize = list.size();
grid.setRows(list);
grid.setTotal(total);
json.setSuccess(true);
writeJson(grid);
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
BaseAction.LOG.info("合同管理查询列表异常:doNotNeedSessionAndSecurity_findByType 时间:"+new Date());
}
}
//台账导出EXCEL
public void doNotNeedSessionAndSecurity_export(){
String export_flag = getRequest().getParameter("export_flag");
String sql = "select a.HTBARQ,a.HTDJBH,a.KJYWRMC,a.KJYWRNSRSBH,a.KJYWLX,a.LXR,a.DH,"
+"a.FJMYWMC,a.FJMYWDZ,a.FJMQYNSRSBH,a.FJMQYMC,a.GJ,a.HTXMMC,a.HTH,"
+"a.HTZJK,a.HTQDRQ,a.HTZFCS,a.YZFHBMC,a.YZFJE,a.SDLXDL,a.SDLXXL,"
+"a.YNSEZZS,a.YNSESDS,a.YBSEZZS,a.YBSESDS,a.BZXX,a.KJ_ZZS,a.KJ_SDS,"
+"a.HTZXQSSJ,a.HTZXZZSJ,a.SKRKRQSDS,a.SKRKRQZZS,a.BZMC,"
+"a.KJZZSSL,a.KJSDSSL,b.HL,concat(a.YZFJE*b.HL,'') ZHRMB "
+"from FHMQYDWZFXX a LEFT JOIN BZXX b on a.YZFHBSZ_DM=b.BZSZDM ";
switch (export_flag) {
case "1":
// 根据时间进行查询
String beginTime = this.getRequest().getParameter("beginTime"); // 开始查询
String endTime = this.getRequest().getParameter("endTime"); // 结束时间
// 根据扣缴义务人纳税人识别号或扣缴义务人名称进行查询
String kjnsrsbh = this.getRequest().getParameter("kjnsrsbh"); // 扣缴义务人纳税人识别号
String kjmc = this.getRequest().getParameter("kjmc"); // 扣缴义务人名称
// 根据扣缴义务类型进行查询
String search_type = this.getRequest().getParameter("search_type"); // 扣缴义务类型
sql += " where 1=1";
if(beginTime != null && !"".equals(beginTime)){
sql += " and HTBARQ >= '" + beginTime.replace("-", "")
+ "'";
}
if(endTime != null && !"".equals(endTime)){
sql += " and HTBARQ <= '" + endTime.replace("-", "")
+ "'";
}
if((kjnsrsbh != null && !"".equals(kjnsrsbh))||(kjmc != null && !"".equals(kjmc))){
sql += " and (KJYWRNSRSBH = '" + kjnsrsbh
+ "' or KJYWRMC = '" +kjmc
+ "')";
}
if(search_type != null && !"".equals(search_type)){
sql += " and KJYWLX = '" + search_type
+ "'";
}
break;
default:
break;
}
sql += " ORDER BY a.HTBARQ asc";
// 第一步,创建一个webbook,对应一个Excel文件
XSSFWorkbook wb = new XSSFWorkbook();
// 第二步,在webbook中添加一个sheet,对应Excel文件中的sheet
XSSFSheet sheet = wb.createSheet("Sheet1");
// 第三步,在sheet中添加表头第0行,注意老版本poi对Excel的行数列数有限制short
XSSFRow row1 = sheet.createRow((int) 0);
XSSFRow row2 = sheet.createRow((int) 1);
// 第四步,创建单元格,并设置值表头 设置表头居中
/*XSSFCellStyle headerStyle = wb.createCellStyle();
XSSFFont headerFont = wb.createFont(); //标题字体
headerFont.setFontName("宋体");
headerFont.setBoldweight(XSSFFont.BOLDWEIGHT_BOLD);
headerFont.setFontHeightInPoints((short) 12);// 字体大小
headerStyle.setAlignment(XSSFCellStyle.ALIGN_CENTER); // 创建一个居中格式
headerStyle.setVerticalAlignment(XSSFCellStyle.VERTICAL_CENTER);
headerStyle.setFont(headerFont);
sheet.getRow(0).setRowStyle(headerStyle);*/
//sheet.setDefaultColumnWidth(20);//设置列宽
//sheet.setDefaultRowHeight((short)(25*20));//设置行高
short width = 25,height=15*25;
sheet.setDefaultColumnWidth(width);
sheet.setDefaultRowHeight(height);
for(int i=0;i<=37;i++){
if(i<19||i==37){
sheet.addMergedRegion(new CellRangeAddress(0,1,i,i));
}
}
sheet.addMergedRegion(new CellRangeAddress(0,0,19,20));
sheet.addMergedRegion(new CellRangeAddress(0,0,21,24));
sheet.addMergedRegion(new CellRangeAddress(0,0,25,26));
sheet.addMergedRegion(new CellRangeAddress(0,0,27,28));
sheet.addMergedRegion(new CellRangeAddress(0,0,29,30));
sheet.addMergedRegion(new CellRangeAddress(0,0,31,32));
sheet.addMergedRegion(new CellRangeAddress(0,0,33,34));
sheet.addMergedRegion(new CellRangeAddress(0,0,35,36));
XSSFCellStyle style = wb.createCellStyle();
style.setAlignment(HSSFCellStyle.ALIGN_CENTER); // 创建一个居中格式
style.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER);
row1.setRowStyle(style);
row1.createCell(0).setCellValue("序号");
row1.createCell(1).setCellValue("合同备案日期");
row1.createCell(2).setCellValue("扣缴义务人名称");
row1.createCell(3).setCellValue("扣缴义务人纳税人识别号");
row1.createCell(4).setCellValue("扣缴义务类型");
row1.createCell(5).setCellValue("联系人");
row1.createCell(6).setCellValue("电话");
row1.createCell(7).setCellValue("非居民纳税人识别号");
row1.createCell(8).setCellValue("非居民企业名称");
row1.createCell(9).setCellValue("非居民英文企业名称");
row1.createCell(10).setCellValue("非居民英文地址");
row1.createCell(11).setCellValue("国家");
row1.createCell(12).setCellValue("合同项目名称");
row1.createCell(13).setCellValue("合同登记编号");
row1.createCell(14).setCellValue("合同号");
row1.createCell(15).setCellValue("合同签订日期");
row1.createCell(16).setCellValue("合同支付次数");
row1.createCell(17).setCellValue("合同执行起始时间");
row1.createCell(18).setCellValue("合同执行终止时间");
row1.createCell(19).setCellValue("合同总价款");
row1.createCell(20).setCellValue("");
row1.createCell(21).setCellValue("已支付金额(支付备案信息)");
row1.createCell(22).setCellValue("");
row1.createCell(23).setCellValue("");
row1.createCell(24).setCellValue("");
row1.createCell(25).setCellValue("所得类型");
row1.createCell(26).setCellValue("");
row1.createCell(27).setCellValue("应纳税额");
row1.createCell(28).setCellValue("");
row1.createCell(29).setCellValue("应补(退)税额");
row1.createCell(30).setCellValue("");
row1.createCell(31).setCellValue("税款入库日期");
row1.createCell(32).setCellValue("");
row1.createCell(33).setCellValue("扣缴税额");
row1.createCell(34).setCellValue("");
row1.createCell(35).setCellValue("扣缴税率");
row1.createCell(36).setCellValue("");
row1.createCell(37).setCellValue("备注");
row2.createCell(19).setCellValue("币种");
row2.createCell(20).setCellValue("外币金额");
row2.createCell(21).setCellValue("币种");
row2.createCell(22).setCellValue("外币金额");
row2.createCell(23).setCellValue("汇率");
row2.createCell(24).setCellValue("折合人民币");
row2.createCell(25).setCellValue("大类");
row2.createCell(26).setCellValue("明细");
row2.createCell(27).setCellValue("增值税");
row2.createCell(28).setCellValue("所得税");
row2.createCell(29).setCellValue("增值税");
row2.createCell(30).setCellValue("所得税");
row2.createCell(31).setCellValue("增值税");
row2.createCell(32).setCellValue("所得税");
row2.createCell(33).setCellValue("增值税");
row2.createCell(34).setCellValue("所得税");
row2.createCell(35).setCellValue("增值税");
row2.createCell(36).setCellValue("所得税");
List<HashMap> result_list = findDispatchActionServicel.findBySql(sql);
if(result_list!=null&&result_list.size()>0){
for (int j = 0; j < result_list.size(); j++) {
//XSSFRow r = sheet.createRow((int) (j + 2));
Row r = sheet.createRow(j + 2);
r.createCell(0).setCellValue(""+(j + 1));
String HTBARQ = (String) result_list.get(j).get("HTBARQ");
r.createCell(1).setCellValue(HTBARQ);
String KJYWRMC = (String) result_list.get(j).get("KJYWRMC");
r.createCell(2).setCellValue(KJYWRMC);
String KJYWRNSRSBH = (String) result_list.get(j).get("KJYWRNSRSBH");
r.createCell(3).setCellValue(KJYWRNSRSBH);
String KJYWLX = (String) result_list.get(j).get("KJYWLX");
r.createCell(4).setCellValue(KJYWLX);
String LXR = (String) result_list.get(j).get("LXR");
r.createCell(5).setCellValue(LXR);
String DH = (String) result_list.get(j).get("DH");
r.createCell(6).setCellValue(DH);
String FJMQYNSRSBH = (String) result_list.get(j).get("FJMQYNSRSBH");
r.createCell(7).setCellValue(FJMQYNSRSBH);
String FJMQYMC = (String) result_list.get(j).get("FJMQYMC");
r.createCell(8).setCellValue(FJMQYMC);
String FJMYWMC = (String) result_list.get(j).get("FJMYWMC");
r.createCell(9).setCellValue(FJMYWMC);
String FJMYWDZ = (String) result_list.get(j).get("FJMYWDZ");
r.createCell(10).setCellValue(FJMYWDZ);
String GB = (String) result_list.get(j).get("GJ");
r.createCell(11).setCellValue(GB);
String HTXMMC = (String) result_list.get(j).get("HTXMMC");
r.createCell(12).setCellValue(HTXMMC);
String HTDJBH = (String) result_list.get(j).get("HTDJBH");
r.createCell(13).setCellValue(HTDJBH);
String HTH = (String) result_list.get(j).get("HTH");
r.createCell(14).setCellValue(HTH);
String HTQDRQ = (String) result_list.get(j).get("HTQDRQ");
r.createCell(15).setCellValue(HTQDRQ);
String HTZFCS = (String) result_list.get(j).get("HTZFCS");
r.createCell(16).setCellValue(HTZFCS);
String HTZXQSSJ = (String) result_list.get(j).get("HTZXQSSJ");
r.createCell(17).setCellValue(HTZXQSSJ);
String HTZXZZSJ = (String) result_list.get(j).get("HTZXZZSJ");
r.createCell(18).setCellValue(HTZXZZSJ);
String BZMC = (String) result_list.get(j).get("BZMC");
r.createCell(19).setCellValue(BZMC);
String HTZJK = (String) result_list.get(j).get("HTZJK");
r.createCell(20).setCellValue(HTZJK);
String YZFHBMC = (String) result_list.get(j).get("YZFHBMC");
r.createCell(21).setCellValue(YZFHBMC);
String YZFJE = (String) result_list.get(j).get("YZFJE");
r.createCell(22).setCellValue(YZFJE);
String HL = (String) result_list.get(j).get("HL");
r.createCell(23).setCellValue(HL);
String ZHRMB = (String) result_list.get(j).get("ZHRMB");
r.createCell(24).setCellValue(ZHRMB);
String SDLXDL = (String) result_list.get(j).get("SDLXDL");
r.createCell(25).setCellValue(SDLXDL);
String SDLXXL = (String) result_list.get(j).get("SDLXXL");
r.createCell(26).setCellValue(SDLXXL);
String YNSEZZS = (String) result_list.get(j).get("YNSEZZS");
r.createCell(27).setCellValue(YNSEZZS);
String YNSESDS = (String) result_list.get(j).get("YNSESDS");
r.createCell(28).setCellValue(YNSESDS);
String YBSEZZS = (String) result_list.get(j).get("YBSEZZS");
r.createCell(29).setCellValue(YBSEZZS);
String YBSESDS = (String) result_list.get(j).get("YBSESDS");
r.createCell(30).setCellValue(YBSESDS);
String SKRKRQZZS = (String) result_list.get(j).get("SKRKRQZZS");
r.createCell(31).setCellValue(SKRKRQZZS);
String SKRKRQSDS = (String) result_list.get(j).get("SKRKRQSDS");
r.createCell(32).setCellValue(SKRKRQSDS);
String KJZZS = (String) result_list.get(j).get("KJ_ZZS");
r.createCell(33).setCellValue(KJZZS);
String KJSDS = (String) result_list.get(j).get("KJ_SDS");
r.createCell(34).setCellValue(KJSDS);
String KJZZSSL = (String) result_list.get(j).get("KJZZSSL");
r.createCell(35).setCellValue(KJZZSSL);
String KJSDSSL = (String) result_list.get(j).get("KJSDSSL");
r.createCell(36).setCellValue(KJSDSSL);
String BZ = (String) result_list.get(j).get("BZXX");
r.createCell(37).setCellValue(BZ);
}
}
String uploadPath = ServletActionContext.getServletContext()
.getRealPath("upload");
SimpleDateFormat df = new SimpleDateFormat("yyyyMMddhh24mmss");// 设置日期格式
String date = df.format(new Date());// new Date()为获取当前系统时间
String excelName = "";
excelName = date + ".xlsx";
FileOutputStream fout;
try {
fout = new FileOutputStream(uploadPath + "/"
+ excelName);
wb.write(fout);
fout.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
BaseAction.LOG.info("合同管理Excel导出异常(文件找不到):doNotNeedSessionAndSecurity_export 时间:"+new Date());
} catch (IOException e) {
e.printStackTrace();
BaseAction.LOG.info("合同管理Excel导出异常(IO流异常):doNotNeedSessionAndSecurity_export 时间:"+new Date());
}
Json json = new Json();
json.setSuccess(true);
json.setMsg(excelName);
writeJson(json);
}
//更新台账所得类型小类及税率信息并进行预警
public void doNotNeedSecurity_update(){
Json json=new Json();
try {
this.getRequest().setCharacterEncoding("utf-8");
this.getResponse().setCharacterEncoding("utf-8");
HttpServletRequest request = ServletActionContext.getRequest();
HttpSession session = request.getSession();
SessionInfo sessionInfo = (SessionInfo)session.getAttribute("sessionInfo");
String name=sessionInfo.getUser().getName();
System.out.println(name);
String bh = java.net.URLDecoder.decode(getRequest().getParameter("bh").toString(),"UTF-8");
String xl = java.net.URLDecoder.decode(getRequest().getParameter("xl").toString(),"UTF-8");
String sds = java.net.URLDecoder.decode(getRequest().getParameter("sds").toString(),"UTF-8");
String zzs = java.net.URLDecoder.decode(getRequest().getParameter("zzs").toString(),"UTF-8");
String lxr = java.net.URLDecoder.decode(getRequest().getParameter("lxr").toString(),"UTF-8");
String dh = java.net.URLDecoder.decode(getRequest().getParameter("dh").toString(),"UTF-8");
String bz = java.net.URLDecoder.decode(getRequest().getParameter("bz").toString(),"UTF-8");
String fjmqynsrsbh = java.net.URLDecoder.decode(getRequest().getParameter("fjmqynsrsbh").toString(),"UTF-8");
String hql = "update FHMQYDWZFXX set SDLXXL='"+xl+"',KJSDSSL='"
+sds+"',KJZZSSL='"+zzs+"',LXR='"+lxr+"',DH='"+dh+"',BZXX='"+bz+"' where HTDJBH='"+bh+"'";
findDispatchActionServicel.executeSql(hql);
String sql = "select YZFJE,YZFHBSZ_DM,HTZJK,BZ,KJ_ZZS,KJ_SDS,SDSSR,ZZSJSYJ,FJMQYNSRSBH,NSRZTMC,"
+"FJMQYMC,DJXH,SHXYDM,HYMC,JYFW,SWJGMC,SWRYXM from FHMQYDWZFXX where FJMQYNSRSBH='"+fjmqynsrsbh+"'";
List<HashMap> result_list = findDispatchActionServicel.findBySql(sql);
System.out.println(result_list);
String qql = "select HL from BZXX where BZSZDM='"+result_list.get(0).get("YZFHBSZ_DM")+"'";
List<HashMap> result_list1 = findDispatchActionServicel.findBySql(qql);
String wql = "select HL from BZXX where BZSZDM='"+result_list.get(0).get("BZ")+"'";
List<HashMap> result_list2 = findDispatchActionServicel.findBySql(wql);
//处理高精度数据
BigDecimal YZFJE = new BigDecimal("0");
if((String) result_list.get(0).get("YZFJE")!=null&&(String) result_list.get(0).get("YZFJE")!=""){
YZFJE = new BigDecimal(Double.parseDouble((String) result_list.get(0).get("YZFJE")));
}
BigDecimal YZFHL = new BigDecimal("0");
if((String) result_list1.get(0).get("HL")!=null&&(String) result_list1.get(0).get("HL")!=""){
YZFHL = new BigDecimal(Double.parseDouble((String) result_list1.get(0).get("HL")));
}
BigDecimal HTZJK = new BigDecimal("0");
if((String) result_list.get(0).get("HTZJK")!=null&&(String) result_list.get(0).get("HTZJK")!=""){
HTZJK = new BigDecimal(Double.parseDouble((String) result_list.get(0).get("HTZJK")));
}
BigDecimal HTHL = new BigDecimal("0");
if((String) result_list2.get(0).get("HL")!=null&&(String) result_list2.get(0).get("HL")!=""){
HTHL = new BigDecimal(Double.parseDouble((String) result_list2.get(0).get("HL")));
}
BigDecimal KJ_ZZS = new BigDecimal("0");
if((String) result_list.get(0).get("KJ_ZZS")!=null&&(String) result_list.get(0).get("KJ_ZZS")!=""){
KJ_ZZS = new BigDecimal(Double.parseDouble((String) result_list.get(0).get("KJ_ZZS")));
}
BigDecimal KJ_SDS = new BigDecimal("0");
if((String) result_list.get(0).get("KJ_SDS")!=null&&(String) result_list.get(0).get("KJ_SDS")!=""){
KJ_SDS = new BigDecimal(Double.parseDouble((String) result_list.get(0).get("KJ_SDS")));
}
BigDecimal SDSSR = new BigDecimal("0");
if((String) result_list.get(0).get("SDSSR")!=null&&(String) result_list.get(0).get("SDSSR")!=""){
SDSSR = new BigDecimal(Double.parseDouble((String) result_list.get(0).get("SDSSR")));
}
BigDecimal ZZSJSYJ = new BigDecimal("0");
if((String) result_list.get(0).get("ZZSJSYJ")!=null&&(String) result_list.get(0).get("ZZSJSYJ")!=""){
ZZSJSYJ = new BigDecimal(Double.parseDouble((String) result_list.get(0).get("ZZSJSYJ")));
}
String FJMQYNSRSBH = (String) result_list.get(0).get("FJMQYNSRSBH");
String FJMQYMC = (String) result_list.get(0).get("FJMQYMC");
String DJXH = (String) result_list.get(0).get("DJXH");
String SHXYDM = (String) result_list.get(0).get("SHXYDM");
String HYMC = (String) result_list.get(0).get("HYMC");
String JYFW = (String) result_list.get(0).get("JYFW");
String SWJGMC = (String) result_list.get(0).get("SWJGMC");
String SWRYXM = (String) result_list.get(0).get("SWRYXM");
String NSRZTMC = (String) result_list.get(0).get("NSRZTMC");
String msg = "";
/*
* 支付进度预警
*/
if((YZFJE.multiply(YZFHL)).compareTo(HTZJK.multiply(HTHL))==-1){
String aql = "select NSRSBH from FJM_DWZFJDYJ";
List<HashMap> result = findDispatchActionServicel.findBySql(aql);
boolean isHas = true;
if(result!=null&&result.size()>0){
for (int a = 0; a < result.size(); a++) {
String NSRSBH = (String) result.get(a).get("NSRSBH");
if(FJMQYNSRSBH.equals(NSRSBH)){
isHas=false;
break;
}
}
}
String bql = "";
if(isHas){
bql = "insert into FJM_DWZFJDYJ(ID,NSRSBH,DJXH,NSRMC,SHXYDM,NSRZTMC,HYMC,JYFW,SWJGMC,SWRYXM,"
+"ZBLX,ZT,YXBZ,FXRY,PGRY,CREATE_TIME,YWBS,TDYJXX_ONE,TDYJXX_TWO) values(sys_guid(),'"
+FJMQYNSRSBH+"','"+DJXH+"','"+FJMQYMC+"','"+SHXYDM+"','"+NSRZTMC+"','"+HYMC+"','"
+JYFW+"','"+SWJGMC+"','"+SWRYXM+"','BZLX','0','0','"
+name+"','"+name+"',sysdate,'0','"+(YZFJE.multiply(YZFHL)).toString()+"','"+(HTZJK.multiply(HTHL)).toString()+"')";
}else{
bql = "update FJM_DWZFJDYJ set TDYJXX_ONE='"+(YZFJE.multiply(YZFHL)).toString()+"',TDYJXX_TWO='"+(HTZJK.multiply(HTHL)).toString()+"'where NSRSBH='"+FJMQYNSRSBH+"'";
}
findDispatchActionServicel.executeSql(bql);
msg=msg+"请前往对外支付支付进度预警查看!\r";
}else{
String aql = "select NSRSBH from FJM_DWZFJDYJ";
List<HashMap> result = findDispatchActionServicel.findBySql(aql);
boolean isHas = true;
if(result!=null&&result.size()>0){
for (int a = 0; a < result.size(); a++) {
String NSRSBH = (String) result.get(a).get("NSRSBH");
if(FJMQYNSRSBH.equals(NSRSBH)){
isHas=false;
break;
}
}
}
String bql = "";
if(!isHas){
bql = "delete from FJM_DWZFJDYJ where NSRSBH='"+FJMQYNSRSBH+"'";
findDispatchActionServicel.executeSql(bql);
}
}
/*
* 扣缴所得税未扣缴增值税预警
*/
if(KJ_SDS.compareTo(new BigDecimal("0"))==1&&KJ_ZZS.compareTo(new BigDecimal("0"))!=1){
String aql = "select NSRSBH from FJM_DWZFWKJZZSYJ";
List<HashMap> result = findDispatchActionServicel.findBySql(aql);
boolean isHas = true;
if(result!=null&&result.size()>0){
for (int a = 0; a < result.size(); a++) {
String NSRSBH = (String) result.get(a).get("NSRSBH");
if(FJMQYNSRSBH.equals(NSRSBH)){
isHas=false;
break;
}
}
}
String bql = "";
if(isHas){
bql = "insert into FJM_DWZFWKJZZSYJ(ID,NSRSBH,DJXH,NSRMC,SHXYDM,NSRZTMC,HYMC,JYFW,SWJGMC,SWRYXM,"
+"ZBLX,ZT,YXBZ,FXRY,PGRY,CREATE_TIME,YWBS,TDYJXX_ONE,TDYJXX_TWO) values(sys_guid(),'"
+FJMQYNSRSBH+"','"+DJXH+"','"+FJMQYMC+"','"+SHXYDM+"','"+NSRZTMC+"','"+HYMC+"','"
+JYFW+"','"+SWJGMC+"','"+SWRYXM+"','BZLX','0','0','"
+name+"','"+name+"',sysdate,'0','"+KJ_ZZS.toString()+"','"+KJ_SDS.toString()+"')";
}else{
bql = "update FJM_DWZFWKJZZSYJ set TDYJXX_ONE='"+KJ_ZZS.toString()+"',TDYJXX_TWO='"+KJ_SDS.toString()+"'where NSRSBH='"+FJMQYNSRSBH+"'";
}
findDispatchActionServicel.executeSql(bql);
msg=msg+"请前往对外支付扣缴所得税未扣缴增值税预警查看!\r";
}else{
String aql = "select NSRSBH from FJM_DWZFWKJZZSYJ";
List<HashMap> result = findDispatchActionServicel.findBySql(aql);
boolean isHas = true;
if(result!=null&&result.size()>0){
for (int a = 0; a < result.size(); a++) {
String NSRSBH = (String) result.get(a).get("NSRSBH");
if(FJMQYNSRSBH.equals(NSRSBH)){
isHas=false;
break;
}
}
}
String bql = "";
if(!isHas){
bql = "delete from FJM_DWZFWKJZZSYJ where NSRSBH='"+FJMQYNSRSBH+"'";
findDispatchActionServicel.executeSql(bql);
}
}
/*
* 增值税扣缴金额少于支付金额预警
*/
if(KJ_ZZS.compareTo(ZZSJSYJ)==-1){
String aql = "select NSRSBH from FJM_DWZFZZSSKJYJ";
List<HashMap> result = findDispatchActionServicel.findBySql(aql);
boolean isHas = true;
if(result!=null&&result.size()>0){
for (int a = 0; a < result.size(); a++) {
String NSRSBH = (String) result.get(a).get("NSRSBH");
if(FJMQYNSRSBH.equals(NSRSBH)){
isHas=false;
break;
}
}
}
String bql = "";
if(isHas){
bql = "insert into FJM_DWZFZZSSKJYJ(ID,NSRSBH,DJXH,NSRMC,SHXYDM,NSRZTMC,HYMC,JYFW,SWJGMC,SWRYXM,"
+"ZBLX,ZT,YXBZ,FXRY,PGRY,CREATE_TIME,YWBS,TDYJXX_ONE,TDYJXX_TWO) values(sys_guid(),'"
+FJMQYNSRSBH+"','"+DJXH+"','"+FJMQYMC+"','"+SHXYDM+"','"+NSRZTMC+"','"+HYMC+"','"
+JYFW+"','"+SWJGMC+"','"+SWRYXM+"','BZLX','0','0','"
+name+"','"+name+"',sysdate,'0','"+KJ_ZZS.toString()+"','"+ZZSJSYJ.toString()+"')";
}else{
bql = "update FJM_DWZFZZSSKJYJ set TDYJXX_ONE='"+KJ_ZZS.toString()+"',TDYJXX_TWO='"+ZZSJSYJ.toString()+"'where NSRSBH='"+FJMQYNSRSBH+"'";
}
findDispatchActionServicel.executeSql(bql);
msg=msg+"请前往对外支付增值税扣缴金额少于支付金额预警查看!\r";
}else{
String aql = "select NSRSBH from FJM_DWZFZZSSKJYJ";
List<HashMap> result = findDispatchActionServicel.findBySql(aql);
boolean isHas = true;
if(result!=null&&result.size()>0){
for (int a = 0; a < result.size(); a++) {
String NSRSBH = (String) result.get(a).get("NSRSBH");
if(FJMQYNSRSBH.equals(NSRSBH)){
isHas=false;
break;
}
}
}
String bql = "";
if(!isHas){
bql = "delete from FJM_DWZFZZSSKJYJ where NSRSBH='"+FJMQYNSRSBH+"'";
findDispatchActionServicel.executeSql(bql);
}
}
/*
* 所得税扣缴金额少于支付金额预警
*/
if(KJ_SDS.compareTo(SDSSR)==-1){
String aql = "select NSRSBH from FJM_DWZFSDSSKJYJ";
List<HashMap> result = findDispatchActionServicel.findBySql(aql);
boolean isHas = true;
if(result!=null&&result.size()>0){
for (int a = 0; a < result.size(); a++) {
String NSRSBH = (String) result.get(a).get("NSRSBH");
if(FJMQYNSRSBH.equals(NSRSBH)){
isHas=false;
break;
}
}
}
String bql = "";
if(isHas){
bql = "insert into FJM_DWZFSDSSKJYJ(ID,NSRSBH,DJXH,NSRMC,SHXYDM,NSRZTMC,HYMC,JYFW,SWJGMC,SWRYXM,"
+"ZBLX,ZT,YXBZ,FXRY,PGRY,CREATE_TIME,YWBS,TDYJXX_ONE,TDYJXX_TWO) values(sys_guid(),'"
+FJMQYNSRSBH+"','"+DJXH+"','"+FJMQYMC+"','"+SHXYDM+"','"+NSRZTMC+"','"+HYMC+"','"
+JYFW+"','"+SWJGMC+"','"+SWRYXM+"','BZLX','0','0','"
+name+"','"+name+"',sysdate,'0','"+KJ_SDS.toString()+"','"+SDSSR.toString()+"')";
}else{
bql = "update FJM_DWZFSDSSKJYJ set TDYJXX_ONE='"+KJ_SDS.toString()+"',TDYJXX_TWO='"+SDSSR.toString()+"'where NSRSBH='"+FJMQYNSRSBH+"'";
}
findDispatchActionServicel.executeSql(bql);
msg=msg+"请前往对外支付所得税扣缴金额少于支付金额预警查看!";
}else{
String aql = "select NSRSBH from FJM_DWZFSDSSKJYJ";
List<HashMap> result = findDispatchActionServicel.findBySql(aql);
boolean isHas = true;
if(result!=null&&result.size()>0){
for (int a = 0; a < result.size(); a++) {
String NSRSBH = (String) result.get(a).get("NSRSBH");
if(FJMQYNSRSBH.equals(NSRSBH)){
isHas=false;
break;
}
}
}
String bql = "";
if(!isHas){
bql = "delete from FJM_DWZFSDSSKJYJ where NSRSBH='"+FJMQYNSRSBH+"'";
findDispatchActionServicel.executeSql(bql);
}
}
json.setMsg(msg);
json.setSuccess(true);
} catch (UnsupportedEncodingException e) {
json.setSuccess(false);
e.printStackTrace();
BaseAction.LOG.info("合同管理更新信息并进行预警异常:doNotNeedSecurity_update 时间:"+new Date());
}
writeJson(json);
}
//获取币种列表
public void doNotNeedSecurity_getRate(){
Json json=new Json();
String sql = "select HBSZ_DM,HBMC from HX_DM_QG.DM_GY_HB@CDSJFF";
List<HashMap> bzList = findDispatchActionServicel.findBySql(sql);
/*List<HashMap> bzList = new ArrayList<HashMap>();
HashMap map1 = new HashMap();
map1.put("HBSZ_DM", "840");
map1.put("HBMC", "美元");
HashMap map2 = new HashMap();
map2.put("HBSZ_DM", "978");
map2.put("HBMC", "欧元");
bzList.add(map1);
bzList.add(map2);*/
//返回json到前端
Map<String, Object> map = new HashMap<String, Object>();
map.put("bzList", bzList);
json.setObj(map);
json.setSuccess(true);
writeJson(json);
}
//更新台账汇率
public void doNotNeedSecurity_updateRate(){
Json json=new Json();
try {
this.getRequest().setCharacterEncoding("utf-8");
this.getResponse().setCharacterEncoding("utf-8");
String hl = java.net.URLDecoder.decode(getRequest().getParameter("hl").toString(),"UTF-8");
String bz = java.net.URLDecoder.decode(getRequest().getParameter("bz").toString(),"UTF-8");
String bzmc = java.net.URLDecoder.decode(getRequest().getParameter("bzmc").toString(),"UTF-8");
String sql = "select BZSZDM from BZXX";
List<HashMap> result_list = findDispatchActionServicel.findBySql(sql);
boolean isHas = true;
if(result_list!=null&&result_list.size()>0){
for (int j = 0; j < result_list.size(); j++) {
String BZ = (String) result_list.get(j).get("BZSZDM");
if(bz.equals(BZ)){
isHas=false;
break;
}
}
}
String hql = "";
if(isHas){
hql = "insert into BZXX(BZSZDM,BZMC,HL) values('"
+bz+"','"+bzmc+"','"+hl+"')";
}else{
hql = "update BZXX set hl='"+hl+"'where BZSZDM='"+bz+"'";
}
findDispatchActionServicel.executeSql(hql);
json.setSuccess(true);
} catch (Exception e) {
json.setSuccess(false);
e.printStackTrace();
BaseAction.LOG.info("合同管理更新汇率:doNotNeedSecurity_updateRate 时间:"+new Date());
}
writeJson(json);
}
//计算应补(退)税额合计
public void doNotNeedSecurity_compute(){
Json json=new Json();
try {
this.getRequest().setCharacterEncoding("utf-8");
this.getResponse().setCharacterEncoding("utf-8");
String export_flag = getRequest().getParameter("export_flag");
String sql = "select sum(YBSESDS) ZYBSESDS,sum(YBSEZZS) ZYBSEZZS from FHMQYDWZFXX";
switch (export_flag) {
case "1":
// 根据时间进行查询
String beginTime = this.getRequest().getParameter("beginTime"); // 开始查询
String endTime = this.getRequest().getParameter("endTime"); // 结束时间
// 根据扣缴义务人纳税人识别号或扣缴义务人名称进行查询
String kjnsrsbh = this.getRequest().getParameter("kjnsrsbh"); // 扣缴义务人纳税人识别号
String kjmc = this.getRequest().getParameter("kjmc"); // 扣缴义务人名称
// 根据扣缴义务类型进行查询
String search_type = this.getRequest().getParameter("search_type"); // 扣缴义务类型
sql += " where 1=1";
if(beginTime != null && !"".equals(beginTime)){
sql += " and HTBARQ >= '" + beginTime.replace("-", "")
+ "'";
}
if(endTime != null && !"".equals(endTime)){
sql += " and HTBARQ <= '" + endTime.replace("-", "")
+ "'";
}
if((kjnsrsbh != null && !"".equals(kjnsrsbh))||(kjmc != null && !"".equals(kjmc))){
sql += " and (KJYWRNSRSBH = '" + kjnsrsbh
+ "' or KJYWRMC = '" +kjmc
+ "')";
}
if(search_type != null && !"".equals(search_type)){
sql += " and KJYWLX = '" + search_type
+ "'";
}
break;
default:
break;
}
List<HashMap> compute_list = findDispatchActionServicel.findBySql(sql);
Map<String, Object> map = new HashMap<String, Object>();
map.put("compute_list", compute_list);
json.setObj(map);
json.setSuccess(true);
json.setObj(map);
} catch (Exception e) {
json.setSuccess(false);
e.printStackTrace();
BaseAction.LOG.info("合同管理计算应补(退)税额合计:doNotNeedSecurity_compute 时间:"+new Date());
}
writeJson(json);
}
}
5.效果图