黑名单信息管理修改

master
白美平 9 months ago
parent e1642a6269
commit ea49e1fed9

@ -270,6 +270,7 @@
<include>logback-spring.xml</include>
<include>static/**</include>
<include>excel/**</include>
<include>blackListFile/**</include>
<include>META-INF/spring.factories</include>
</includes>
</resource>

@ -1,6 +1,7 @@
package com.nmgs.controller;
import cn.hutool.core.io.FileUtil;
import cn.hutool.poi.excel.ExcelUtil;
import com.alibaba.fastjson.JSONObject;
import com.nmgs.config.ResultData;
import com.nmgs.service.IBlackBatchImportSerive;
@ -27,10 +28,10 @@ import java.util.Date;
@Api(tags = "黑名单批量导入")
public class BlackBatchImportController {
public IBlackBatchImportSerive iWhiteBatchImportSerive;
public IBlackBatchImportSerive iBlackBatchImportSerive;
@Autowired
public void setiWhiteBatchImportSerive(IBlackBatchImportSerive iWhiteBatchImportSerive) {
this.iWhiteBatchImportSerive = iWhiteBatchImportSerive;
public void setiBlackBatchImportSerive(IBlackBatchImportSerive iBlackBatchImportSerive) {
this.iBlackBatchImportSerive = iBlackBatchImportSerive;
}
//实现Spring Boot 的文件下载功能,映射网址为/download
@ -110,7 +111,7 @@ public class BlackBatchImportController {
*/
@PostMapping("/importExcel")
public ResultData<JSONObject> importExcel(@RequestBody Object params ) throws Exception {
JSONObject ret=iWhiteBatchImportSerive.insertData(params);
JSONObject ret=iBlackBatchImportSerive.insertData(params);
return ResultData.success("",ret,1);
}
@PostMapping("/uploadFile")
@ -119,29 +120,26 @@ public class BlackBatchImportController {
response.setContentType("application/octet-stream");
// 下载文件能正常显示中文
response.setHeader("Content-Disposition", "attachment;filename=" + URLEncoder.encode(file.getName(), "UTF-8"));
//当前项目的目录
SimpleDateFormat sdf=new SimpleDateFormat("yyyyMMdd");
String fileDirName = sdf.format(new Date());
String folderPath = com.nmgs.util.PathUtil.webappsPath +File.separator+fileDirName;
folderPath=folderPath.replaceAll("webapps","blackListFile");
//每天创建一个文件目录
SimpleDateFormat sdfs=new SimpleDateFormat("hhmmss");
String afterSuffix = sdfs.format(new Date());
String originalFilename = file.getOriginalFilename();
//以.进行分割文件名称
String[] split = originalFilename.split("\\.");
File fileTemp=new File(folderPath);
//当前项目的目录,并且每天创建一个文件目录
String fileP= PubTools.getResourcePath();
File fileTemp=new File(fileP);
if (!fileTemp.exists())
{
fileTemp.mkdirs();
}
//生成新的文件名称
String fileName="";
if (PubTools.isEmpty(file)){
SimpleDateFormat sdfs=new SimpleDateFormat("yyyyMMddhhmmss");
String afterSuffix = sdfs.format(new Date());
String originalFilename = file.getOriginalFilename();
//以.进行分割文件名称
String[] split = originalFilename.split("\\.");
if (!PubTools.isEmpty(file)){
try
{
fileName = split[0]+afterSuffix+"."+split[1];
File fileDocument=new File(folderPath,fileName);
File fileExists=new File(folderPath+"//"+fileName);
File fileDocument=new File(fileP,fileName);
File fileExists=new File(fileP+File.separator+fileName);
if(fileExists.exists()){
fileExists.delete();
}else{
@ -156,4 +154,5 @@ public class BlackBatchImportController {
}
return ResultData.success(1,fileName);
}
}

@ -30,7 +30,7 @@ public class ExportData {
private ExcelDateImpl excelDateImpl;
@GetMapping(value="/exportHangList")
@ApiOperation(httpMethod="GET",value = "名单数据导出")
@ApiOperation(httpMethod="GET",value = "名单数据导出")
@OperationLogDesc(module = "黑名单管理",events = "黑名单数据导出")
public void exportDivOutPortGroadList(String paramsData,@RequestBody(required = false) Object req,HttpServletResponse response) throws SQLException {
try {

@ -34,8 +34,10 @@ public class HangController {
@ApiOperation(httpMethod="POST",value="查询分页白名单数据")
public Object getListByPage(HttpServletRequest request, @RequestBody(required = false) Map<String, Object> req) throws SQLException {
Page<HangTable> whiteCarnoListList =null;
String totalCash ="0";
try{
whiteCarnoListList = iHangSerive.getHangTableByPage(req);
totalCash = iHangSerive.getTotalCash(req);
if (PubTools.isEmpty(whiteCarnoListList)) {
return ResultData.fail(-1,"数据查询失败");
}
@ -46,6 +48,7 @@ public class HangController {
}
return ResultData.fail(-1,"数据查询失败==>"+throwableStr);
}
whiteCarnoListList.setCountId(totalCash);
return whiteCarnoListList;
}

@ -55,5 +55,7 @@ public class HangTable {
private String jtflagName;
@TableField(exist = false)
private String apname;
@TableField(exist = false)
private String isOverTrace;//是否超过追缴日期DT -当前日期天数 >365*2 ,则已过追缴日期
}

@ -12,9 +12,10 @@ import java.util.Map;
@Mapper
public interface HangTableMapper extends BaseMapper<HangTable> {
Page<HangTable> getHangByPage(Page<HangTable> page, @Param("params") Map<String, Object> params);
int delDataBatch(@Param("ids") List<String> ids);
int delDataBatch(@Param("params") Map<String, Object> params);
int updateById(@Param("params") HangTable params);
List<HangTable> getHangList(@Param("params") Map<String, Object> params);
public List<HangTable> getHangMaxVarnoBySql(@Param("params") Map<String, Object> params);
public int publishVersion(@Param("params") Map<String, Object> params);
public String getTotalCash(@Param("params") Map<String, Object> params);
}

@ -10,6 +10,18 @@
t.PLATECOLOR,t.VERNO,t.CASH,t.TYPE,t.REPORTROADNO,t.REPORTSTANO,
t.JTFLAG,ht.text as cardtpName,tt.TEXT as typeName,rta.roadname as reportroadnoName,
nta.staname as reportstanoName,(case when t.JTFLAG=1 THEN '是' else '否' end) As jtflagName
<if test="params.DBTYPE ==1">
,(case when t.DT&lt; dateadd(day,0,#{params.CURRENTWILLDATE}) THEN 'Y' else 'N' end) AS isOverTrace
</if>
<if test="params.DBTYPE ==2">
,(case when t.DT&lt; to_Date(#{params.CURRENTWILLDATE},'YYYY-MM-DD HH24:mi:ss') THEN 'Y' else 'N' end) AS isOverTrace
</if>
<if test="params.DBTYPE ==3">
,(case when t.DT&lt; to_Date(#{params.CURRENTWILLDATE},'YYYY-MM-DD HH24:mi:ss') THEN 'Y' else 'N' end) AS isOverTrace
</if>
<if test="params.DBTYPE ==4">
,(case when t.DT&lt; STR_TO_DATE(#{params.CURRENTWILLDATE},'%Y-%m-%d %H:%k:%s') THEN 'Y' else 'N' end) AS isOverTrace
</if>
FROM HANG_TABLE t
left join ROAD_TABLE rta on(t.REPORTROADNO = rta.roadno)
left join hangtp_text ht on(t.CARDTP = ht.ID)
@ -103,6 +115,48 @@
AND t.BEGDATE &lt;= STR_TO_DATE(#{params.querybegdateE}, '%Y-%m-%d %H:%k:%s')
</if>
</if>
<if test="params.WILLDATE!= null and params.WILLDATE!= ''">
<if test="params.DBTYPE == 1">
<!-- 已过追缴期-->
<if test="params.SPROMPOTY==1">
AND t.DT &lt; dateadd(day,0,#{params.WILLDATE})
</if>
<!-- 未过追缴期-->
<if test="params.SPROMPOTY==2">
AND t.DT >=dateadd(day,0,#{params.WILLDATE})
</if>
</if>
<if test="params.DBTYPE == 2">
<!-- 已过追缴期-->
<if test="params.SPROMPOTY==1">
AND t.DT &lt; TO_DATE(#{params.WILLDATE}, 'YYYY-MM-DD HH24:mi:ss')
</if>
<!-- 未过追缴期-->
<if test="params.SPROMPOTY==2">
AND t.DT >= TO_DATE(#{params.WILLDATE}, 'YYYY-MM-DD HH24:mi:ss')
</if>
</if>
<if test="params.DBTYPE == 3">
<!-- 已过追缴期-->
<if test="params.SPROMPOTY==1">
AND t.DT &lt;= TO_DATE(#{params.WILLDATE}, 'YYYY-MM-DD HH24:mi:ss')
</if>
<!-- 未过追缴期-->
<if test="params.SPROMPOTY==2">
AND t.DT >= TO_DATE(#{params.WILLDATE}, 'YYYY-MM-DD HH24:mi:ss')
</if>
</if>
<if test="params.DBTYPE == 4">
<!-- 已过追缴期-->
<if test="params.SPROMPOTY==1">
AND t.DT &lt;= STR_TO_DATE(#{params.WILLDATE}, '%Y-%m-%d %H:%k:%s')
</if>
<!-- 未过追缴期-->
<if test="params.SPROMPOTY==2">
AND t.DT >= STR_TO_DATE(#{params.WILLDATE}, '%Y-%m-%d %H:%k:%s')
</if>
</if>
</if>
<if test="params.SROADNO != null and params.SROADNO != ''">
AND t.REPORTROADNO = #{params.SROADNO}
</if>
@ -171,10 +225,7 @@
</update>
<delete id="delDataBatch">
DELETE FROM HANG_TABLE WHERE ID IN
<foreach item="str" collection="ids" open="(" separator="," close=")">
#{str}
</foreach>
DELETE FROM HANG_TABLE t WHERE t.CARDID =#{params.cardid} AND t.cardtp=#{params.cardtp}
</delete>
<select id="getHangList" parameterType="java.util.HashMap" resultType="com.nmgs.entity.HangTable">
select
@ -182,6 +233,21 @@
t.PLATECOLOR,t.VERNO,t.CASH,t.TYPE,t.REPORTROADNO,t.REPORTSTANO,
t.JTFLAG,ht.text as cardtpName,tt.TEXT as typeName,rta.roadname as reportroadnoName,
nta.staname as reportstanoName,(case when t.JTFLAG=1 THEN '是' else '否' end) As jtflagName
<if test="params.DBTYPE ==1">
,(case when t.DT&lt; dateadd(day,0,#{params.CURRENTWILLDATE}) THEN 'Y' else 'N' end) AS isOverTrace
</if>
<if test="params.DBTYPE ==2">
,(case
when t.DT&lt; to_Date(#{params.CURRENTWILLDATE},'YYYY-MM-DD HH24:mi:ss') THEN 'Y' else 'N' end) AS isOverTrace
</if>
<if test="params.DBTYPE ==3">
,(case
when t.DT&lt; to_Date(#{params.CURRENTWILLDATE},'YYYY-MM-DD HH24:mi:ss') THEN 'Y' else 'N' end) AS isOverTrace
</if>
<if test="params.DBTYPE ==4">
,(case
when t.DT&lt; STR_TO_DATE(#{params.CURRENTWILLDATE},'%Y-%m-%d %H:%k:%s') THEN 'Y' else 'N' end) AS isOverTrace
</if>
FROM HANG_TABLE t
left join ROAD_TABLE rta on(t.REPORTROADNO = rta.roadno)
left join hangtp_text ht on(t.CARDTP = ht.ID)
@ -275,6 +341,209 @@
AND t.BEGDATE &lt;= STR_TO_DATE(#{params.querybegdateE}, '%Y-%m-%d %H:%k:%s')
</if>
</if>
<if test="params.WILLDATE!= null and params.WILLDATE!= ''">
<if test="params.DBTYPE == 1">
<!-- 已过追缴期-->
<if test="params.SPROMPOTY==1">
AND t.DT &lt; dateadd(day,0,#{params.WILLDATE})
</if>
<!-- 未过追缴期-->
<if test="params.SPROMPOTY==2">
AND t.DT >=dateadd(day,0,#{params.WILLDATE})
</if>
</if>
<if test="params.DBTYPE == 2">
<!-- 已过追缴期-->
<if test="params.SPROMPOTY==1">
AND t.DT &lt; TO_DATE(#{params.WILLDATE}, 'YYYY-MM-DD HH24:mi:ss')
</if>
<!-- 未过追缴期-->
<if test="params.SPROMPOTY==2">
AND t.DT >= TO_DATE(#{params.WILLDATE}, 'YYYY-MM-DD HH24:mi:ss')
</if>
</if>
<if test="params.DBTYPE == 3">
<!-- 已过追缴期-->
<if test="params.SPROMPOTY==1">
AND t.DT &lt;= TO_DATE(#{params.WILLDATE}, 'YYYY-MM-DD HH24:mi:ss')
</if>
<!-- 未过追缴期-->
<if test="params.SPROMPOTY==2">
AND t.DT >= TO_DATE(#{params.WILLDATE}, 'YYYY-MM-DD HH24:mi:ss')
</if>
</if>
<if test="params.DBTYPE == 4">
<!-- 已过追缴期-->
<if test="params.SPROMPOTY==1">
AND t.DT &lt;= STR_TO_DATE(#{params.WILLDATE}, '%Y-%m-%d %H:%k:%s')
</if>
<!-- 未过追缴期-->
<if test="params.SPROMPOTY==2">
AND t.DT >= STR_TO_DATE(#{params.WILLDATE}, '%Y-%m-%d %H:%k:%s')
</if>
</if>
</if>
<if test="params.SROADNO != null and params.SROADNO != ''">
AND t.REPORTROADNO = #{params.SROADNO}
</if>
<if test="params.SSTANO != null and params.SSTANO != ''">
AND t.REPORTSTANO = #{params.SSTANO}
</if>
<if test="params.SCARDID != null and params.SCARDID != ''">
AND t.CARDID like '%'|| #{params.SCARDID} || '%'
</if>
<if test="params.SCARDTP != null and params.SCARDTP != ''">
AND t.CARDTP = #{params.SCARDTP}
</if>
<if test="params.STYPE != null and params.STYPE != ''">
AND t.TYPE = #{params.STYPE}
</if>
<if test="params.SJTFLAG != null and params.SJTFLAG != ''">
AND t.JTFLAG = #{params.SJTFLAG}
</if>
<if test="params.SPLATECOLOR != null and params.SPLATECOLOR != ''">
AND t.PLATECOLOR = #{params.SPLATECOLOR}
</if>
</where>
</select>
<select id="getTotalCash" parameterType="java.util.HashMap" resultType="string">
select
sum(t.cash)||'' as totalCash
FROM HANG_TABLE t
left join ROAD_TABLE rta on(t.REPORTROADNO = rta.roadno)
left join hangtp_text ht on(t.CARDTP = ht.ID)
left join TYPE_TEXT tt on(t.TYPE = tt.value)
left join NAME_TABLE nta on(t.REPORTSTANO = nta.STANO)
<where>
<if test="params.id != null and params.id != ''">
AND t.id = #{params.id}
</if>
<if test="params.queryCreateTimeS!= null and params.queryCreateTimeS!= ''">
<if test="params.DBTYPE == 1">
AND t.DT >= dateadd(day,0,#{params.queryCreateTimeS})
</if>
<if test="params.DBTYPE == 2">
AND t.DT >= TO_DATE(#{params.queryCreateTimeS}, 'YYYY-MM-DD HH24:mi:ss')
</if>
<if test="params.DBTYPE == 3">
AND t.DT >= TO_DATE(#{params.queryCreateTimeS}, 'YYYY-MM-DD HH24:mi:ss')
</if>
<if test="params.DBTYPE == 4">
AND t.DT >= STR_TO_DATE(#{params.queryCreateTimeS}, '%Y-%m-%d %H:%k:%s')
</if>
</if>
<if test="params.queryCreateTimeE!= null and params.queryCreateTimeE!= ''">
<if test="params.DBTYPE == 1">
AND t.DT &lt;= dateadd(day,0,#{params.queryCreateTimeE})
</if>
<if test="params.DBTYPE == 2">
AND t.DT &lt;= TO_DATE(#{params.queryCreateTimeE}, 'YYYY-MM-DD HH24:mi:ss')
</if>
<if test="params.DBTYPE == 3">
AND t.DT &lt;= TO_DATE(#{params.queryCreateTimeE}, 'YYYY-MM-DD HH24:mi:ss')
</if>
<if test="params.DBTYPE == 4">
AND t.DT &lt;= STR_TO_DATE(#{params.queryCreateTimeE}, '%Y-%m-%d %H:%k:%s')
</if>
</if>
<if test="params.queryrptimeS!= null and params.queryrptimeS!= ''">
<if test="params.DBTYPE == 1">
AND t.RPTIME >= dateadd(day,0,#{params.queryrptimeS})
</if>
<if test="params.DBTYPE == 2">
AND t.RPTIME >= TO_DATE(#{params.queryrptimeS}, 'YYYY-MM-DD HH24:mi:ss')
</if>
<if test="params.DBTYPE == 3">
AND t.RPTIME >= TO_DATE(#{params.queryrptimeS}, 'YYYY-MM-DD HH24:mi:ss')
</if>
<if test="params.DBTYPE == 4">
AND t.RPTIME >= STR_TO_DATE(#{params.queryrptimeS}, '%Y-%m-%d %H:%k:%s')
</if>
</if>
<if test="params.queryrptimeE!= null and params.queryrptimeE!= ''">
<if test="params.DBTYPE == 1">
AND t.RPTIME &lt;= dateadd(day,0,#{params.queryrptimeE})
</if>
<if test="params.DBTYPE == 2">
AND t.RPTIME &lt;= TO_DATE(#{params.queryrptimeE}, 'YYYY-MM-DD HH24:mi:ss')
</if>
<if test="params.DBTYPE == 3">
AND t.RPTIME &lt;= TO_DATE(#{params.queryrptimeE}, 'YYYY-MM-DD HH24:mi:ss')
</if>
<if test="params.DBTYPE == 4">
AND t.RPTIME &lt;= STR_TO_DATE(#{params.queryrptimeE}, '%Y-%m-%d %H:%k:%s')
</if>
</if>
<if test="params.querybegdateS!= null and params.querybegdateS!= ''">
<if test="params.DBTYPE == 1">
AND t.BEGDATE >= dateadd(day,0,#{params.querybegdateS})
</if>
<if test="params.DBTYPE == 2">
AND t.BEGDATE >= TO_DATE(#{params.querybegdateS}, 'YYYY-MM-DD HH24:mi:ss')
</if>
<if test="params.DBTYPE == 3">
AND t.BEGDATE >= TO_DATE(#{params.querybegdateS}, 'YYYY-MM-DD HH24:mi:ss')
</if>
<if test="params.DBTYPE == 4">
AND t.BEGDATE >= STR_TO_DATE(#{params.querybegdateS}, '%Y-%m-%d %H:%k:%s')
</if>
</if>
<if test="params.querybegdateE!= null and params.querybegdateE!= ''">
<if test="params.DBTYPE == 1">
AND t.BEGDATE &lt;= dateadd(day,0,#{params.querybegdateE})
</if>
<if test="params.DBTYPE == 2">
AND t.BEGDATE &lt;= TO_DATE(#{params.querybegdateE}, 'YYYY-MM-DD HH24:mi:ss')
</if>
<if test="params.DBTYPE == 3">
AND t.BEGDATE &lt;= TO_DATE(#{params.querybegdateE}, 'YYYY-MM-DD HH24:mi:ss')
</if>
<if test="params.DBTYPE == 4">
AND t.BEGDATE &lt;= STR_TO_DATE(#{params.querybegdateE}, '%Y-%m-%d %H:%k:%s')
</if>
</if>
<if test="params.WILLDATE!= null and params.WILLDATE!= ''">
<if test="params.DBTYPE == 1">
<!-- 已过追缴期-->
<if test="params.SPROMPOTY==1">
AND t.DT &lt; dateadd(day,0,#{params.WILLDATE})
</if>
<!-- 未过追缴期-->
<if test="params.SPROMPOTY==2">
AND t.DT >=dateadd(day,0,#{params.WILLDATE})
</if>
</if>
<if test="params.DBTYPE == 2">
<!-- 已过追缴期-->
<if test="params.SPROMPOTY==1">
AND t.DT &lt; TO_DATE(#{params.WILLDATE}, 'YYYY-MM-DD HH24:mi:ss')
</if>
<!-- 未过追缴期-->
<if test="params.SPROMPOTY==2">
AND t.DT >= TO_DATE(#{params.WILLDATE}, 'YYYY-MM-DD HH24:mi:ss')
</if>
</if>
<if test="params.DBTYPE == 3">
<!-- 已过追缴期-->
<if test="params.SPROMPOTY==1">
AND t.DT &lt;= TO_DATE(#{params.WILLDATE}, 'YYYY-MM-DD HH24:mi:ss')
</if>
<!-- 未过追缴期-->
<if test="params.SPROMPOTY==2">
AND t.DT >= TO_DATE(#{params.WILLDATE}, 'YYYY-MM-DD HH24:mi:ss')
</if>
</if>
<if test="params.DBTYPE == 4">
<!-- 已过追缴期-->
<if test="params.SPROMPOTY==1">
AND t.DT &lt;= STR_TO_DATE(#{params.WILLDATE}, '%Y-%m-%d %H:%k:%s')
</if>
<!-- 未过追缴期-->
<if test="params.SPROMPOTY==2">
AND t.DT >= STR_TO_DATE(#{params.WILLDATE}, '%Y-%m-%d %H:%k:%s')
</if>
</if>
</if>
<if test="params.SROADNO != null and params.SROADNO != ''">
AND t.REPORTROADNO = #{params.SROADNO}
</if>
@ -298,7 +567,6 @@
</if>
</where>
</select>
<select id="getHangMaxVarnoBySql" parameterType="java.util.HashMap" resultType="com.nmgs.entity.HangTable">
select
max(t.VERNO) as verno

@ -1,15 +1,15 @@
package com.nmgs.service;
import com.alibaba.fastjson.JSONObject;
import org.springframework.web.multipart.MultipartFile;
public interface IBlackBatchImportSerive {
/**
*
*
* @param params
* @return
* @throws Exception
*/
JSONObject insertData(Object params) throws Exception;
}

@ -79,4 +79,10 @@ public interface IHangSerive {
* @return
*/
List<HangTable> getHangMaxVarnoBySql(Map<String, Object> params);
/**
*
* @return
*/
public String getTotalCash(Map<String, Object> params);
}

@ -16,6 +16,7 @@ import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.multipart.MultipartFile;
import java.io.File;
import java.io.FileInputStream;
@ -49,18 +50,13 @@ public class BlackBatchImportSeriveImpl implements IBlackBatchImportSerive {
Map<String,Object> map=(Map<String,Object>)params;
JSONObject json=new JSONObject();
String txtLog="";
String logShowExist="";
String filename=map.get("filename").toString();
String opermaname=map.get("opermaname").toString();
String opermaname=map.get("apname").toString();
List<HangTable> users = new ArrayList<HangTable>();//新增的数据
List<HangTable> usersUpdate = new ArrayList<HangTable>();//修改的数据:根据车牌号和颜色查询是否存在数据,存在则更新
List<HangListTable> carnoLogAdd = new ArrayList<HangListTable>();//操作日志
List<HangListTable> carnoLogAdd = new ArrayList<HangListTable>();//流水数据
int count = 0;
//当前项目的目录
SimpleDateFormat sdf=new SimpleDateFormat("yyyyMMdd");
String fileDirName = sdf.format(new Date());
String folderPath = com.nmgs.util.PathUtil.webappsPath +File.separator+fileDirName+File.separator+filename;
folderPath=folderPath.replaceAll("webapps","blackListFile");
String folderPath = PubTools.getResourcePath()+File.separator+filename;
File fileTemp=new File(folderPath);
if (!fileTemp.exists())
{
@ -70,15 +66,9 @@ public class BlackBatchImportSeriveImpl implements IBlackBatchImportSerive {
}else{
FileInputStream fileInputStream = new FileInputStream(folderPath);
ExcelReader reader = ExcelUtil.getReader(fileInputStream);
List<List<Object>> read = reader.read(3);
// 方式2忽略表头的中文直接读取表的内容
List<List<Object>> read = reader.read(1);
SimpleDateFormat sd=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
txtLog += "\n";
if(read.size()>0){
txtLog += PubTools.getCurrentDate() + "白名单批量导入文件名称-->" + filename + "\n";
}
for ( int k=0;k<read.size()-1;k++) {//由于最后一行内容是填报人信息, 所以不管
for ( int k=0;k<read.size();k++) {
List<Object> row=read.get(k);
try{
if(!PubTools.isEmpty(row.get(1)) && !PubTools.isEmpty(row.get(2)) && !PubTools.isEmpty(row.get(3))
@ -91,7 +81,7 @@ public class BlackBatchImportSeriveImpl implements IBlackBatchImportSerive {
HangListTable carNoLog = new HangListTable();
//校验车牌
boolean isregex = PubTools.isregex(row.get(1).toString());
/* boolean isregex = PubTools.isregex(row.get(1).toString());
if(!isregex){
txtLog += PubTools.getCurrentDate() + row.get(1).toString() + ":车牌号码不正确!" + "\n";
}else{
@ -101,43 +91,79 @@ public class BlackBatchImportSeriveImpl implements IBlackBatchImportSerive {
json.put("txtLog",txtLog);
return json;
}
}*/
count++;
String roadname=row.get(0).toString().trim();
int road = getRoad(roadname);
if(road <0){
txtLog += "第"+(k+2)+"行上报路段填写错误!";
json.put("txtLog",txtLog);
return json;
}
String staname=row.get(1).toString().trim();
int sta = getStan(staname);
if(sta <0){
txtLog += "第"+(k+2)+"行上报站填写错误!";
json.put("txtLog",txtLog);
return json;
}
int color = getColor(row.get(2).toString());
int color = getColor(row.get(5).toString().trim());
if(color <0){
txtLog += PubTools.getCurrentDate() + row.get(1).toString() + ":车牌颜色选择错误!";
txtLog += "第"+(k+2)+"行车牌颜色填写错误!";
json.put("txtLog",txtLog);
return json;
}
count++;
hangTable.setCardid(row.get(1).toString());//车牌号
hangTable.setPlatecolor(row.get(2).toString());//车牌颜色
hangTable.setBegdate(sd.parse(row.get(4).toString()));//生效日期
hangTable.setDt(sd.parse(PubTools.getCurrentDate()));
hangTable.setBegdate(sd.parse(PubTools.getCurrentDate()));
hangTable.setJtflag(0);//默认不是集团黑名单
hangTable.setVerno("0");
//根据车牌和颜色判断车牌是否已经存在
int type = getType(row.get(6).toString().trim());
if(type <0){
txtLog += "第"+(k+2)+"行车型填写错误!";
json.put("txtLog",txtLog);
return json;
}
int cardtp = getCardType(row.get(7).toString().trim());
if(cardtp <0){
txtLog += "第"+(k+2)+"行黑名单类型填写错误!";
json.put("txtLog",txtLog);
return json;
}
//根据车牌判断车牌是否已经存在
Map<String,Object> mapParas=new HashMap<String,Object>();
mapParas.put("cardid",row.get(1).toString()) ;
mapParas.put("platecolor",color) ;
mapParas.put("SCARDID",row.get(4).toString()) ;
List<HangTable> hangTableList = hangTableMapper.getHangList(mapParas);
if(!hangTableList.isEmpty()){
HangTable hangTable1 = hangTableList.get(0);
logShowExist += hangTable1.getCardid() + ",";
hangTable.setType(hangTable1.getType());
usersUpdate.add(hangTable);
if(!hangTableList.isEmpty() && hangTableList.size()>0){
txtLog += "车牌号已经存在黑名单中请检查excel中第"+(k+2)+"行数据!";
json.put("txtLog",txtLog);
return json;
}
hangTable.setReportroadno(road);
hangTable.setReportstano(sta);
carNoLog.setRoadno(road);
carNoLog.setStano(sta);
carNoLog.setRpname(row.get(2).toString());//上报人
carNoLog.setRptime(sd.parse(row.get(3).toString()));//上报日期
carNoLog.setCardid(row.get(4).toString());//车牌号
carNoLog.setPlatecolor(row.get(5).toString());//车牌颜色
carNoLog.setType(type);//车型
carNoLog.setCardtp(cardtp);//黑名单类型
carNoLog.setCash(new BigDecimal(row.get(8).toString()).setScale(2));//金额
carNoLog.setCardno(row.get(9).toString());
String jtFlag=row.get(10).toString();//是否集团黑名单
if("是".equals(jtFlag)){
carNoLog.setJtflag(1);//是集团黑名单
}else{
hangTable.setType(0);
users.add(hangTable);
carNoLog.setJtflag(0);//不是集团黑名单
}
//memo设置
BeanUtils.copyProperties(hangTable,carNoLog,"id");
carNoLog.setDt(sd.parse(PubTools.getCurrentDate()));
carNoLog.setCreateflag(Consistent.IMPORT_BATCH);
carNoLog.setApname(opermaname);
carNoLog.setCreateflag(Consistent.IMPORT_BATCH);
carNoLog.setDt(sd.parse(PubTools.getCurrentDate()));
carNoLog.setBegdate(sd.parse(PubTools.getCurrentDate()));//生效日期
carnoLogAdd.add(carNoLog);
//黑名单设置
BeanUtils.copyProperties(carNoLog,hangTable);
hangTable.setVerno("0");
users.add(hangTable);
}catch (Exception e){
txtLog += PubTools.getCurrentDate() + row.get(1).toString() + "【白名单文件没有按规定填写,请检查!!】 ";
txtLog += PubTools.getCurrentDate() + row.get(1).toString() + "【名单文件没有按规定填写,请检查!!】 ";
json.put("txtLog",txtLog);
return json;
}
@ -147,19 +173,18 @@ public class BlackBatchImportSeriveImpl implements IBlackBatchImportSerive {
}
try
{
int ret=-1;
if (users.size()>0){
for(HangTable hangTable :users){
int i = this.hangTableMapper.insert(hangTable);
if(i<1){
txtLog += PubTools.getCurrentDate() + "导入失败!! ";
txtLog += PubTools.getCurrentDate() + "文件上传失败!! ";
json.put("txtLog",txtLog);
return json;
}
}
}
if (usersUpdate.size()>0){
/* if (usersUpdate.size()>0){
for(HangTable hangTable :usersUpdate){
int i = this.hangTableMapper.updateById(hangTable);
if(i<1){
@ -168,34 +193,100 @@ public class BlackBatchImportSeriveImpl implements IBlackBatchImportSerive {
return json;
}
}
}
}*/
if (carnoLogAdd.size()>0){
for(HangListTable whiteCarnoList:carnoLogAdd){
int i = this.hangListMapper.insert(whiteCarnoList);
if(i<1){
txtLog += PubTools.getCurrentDate() + "导入失败!! ";
txtLog += PubTools.getCurrentDate() + "文件上传失败!! ";
json.put("txtLog",txtLog);
return json;
}
}
}
if(!PubTools.isNull(logShowExist)){
txtLog += "已存在车牌:"+logShowExist + "\n";
}
txtLog += PubTools.getCurrentDate() + "成功,共计:【" + count + "】条 ";
}
catch (Exception ex)
{
txtLog += PubTools.getCurrentDate() + "白名单批量导入异常:" + ex.getMessage() + "\n";
txtLog += "文件上传异常:请联系管理员\n";
json.put("sysLog","文件上传异常:" + ex.getMessage() + "\n");
}
json.put("txtLog",txtLog);
return json;
}
private int getRoad(String colorName){
String sql="select t.roadno AS LABEL from ROAD_TABLE t where t.ROADNAME='"+colorName+"'";
List selectforlist = this.iMapper.selectforlist(sql);
int ret=-1;
if(selectforlist.size()>0){
Map<String,Object> o =(Map<String,Object>) selectforlist.get(0);
if(o.get("LABEL") instanceof BigDecimal){
ret=((BigDecimal) o.get("LABEL")).intValue();
}else if(o.get("LABEL") instanceof Integer){
ret=(Integer) o.get("LABEL");
}else{
ret=Integer.parseInt(o.get("LABEL").toString()) ;
}
}
return ret;
}
private int getStan(String colorName){
String sql="select t.STANO AS LABEL from NAME_TABLE t where t.STANAME='"+colorName+"'";
List selectforlist = this.iMapper.selectforlist(sql);
int ret=-1;
if(selectforlist.size()>0){
Map<String,Object> o =(Map<String,Object>) selectforlist.get(0);
if(o.get("LABEL") instanceof BigDecimal){
ret=((BigDecimal) o.get("LABEL")).intValue();
}else if(o.get("LABEL") instanceof Integer){
ret=(Integer) o.get("LABEL");
}else{
ret=Integer.parseInt(o.get("LABEL").toString()) ;
}
}
return ret;
}
/**
*
* @param colorName
* @return
*/
private int getType(String colorName){
String sql="select t.VALUE AS LABEL from TYPE_TEXT t where t.TEXT='"+colorName+"'";
List selectforlist = this.iMapper.selectforlist(sql);
int ret=-1;
if(selectforlist.size()>0){
Map<String,Object> o =(Map<String,Object>) selectforlist.get(0);
if(o.get("LABEL") instanceof BigDecimal){
ret=((BigDecimal) o.get("LABEL")).intValue();
}else if(o.get("LABEL") instanceof Integer){
ret=(Integer) o.get("LABEL");
}else{
ret=Integer.parseInt(o.get("LABEL").toString()) ;
}
}
return ret;
}
private int getCardType(String colorName){
String sql="select t.ID AS LABEL from HANGTP_TEXT t where t.TEXT='"+colorName+"'";
List selectforlist = this.iMapper.selectforlist(sql);
int ret=-1;
if(selectforlist.size()>0){
Map<String,Object> o =(Map<String,Object>) selectforlist.get(0);
if(o.get("LABEL") instanceof BigDecimal){
ret=((BigDecimal) o.get("LABEL")).intValue();
}else if(o.get("LABEL") instanceof Integer){
ret=(Integer) o.get("LABEL");
}else{
ret=Integer.parseInt(o.get("LABEL").toString()) ;
}
}
return ret;
}
private int getColor(String colorName){
String sql="select t.VALUE AS LABEL from PLATECOLOR_TEXT t where t.TEXT='"+colorName+"'";
String sql="select t.VALUE AS LABEL from white_PLATE_COLOR t where t.TEXT='"+colorName+"'";
List selectforlist = this.iMapper.selectforlist(sql);
int ret=-1;
if(selectforlist.size()>0){
@ -210,6 +301,4 @@ public class BlackBatchImportSeriveImpl implements IBlackBatchImportSerive {
}
return ret;
}
}

@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.nmgs.entity.HangResultTable;
import com.nmgs.mapper.HangResultMapper;
import com.nmgs.mapper.HangTableMapper;
import com.nmgs.service.IHangResultService;
import com.nmgs.util.LogUtil;
import com.nmgs.util.PubTools;
@ -12,6 +13,7 @@ import org.springframework.stereotype.Service;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;
@Service
@ -19,10 +21,16 @@ public class HangResultServiceImpl extends ServiceImpl<HangResultMapper, HangRes
SimpleDateFormat dateTimeFormatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
public HangResultMapper hangResultMapper;
public HangTableMapper hangTableMapper;
@Autowired
public void setHangListMapper(HangResultMapper hangResultMapper) {
this.hangResultMapper = hangResultMapper;
}
@Autowired
public void setHangTableMapper(HangTableMapper hangTableMapper) {
this.hangTableMapper = hangTableMapper;
}
@Override
public Page<HangResultTable> getBlackListByPage(Map<String, Object> params) {
//从配置文件中读取数据库连接类型
@ -42,6 +50,13 @@ public class HangResultServiceImpl extends ServiceImpl<HangResultMapper, HangRes
hangTable.setDt(dateTimeFormatter.parse(dateTimeFormatter.format(new Date())));
hangTable.setAddtime(dateTimeFormatter.parse(dateTimeFormatter.format(new Date())));
ret= hangResultMapper.insert(hangTable);
if(ret>0){
Map<String, Object> params = new HashMap<String, Object>();
//需要删除黑名单中的信息
params.put("cardid",hangTable.getCardid());
params.put("cardtp",hangTable.getCardtp());
hangTableMapper.delDataBatch(params);
}
}catch (Exception e){
LogUtil.WriteLog_Error("新增黑名单处理数据出错:"+e.getMessage(),"HangResultServiceImpl");
throw new Exception(e);

@ -17,6 +17,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.math.BigDecimal;
import java.text.SimpleDateFormat;
import java.util.*;
@Transactional(rollbackFor = Exception.class)
@ -42,20 +43,16 @@ public class HangSeriveImpl implements IHangSerive {
//设置分页
Integer pageNum = (Integer) params.get("pageNum");
Integer pageSize = (Integer) params.get("pageSize");
String whiteOutTimeT = PropertiesUtil.getValue("WhiteOutTime");
String blackOverTraceTime = PropertiesUtil.getValue("BlackOverTraceTime");//追缴有效期天数
String decNumDate = PubTools.getDecNumDate(Integer.parseInt(blackOverTraceTime));
params.put("CURRENTDATE",PubTools.getCurrentDate());
params.put("CURRENTWILLDATE",PubTools.getAddNumDate(Integer.parseInt(whiteOutTimeT)));
params.put("CURRENTWILLDATE",decNumDate);
Page<HangTable> page = new Page<>(pageNum,pageSize);
//到期数据条件需要做处理
if(!PubTools.isEmpty(params.get("SPROMPOTY"))){
String sprompoty = params.get("SPROMPOTY").toString();
if("2".equals(sprompoty)){//将到期,从配置文件获取距离结束日期 还有几天算将到期
String whiteOutTime = PropertiesUtil.getValue("WhiteOutTime");
params.put("WILLDATE",PubTools.getAddNumDate(Integer.parseInt(whiteOutTime)));
}else if("3".equals(sprompoty)){//已到期
params.put("WILLDATE",PubTools.getCurrentDate());
}else{
if(!"3".equals(sprompoty)){//已超过追缴日期
params.put("WILLDATE",decNumDate);
}
}
page = hangTableMapper.getHangByPage(page,params);
@ -96,7 +93,7 @@ public class HangSeriveImpl implements IHangSerive {
}
}
if(ids.size()>0){
ret= hangTableMapper.delDataBatch(ids);
// ret= hangTableMapper.delDataBatch(ids);
if(ret>0){
iHangListService.saveBatch(listLog);
}
@ -130,6 +127,17 @@ public class HangSeriveImpl implements IHangSerive {
public List<HangTable> getHangList(Map<String, Object> params) {
//从配置文件中读取数据库连接类型
params.put("DBTYPE", PubTools.getDBType());
String blackOverTraceTime = PropertiesUtil.getValue("BlackOverTraceTime");//追缴有效期天数
String decNumDate = PubTools.getDecNumDate(Integer.parseInt(blackOverTraceTime));
params.put("CURRENTDATE",PubTools.getCurrentDate());
params.put("CURRENTWILLDATE",decNumDate);
//到期数据条件需要做处理
if(!PubTools.isEmpty(params.get("SPROMPOTY"))){
String sprompoty = params.get("SPROMPOTY").toString();
if(!"3".equals(sprompoty)){//已超过追缴日期
params.put("WILLDATE",decNumDate);
}
}
List<HangTable> records = hangTableMapper.getHangList(params);
return records;
}
@ -236,4 +244,9 @@ public class HangSeriveImpl implements IHangSerive {
return this.hangTableMapper.getHangMaxVarnoBySql(params);
}
@Override
public String getTotalCash(Map<String, Object> params) {
return this.hangTableMapper.getTotalCash(params);
}
}

@ -2,11 +2,14 @@ package com.nmgs.util;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.nmgs.controller.BlackBatchImportController;
import java.io.File;
import java.lang.reflect.Array;
import java.lang.reflect.Field;
import java.lang.reflect.Modifier;
import java.math.BigDecimal;
import java.net.URL;
import java.text.SimpleDateFormat;
import java.util.*;
@ -79,6 +82,13 @@ public class PubTools {
Date date = calendar.getTime();
return df.format(date);
}
//查询减了num天之后的日期
public static String getDecNumDate(int b){
Calendar calendar = Calendar.getInstance();
calendar.add(Calendar.DAY_OF_YEAR, -b); // 将日期向前推b天
Date date = calendar.getTime();
return df.format(date);
}
public static double doubleSave1(double number) {
@ -194,6 +204,11 @@ public class PubTools {
return PropertiesUtil.getValue("DBType");
}
public static String getResourcePath(){
String folderPath= File.separator+"blackListFile";
URL resource = BlackBatchImportController.class.getClassLoader().getResource(folderPath);
return resource.getPath();
}
public static String GetHex(Object o)
{
String r = "", s1 = "", s2 = "";

Binary file not shown.

@ -10,6 +10,18 @@
t.PLATECOLOR,t.VERNO,t.CASH,t.TYPE,t.REPORTROADNO,t.REPORTSTANO,
t.JTFLAG,ht.text as cardtpName,tt.TEXT as typeName,rta.roadname as reportroadnoName,
nta.staname as reportstanoName,(case when t.JTFLAG=1 THEN '是' else '否' end) As jtflagName
<if test="params.DBTYPE ==1">
,(case when t.DT&lt; dateadd(day,0,#{params.CURRENTWILLDATE}) THEN 'Y' else 'N' end) AS isOverTrace
</if>
<if test="params.DBTYPE ==2">
,(case when t.DT&lt; to_Date(#{params.CURRENTWILLDATE},'YYYY-MM-DD HH24:mi:ss') THEN 'Y' else 'N' end) AS isOverTrace
</if>
<if test="params.DBTYPE ==3">
,(case when t.DT&lt; to_Date(#{params.CURRENTWILLDATE},'YYYY-MM-DD HH24:mi:ss') THEN 'Y' else 'N' end) AS isOverTrace
</if>
<if test="params.DBTYPE ==4">
,(case when t.DT&lt; STR_TO_DATE(#{params.CURRENTWILLDATE},'%Y-%m-%d %H:%k:%s') THEN 'Y' else 'N' end) AS isOverTrace
</if>
FROM HANG_TABLE t
left join ROAD_TABLE rta on(t.REPORTROADNO = rta.roadno)
left join hangtp_text ht on(t.CARDTP = ht.ID)
@ -103,6 +115,48 @@
AND t.BEGDATE &lt;= STR_TO_DATE(#{params.querybegdateE}, '%Y-%m-%d %H:%k:%s')
</if>
</if>
<if test="params.WILLDATE!= null and params.WILLDATE!= ''">
<if test="params.DBTYPE == 1">
<!-- 已过追缴期-->
<if test="params.SPROMPOTY==1">
AND t.DT &lt; dateadd(day,0,#{params.WILLDATE})
</if>
<!-- 未过追缴期-->
<if test="params.SPROMPOTY==2">
AND t.DT >=dateadd(day,0,#{params.WILLDATE})
</if>
</if>
<if test="params.DBTYPE == 2">
<!-- 已过追缴期-->
<if test="params.SPROMPOTY==1">
AND t.DT &lt; TO_DATE(#{params.WILLDATE}, 'YYYY-MM-DD HH24:mi:ss')
</if>
<!-- 未过追缴期-->
<if test="params.SPROMPOTY==2">
AND t.DT >= TO_DATE(#{params.WILLDATE}, 'YYYY-MM-DD HH24:mi:ss')
</if>
</if>
<if test="params.DBTYPE == 3">
<!-- 已过追缴期-->
<if test="params.SPROMPOTY==1">
AND t.DT &lt;= TO_DATE(#{params.WILLDATE}, 'YYYY-MM-DD HH24:mi:ss')
</if>
<!-- 未过追缴期-->
<if test="params.SPROMPOTY==2">
AND t.DT >= TO_DATE(#{params.WILLDATE}, 'YYYY-MM-DD HH24:mi:ss')
</if>
</if>
<if test="params.DBTYPE == 4">
<!-- 已过追缴期-->
<if test="params.SPROMPOTY==1">
AND t.DT &lt;= STR_TO_DATE(#{params.WILLDATE}, '%Y-%m-%d %H:%k:%s')
</if>
<!-- 未过追缴期-->
<if test="params.SPROMPOTY==2">
AND t.DT >= STR_TO_DATE(#{params.WILLDATE}, '%Y-%m-%d %H:%k:%s')
</if>
</if>
</if>
<if test="params.SROADNO != null and params.SROADNO != ''">
AND t.REPORTROADNO = #{params.SROADNO}
</if>
@ -171,10 +225,7 @@
</update>
<delete id="delDataBatch">
DELETE FROM HANG_TABLE WHERE ID IN
<foreach item="str" collection="ids" open="(" separator="," close=")">
#{str}
</foreach>
DELETE FROM HANG_TABLE t WHERE t.CARDID =#{params.cardid} AND t.cardtp=#{params.cardtp}
</delete>
<select id="getHangList" parameterType="java.util.HashMap" resultType="com.nmgs.entity.HangTable">
select
@ -182,6 +233,21 @@
t.PLATECOLOR,t.VERNO,t.CASH,t.TYPE,t.REPORTROADNO,t.REPORTSTANO,
t.JTFLAG,ht.text as cardtpName,tt.TEXT as typeName,rta.roadname as reportroadnoName,
nta.staname as reportstanoName,(case when t.JTFLAG=1 THEN '是' else '否' end) As jtflagName
<if test="params.DBTYPE ==1">
,(case when t.DT&lt; dateadd(day,0,#{params.CURRENTWILLDATE}) THEN 'Y' else 'N' end) AS isOverTrace
</if>
<if test="params.DBTYPE ==2">
,(case
when t.DT&lt; to_Date(#{params.CURRENTWILLDATE},'YYYY-MM-DD HH24:mi:ss') THEN 'Y' else 'N' end) AS isOverTrace
</if>
<if test="params.DBTYPE ==3">
,(case
when t.DT&lt; to_Date(#{params.CURRENTWILLDATE},'YYYY-MM-DD HH24:mi:ss') THEN 'Y' else 'N' end) AS isOverTrace
</if>
<if test="params.DBTYPE ==4">
,(case
when t.DT&lt; STR_TO_DATE(#{params.CURRENTWILLDATE},'%Y-%m-%d %H:%k:%s') THEN 'Y' else 'N' end) AS isOverTrace
</if>
FROM HANG_TABLE t
left join ROAD_TABLE rta on(t.REPORTROADNO = rta.roadno)
left join hangtp_text ht on(t.CARDTP = ht.ID)
@ -275,6 +341,209 @@
AND t.BEGDATE &lt;= STR_TO_DATE(#{params.querybegdateE}, '%Y-%m-%d %H:%k:%s')
</if>
</if>
<if test="params.WILLDATE!= null and params.WILLDATE!= ''">
<if test="params.DBTYPE == 1">
<!-- 已过追缴期-->
<if test="params.SPROMPOTY==1">
AND t.DT &lt; dateadd(day,0,#{params.WILLDATE})
</if>
<!-- 未过追缴期-->
<if test="params.SPROMPOTY==2">
AND t.DT >=dateadd(day,0,#{params.WILLDATE})
</if>
</if>
<if test="params.DBTYPE == 2">
<!-- 已过追缴期-->
<if test="params.SPROMPOTY==1">
AND t.DT &lt; TO_DATE(#{params.WILLDATE}, 'YYYY-MM-DD HH24:mi:ss')
</if>
<!-- 未过追缴期-->
<if test="params.SPROMPOTY==2">
AND t.DT >= TO_DATE(#{params.WILLDATE}, 'YYYY-MM-DD HH24:mi:ss')
</if>
</if>
<if test="params.DBTYPE == 3">
<!-- 已过追缴期-->
<if test="params.SPROMPOTY==1">
AND t.DT &lt;= TO_DATE(#{params.WILLDATE}, 'YYYY-MM-DD HH24:mi:ss')
</if>
<!-- 未过追缴期-->
<if test="params.SPROMPOTY==2">
AND t.DT >= TO_DATE(#{params.WILLDATE}, 'YYYY-MM-DD HH24:mi:ss')
</if>
</if>
<if test="params.DBTYPE == 4">
<!-- 已过追缴期-->
<if test="params.SPROMPOTY==1">
AND t.DT &lt;= STR_TO_DATE(#{params.WILLDATE}, '%Y-%m-%d %H:%k:%s')
</if>
<!-- 未过追缴期-->
<if test="params.SPROMPOTY==2">
AND t.DT >= STR_TO_DATE(#{params.WILLDATE}, '%Y-%m-%d %H:%k:%s')
</if>
</if>
</if>
<if test="params.SROADNO != null and params.SROADNO != ''">
AND t.REPORTROADNO = #{params.SROADNO}
</if>
<if test="params.SSTANO != null and params.SSTANO != ''">
AND t.REPORTSTANO = #{params.SSTANO}
</if>
<if test="params.SCARDID != null and params.SCARDID != ''">
AND t.CARDID like '%'|| #{params.SCARDID} || '%'
</if>
<if test="params.SCARDTP != null and params.SCARDTP != ''">
AND t.CARDTP = #{params.SCARDTP}
</if>
<if test="params.STYPE != null and params.STYPE != ''">
AND t.TYPE = #{params.STYPE}
</if>
<if test="params.SJTFLAG != null and params.SJTFLAG != ''">
AND t.JTFLAG = #{params.SJTFLAG}
</if>
<if test="params.SPLATECOLOR != null and params.SPLATECOLOR != ''">
AND t.PLATECOLOR = #{params.SPLATECOLOR}
</if>
</where>
</select>
<select id="getTotalCash" parameterType="java.util.HashMap" resultType="string">
select
sum(t.cash)||'' as totalCash
FROM HANG_TABLE t
left join ROAD_TABLE rta on(t.REPORTROADNO = rta.roadno)
left join hangtp_text ht on(t.CARDTP = ht.ID)
left join TYPE_TEXT tt on(t.TYPE = tt.value)
left join NAME_TABLE nta on(t.REPORTSTANO = nta.STANO)
<where>
<if test="params.id != null and params.id != ''">
AND t.id = #{params.id}
</if>
<if test="params.queryCreateTimeS!= null and params.queryCreateTimeS!= ''">
<if test="params.DBTYPE == 1">
AND t.DT >= dateadd(day,0,#{params.queryCreateTimeS})
</if>
<if test="params.DBTYPE == 2">
AND t.DT >= TO_DATE(#{params.queryCreateTimeS}, 'YYYY-MM-DD HH24:mi:ss')
</if>
<if test="params.DBTYPE == 3">
AND t.DT >= TO_DATE(#{params.queryCreateTimeS}, 'YYYY-MM-DD HH24:mi:ss')
</if>
<if test="params.DBTYPE == 4">
AND t.DT >= STR_TO_DATE(#{params.queryCreateTimeS}, '%Y-%m-%d %H:%k:%s')
</if>
</if>
<if test="params.queryCreateTimeE!= null and params.queryCreateTimeE!= ''">
<if test="params.DBTYPE == 1">
AND t.DT &lt;= dateadd(day,0,#{params.queryCreateTimeE})
</if>
<if test="params.DBTYPE == 2">
AND t.DT &lt;= TO_DATE(#{params.queryCreateTimeE}, 'YYYY-MM-DD HH24:mi:ss')
</if>
<if test="params.DBTYPE == 3">
AND t.DT &lt;= TO_DATE(#{params.queryCreateTimeE}, 'YYYY-MM-DD HH24:mi:ss')
</if>
<if test="params.DBTYPE == 4">
AND t.DT &lt;= STR_TO_DATE(#{params.queryCreateTimeE}, '%Y-%m-%d %H:%k:%s')
</if>
</if>
<if test="params.queryrptimeS!= null and params.queryrptimeS!= ''">
<if test="params.DBTYPE == 1">
AND t.RPTIME >= dateadd(day,0,#{params.queryrptimeS})
</if>
<if test="params.DBTYPE == 2">
AND t.RPTIME >= TO_DATE(#{params.queryrptimeS}, 'YYYY-MM-DD HH24:mi:ss')
</if>
<if test="params.DBTYPE == 3">
AND t.RPTIME >= TO_DATE(#{params.queryrptimeS}, 'YYYY-MM-DD HH24:mi:ss')
</if>
<if test="params.DBTYPE == 4">
AND t.RPTIME >= STR_TO_DATE(#{params.queryrptimeS}, '%Y-%m-%d %H:%k:%s')
</if>
</if>
<if test="params.queryrptimeE!= null and params.queryrptimeE!= ''">
<if test="params.DBTYPE == 1">
AND t.RPTIME &lt;= dateadd(day,0,#{params.queryrptimeE})
</if>
<if test="params.DBTYPE == 2">
AND t.RPTIME &lt;= TO_DATE(#{params.queryrptimeE}, 'YYYY-MM-DD HH24:mi:ss')
</if>
<if test="params.DBTYPE == 3">
AND t.RPTIME &lt;= TO_DATE(#{params.queryrptimeE}, 'YYYY-MM-DD HH24:mi:ss')
</if>
<if test="params.DBTYPE == 4">
AND t.RPTIME &lt;= STR_TO_DATE(#{params.queryrptimeE}, '%Y-%m-%d %H:%k:%s')
</if>
</if>
<if test="params.querybegdateS!= null and params.querybegdateS!= ''">
<if test="params.DBTYPE == 1">
AND t.BEGDATE >= dateadd(day,0,#{params.querybegdateS})
</if>
<if test="params.DBTYPE == 2">
AND t.BEGDATE >= TO_DATE(#{params.querybegdateS}, 'YYYY-MM-DD HH24:mi:ss')
</if>
<if test="params.DBTYPE == 3">
AND t.BEGDATE >= TO_DATE(#{params.querybegdateS}, 'YYYY-MM-DD HH24:mi:ss')
</if>
<if test="params.DBTYPE == 4">
AND t.BEGDATE >= STR_TO_DATE(#{params.querybegdateS}, '%Y-%m-%d %H:%k:%s')
</if>
</if>
<if test="params.querybegdateE!= null and params.querybegdateE!= ''">
<if test="params.DBTYPE == 1">
AND t.BEGDATE &lt;= dateadd(day,0,#{params.querybegdateE})
</if>
<if test="params.DBTYPE == 2">
AND t.BEGDATE &lt;= TO_DATE(#{params.querybegdateE}, 'YYYY-MM-DD HH24:mi:ss')
</if>
<if test="params.DBTYPE == 3">
AND t.BEGDATE &lt;= TO_DATE(#{params.querybegdateE}, 'YYYY-MM-DD HH24:mi:ss')
</if>
<if test="params.DBTYPE == 4">
AND t.BEGDATE &lt;= STR_TO_DATE(#{params.querybegdateE}, '%Y-%m-%d %H:%k:%s')
</if>
</if>
<if test="params.WILLDATE!= null and params.WILLDATE!= ''">
<if test="params.DBTYPE == 1">
<!-- 已过追缴期-->
<if test="params.SPROMPOTY==1">
AND t.DT &lt; dateadd(day,0,#{params.WILLDATE})
</if>
<!-- 未过追缴期-->
<if test="params.SPROMPOTY==2">
AND t.DT >=dateadd(day,0,#{params.WILLDATE})
</if>
</if>
<if test="params.DBTYPE == 2">
<!-- 已过追缴期-->
<if test="params.SPROMPOTY==1">
AND t.DT &lt; TO_DATE(#{params.WILLDATE}, 'YYYY-MM-DD HH24:mi:ss')
</if>
<!-- 未过追缴期-->
<if test="params.SPROMPOTY==2">
AND t.DT >= TO_DATE(#{params.WILLDATE}, 'YYYY-MM-DD HH24:mi:ss')
</if>
</if>
<if test="params.DBTYPE == 3">
<!-- 已过追缴期-->
<if test="params.SPROMPOTY==1">
AND t.DT &lt;= TO_DATE(#{params.WILLDATE}, 'YYYY-MM-DD HH24:mi:ss')
</if>
<!-- 未过追缴期-->
<if test="params.SPROMPOTY==2">
AND t.DT >= TO_DATE(#{params.WILLDATE}, 'YYYY-MM-DD HH24:mi:ss')
</if>
</if>
<if test="params.DBTYPE == 4">
<!-- 已过追缴期-->
<if test="params.SPROMPOTY==1">
AND t.DT &lt;= STR_TO_DATE(#{params.WILLDATE}, '%Y-%m-%d %H:%k:%s')
</if>
<!-- 未过追缴期-->
<if test="params.SPROMPOTY==2">
AND t.DT >= STR_TO_DATE(#{params.WILLDATE}, '%Y-%m-%d %H:%k:%s')
</if>
</if>
</if>
<if test="params.SROADNO != null and params.SROADNO != ''">
AND t.REPORTROADNO = #{params.SROADNO}
</if>
@ -298,7 +567,6 @@
</if>
</where>
</select>
<select id="getHangMaxVarnoBySql" parameterType="java.util.HashMap" resultType="com.nmgs.entity.HangTable">
select
max(t.VERNO) as verno

@ -10,6 +10,18 @@
t.PLATECOLOR,t.VERNO,t.CASH,t.TYPE,t.REPORTROADNO,t.REPORTSTANO,
t.JTFLAG,ht.text as cardtpName,tt.TEXT as typeName,rta.roadname as reportroadnoName,
nta.staname as reportstanoName,(case when t.JTFLAG=1 THEN '是' else '否' end) As jtflagName
<if test="params.DBTYPE ==1">
,(case when t.DT&lt; dateadd(day,0,#{params.CURRENTWILLDATE}) THEN 'Y' else 'N' end) AS isOverTrace
</if>
<if test="params.DBTYPE ==2">
,(case when t.DT&lt; to_Date(#{params.CURRENTWILLDATE},'YYYY-MM-DD HH24:mi:ss') THEN 'Y' else 'N' end) AS isOverTrace
</if>
<if test="params.DBTYPE ==3">
,(case when t.DT&lt; to_Date(#{params.CURRENTWILLDATE},'YYYY-MM-DD HH24:mi:ss') THEN 'Y' else 'N' end) AS isOverTrace
</if>
<if test="params.DBTYPE ==4">
,(case when t.DT&lt; STR_TO_DATE(#{params.CURRENTWILLDATE},'%Y-%m-%d %H:%k:%s') THEN 'Y' else 'N' end) AS isOverTrace
</if>
FROM HANG_TABLE t
left join ROAD_TABLE rta on(t.REPORTROADNO = rta.roadno)
left join hangtp_text ht on(t.CARDTP = ht.ID)
@ -103,6 +115,48 @@
AND t.BEGDATE &lt;= STR_TO_DATE(#{params.querybegdateE}, '%Y-%m-%d %H:%k:%s')
</if>
</if>
<if test="params.WILLDATE!= null and params.WILLDATE!= ''">
<if test="params.DBTYPE == 1">
<!-- 已过追缴期-->
<if test="params.SPROMPOTY==1">
AND t.DT &lt; dateadd(day,0,#{params.WILLDATE})
</if>
<!-- 未过追缴期-->
<if test="params.SPROMPOTY==2">
AND t.DT >=dateadd(day,0,#{params.WILLDATE})
</if>
</if>
<if test="params.DBTYPE == 2">
<!-- 已过追缴期-->
<if test="params.SPROMPOTY==1">
AND t.DT &lt; TO_DATE(#{params.WILLDATE}, 'YYYY-MM-DD HH24:mi:ss')
</if>
<!-- 未过追缴期-->
<if test="params.SPROMPOTY==2">
AND t.DT >= TO_DATE(#{params.WILLDATE}, 'YYYY-MM-DD HH24:mi:ss')
</if>
</if>
<if test="params.DBTYPE == 3">
<!-- 已过追缴期-->
<if test="params.SPROMPOTY==1">
AND t.DT &lt;= TO_DATE(#{params.WILLDATE}, 'YYYY-MM-DD HH24:mi:ss')
</if>
<!-- 未过追缴期-->
<if test="params.SPROMPOTY==2">
AND t.DT >= TO_DATE(#{params.WILLDATE}, 'YYYY-MM-DD HH24:mi:ss')
</if>
</if>
<if test="params.DBTYPE == 4">
<!-- 已过追缴期-->
<if test="params.SPROMPOTY==1">
AND t.DT &lt;= STR_TO_DATE(#{params.WILLDATE}, '%Y-%m-%d %H:%k:%s')
</if>
<!-- 未过追缴期-->
<if test="params.SPROMPOTY==2">
AND t.DT >= STR_TO_DATE(#{params.WILLDATE}, '%Y-%m-%d %H:%k:%s')
</if>
</if>
</if>
<if test="params.SROADNO != null and params.SROADNO != ''">
AND t.REPORTROADNO = #{params.SROADNO}
</if>
@ -171,10 +225,7 @@
</update>
<delete id="delDataBatch">
DELETE FROM HANG_TABLE WHERE ID IN
<foreach item="str" collection="ids" open="(" separator="," close=")">
#{str}
</foreach>
DELETE FROM HANG_TABLE t WHERE t.CARDID =#{params.cardid} AND t.cardtp=#{params.cardtp}
</delete>
<select id="getHangList" parameterType="java.util.HashMap" resultType="com.nmgs.entity.HangTable">
select
@ -182,6 +233,21 @@
t.PLATECOLOR,t.VERNO,t.CASH,t.TYPE,t.REPORTROADNO,t.REPORTSTANO,
t.JTFLAG,ht.text as cardtpName,tt.TEXT as typeName,rta.roadname as reportroadnoName,
nta.staname as reportstanoName,(case when t.JTFLAG=1 THEN '是' else '否' end) As jtflagName
<if test="params.DBTYPE ==1">
,(case when t.DT&lt; dateadd(day,0,#{params.CURRENTWILLDATE}) THEN 'Y' else 'N' end) AS isOverTrace
</if>
<if test="params.DBTYPE ==2">
,(case
when t.DT&lt; to_Date(#{params.CURRENTWILLDATE},'YYYY-MM-DD HH24:mi:ss') THEN 'Y' else 'N' end) AS isOverTrace
</if>
<if test="params.DBTYPE ==3">
,(case
when t.DT&lt; to_Date(#{params.CURRENTWILLDATE},'YYYY-MM-DD HH24:mi:ss') THEN 'Y' else 'N' end) AS isOverTrace
</if>
<if test="params.DBTYPE ==4">
,(case
when t.DT&lt; STR_TO_DATE(#{params.CURRENTWILLDATE},'%Y-%m-%d %H:%k:%s') THEN 'Y' else 'N' end) AS isOverTrace
</if>
FROM HANG_TABLE t
left join ROAD_TABLE rta on(t.REPORTROADNO = rta.roadno)
left join hangtp_text ht on(t.CARDTP = ht.ID)
@ -275,6 +341,209 @@
AND t.BEGDATE &lt;= STR_TO_DATE(#{params.querybegdateE}, '%Y-%m-%d %H:%k:%s')
</if>
</if>
<if test="params.WILLDATE!= null and params.WILLDATE!= ''">
<if test="params.DBTYPE == 1">
<!-- 已过追缴期-->
<if test="params.SPROMPOTY==1">
AND t.DT &lt; dateadd(day,0,#{params.WILLDATE})
</if>
<!-- 未过追缴期-->
<if test="params.SPROMPOTY==2">
AND t.DT >=dateadd(day,0,#{params.WILLDATE})
</if>
</if>
<if test="params.DBTYPE == 2">
<!-- 已过追缴期-->
<if test="params.SPROMPOTY==1">
AND t.DT &lt; TO_DATE(#{params.WILLDATE}, 'YYYY-MM-DD HH24:mi:ss')
</if>
<!-- 未过追缴期-->
<if test="params.SPROMPOTY==2">
AND t.DT >= TO_DATE(#{params.WILLDATE}, 'YYYY-MM-DD HH24:mi:ss')
</if>
</if>
<if test="params.DBTYPE == 3">
<!-- 已过追缴期-->
<if test="params.SPROMPOTY==1">
AND t.DT &lt;= TO_DATE(#{params.WILLDATE}, 'YYYY-MM-DD HH24:mi:ss')
</if>
<!-- 未过追缴期-->
<if test="params.SPROMPOTY==2">
AND t.DT >= TO_DATE(#{params.WILLDATE}, 'YYYY-MM-DD HH24:mi:ss')
</if>
</if>
<if test="params.DBTYPE == 4">
<!-- 已过追缴期-->
<if test="params.SPROMPOTY==1">
AND t.DT &lt;= STR_TO_DATE(#{params.WILLDATE}, '%Y-%m-%d %H:%k:%s')
</if>
<!-- 未过追缴期-->
<if test="params.SPROMPOTY==2">
AND t.DT >= STR_TO_DATE(#{params.WILLDATE}, '%Y-%m-%d %H:%k:%s')
</if>
</if>
</if>
<if test="params.SROADNO != null and params.SROADNO != ''">
AND t.REPORTROADNO = #{params.SROADNO}
</if>
<if test="params.SSTANO != null and params.SSTANO != ''">
AND t.REPORTSTANO = #{params.SSTANO}
</if>
<if test="params.SCARDID != null and params.SCARDID != ''">
AND t.CARDID like '%'|| #{params.SCARDID} || '%'
</if>
<if test="params.SCARDTP != null and params.SCARDTP != ''">
AND t.CARDTP = #{params.SCARDTP}
</if>
<if test="params.STYPE != null and params.STYPE != ''">
AND t.TYPE = #{params.STYPE}
</if>
<if test="params.SJTFLAG != null and params.SJTFLAG != ''">
AND t.JTFLAG = #{params.SJTFLAG}
</if>
<if test="params.SPLATECOLOR != null and params.SPLATECOLOR != ''">
AND t.PLATECOLOR = #{params.SPLATECOLOR}
</if>
</where>
</select>
<select id="getTotalCash" parameterType="java.util.HashMap" resultType="string">
select
sum(t.cash)||'' as totalCash
FROM HANG_TABLE t
left join ROAD_TABLE rta on(t.REPORTROADNO = rta.roadno)
left join hangtp_text ht on(t.CARDTP = ht.ID)
left join TYPE_TEXT tt on(t.TYPE = tt.value)
left join NAME_TABLE nta on(t.REPORTSTANO = nta.STANO)
<where>
<if test="params.id != null and params.id != ''">
AND t.id = #{params.id}
</if>
<if test="params.queryCreateTimeS!= null and params.queryCreateTimeS!= ''">
<if test="params.DBTYPE == 1">
AND t.DT >= dateadd(day,0,#{params.queryCreateTimeS})
</if>
<if test="params.DBTYPE == 2">
AND t.DT >= TO_DATE(#{params.queryCreateTimeS}, 'YYYY-MM-DD HH24:mi:ss')
</if>
<if test="params.DBTYPE == 3">
AND t.DT >= TO_DATE(#{params.queryCreateTimeS}, 'YYYY-MM-DD HH24:mi:ss')
</if>
<if test="params.DBTYPE == 4">
AND t.DT >= STR_TO_DATE(#{params.queryCreateTimeS}, '%Y-%m-%d %H:%k:%s')
</if>
</if>
<if test="params.queryCreateTimeE!= null and params.queryCreateTimeE!= ''">
<if test="params.DBTYPE == 1">
AND t.DT &lt;= dateadd(day,0,#{params.queryCreateTimeE})
</if>
<if test="params.DBTYPE == 2">
AND t.DT &lt;= TO_DATE(#{params.queryCreateTimeE}, 'YYYY-MM-DD HH24:mi:ss')
</if>
<if test="params.DBTYPE == 3">
AND t.DT &lt;= TO_DATE(#{params.queryCreateTimeE}, 'YYYY-MM-DD HH24:mi:ss')
</if>
<if test="params.DBTYPE == 4">
AND t.DT &lt;= STR_TO_DATE(#{params.queryCreateTimeE}, '%Y-%m-%d %H:%k:%s')
</if>
</if>
<if test="params.queryrptimeS!= null and params.queryrptimeS!= ''">
<if test="params.DBTYPE == 1">
AND t.RPTIME >= dateadd(day,0,#{params.queryrptimeS})
</if>
<if test="params.DBTYPE == 2">
AND t.RPTIME >= TO_DATE(#{params.queryrptimeS}, 'YYYY-MM-DD HH24:mi:ss')
</if>
<if test="params.DBTYPE == 3">
AND t.RPTIME >= TO_DATE(#{params.queryrptimeS}, 'YYYY-MM-DD HH24:mi:ss')
</if>
<if test="params.DBTYPE == 4">
AND t.RPTIME >= STR_TO_DATE(#{params.queryrptimeS}, '%Y-%m-%d %H:%k:%s')
</if>
</if>
<if test="params.queryrptimeE!= null and params.queryrptimeE!= ''">
<if test="params.DBTYPE == 1">
AND t.RPTIME &lt;= dateadd(day,0,#{params.queryrptimeE})
</if>
<if test="params.DBTYPE == 2">
AND t.RPTIME &lt;= TO_DATE(#{params.queryrptimeE}, 'YYYY-MM-DD HH24:mi:ss')
</if>
<if test="params.DBTYPE == 3">
AND t.RPTIME &lt;= TO_DATE(#{params.queryrptimeE}, 'YYYY-MM-DD HH24:mi:ss')
</if>
<if test="params.DBTYPE == 4">
AND t.RPTIME &lt;= STR_TO_DATE(#{params.queryrptimeE}, '%Y-%m-%d %H:%k:%s')
</if>
</if>
<if test="params.querybegdateS!= null and params.querybegdateS!= ''">
<if test="params.DBTYPE == 1">
AND t.BEGDATE >= dateadd(day,0,#{params.querybegdateS})
</if>
<if test="params.DBTYPE == 2">
AND t.BEGDATE >= TO_DATE(#{params.querybegdateS}, 'YYYY-MM-DD HH24:mi:ss')
</if>
<if test="params.DBTYPE == 3">
AND t.BEGDATE >= TO_DATE(#{params.querybegdateS}, 'YYYY-MM-DD HH24:mi:ss')
</if>
<if test="params.DBTYPE == 4">
AND t.BEGDATE >= STR_TO_DATE(#{params.querybegdateS}, '%Y-%m-%d %H:%k:%s')
</if>
</if>
<if test="params.querybegdateE!= null and params.querybegdateE!= ''">
<if test="params.DBTYPE == 1">
AND t.BEGDATE &lt;= dateadd(day,0,#{params.querybegdateE})
</if>
<if test="params.DBTYPE == 2">
AND t.BEGDATE &lt;= TO_DATE(#{params.querybegdateE}, 'YYYY-MM-DD HH24:mi:ss')
</if>
<if test="params.DBTYPE == 3">
AND t.BEGDATE &lt;= TO_DATE(#{params.querybegdateE}, 'YYYY-MM-DD HH24:mi:ss')
</if>
<if test="params.DBTYPE == 4">
AND t.BEGDATE &lt;= STR_TO_DATE(#{params.querybegdateE}, '%Y-%m-%d %H:%k:%s')
</if>
</if>
<if test="params.WILLDATE!= null and params.WILLDATE!= ''">
<if test="params.DBTYPE == 1">
<!-- 已过追缴期-->
<if test="params.SPROMPOTY==1">
AND t.DT &lt; dateadd(day,0,#{params.WILLDATE})
</if>
<!-- 未过追缴期-->
<if test="params.SPROMPOTY==2">
AND t.DT >=dateadd(day,0,#{params.WILLDATE})
</if>
</if>
<if test="params.DBTYPE == 2">
<!-- 已过追缴期-->
<if test="params.SPROMPOTY==1">
AND t.DT &lt; TO_DATE(#{params.WILLDATE}, 'YYYY-MM-DD HH24:mi:ss')
</if>
<!-- 未过追缴期-->
<if test="params.SPROMPOTY==2">
AND t.DT >= TO_DATE(#{params.WILLDATE}, 'YYYY-MM-DD HH24:mi:ss')
</if>
</if>
<if test="params.DBTYPE == 3">
<!-- 已过追缴期-->
<if test="params.SPROMPOTY==1">
AND t.DT &lt;= TO_DATE(#{params.WILLDATE}, 'YYYY-MM-DD HH24:mi:ss')
</if>
<!-- 未过追缴期-->
<if test="params.SPROMPOTY==2">
AND t.DT >= TO_DATE(#{params.WILLDATE}, 'YYYY-MM-DD HH24:mi:ss')
</if>
</if>
<if test="params.DBTYPE == 4">
<!-- 已过追缴期-->
<if test="params.SPROMPOTY==1">
AND t.DT &lt;= STR_TO_DATE(#{params.WILLDATE}, '%Y-%m-%d %H:%k:%s')
</if>
<!-- 未过追缴期-->
<if test="params.SPROMPOTY==2">
AND t.DT >= STR_TO_DATE(#{params.WILLDATE}, '%Y-%m-%d %H:%k:%s')
</if>
</if>
</if>
<if test="params.SROADNO != null and params.SROADNO != ''">
AND t.REPORTROADNO = #{params.SROADNO}
</if>
@ -298,7 +567,6 @@
</if>
</where>
</select>
<select id="getHangMaxVarnoBySql" parameterType="java.util.HashMap" resultType="com.nmgs.entity.HangTable">
select
max(t.VERNO) as verno

Loading…
Cancel
Save