自定义白名单修改

pull/1/head
bmpandlcm 11 months ago
parent fb71e10bd4
commit d7779b45a7

@ -0,0 +1,84 @@
package com.nmgs.controller;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.nmgs.annotation.OperationLogDesc;
import com.nmgs.config.ResultData;
import com.nmgs.entity.WhiteAccountText;
import com.nmgs.entity.WhiteCarnoDic;
import com.nmgs.service.IWhiteAccountSerive;
import com.nmgs.service.IWhiteCarnoDicService;
import com.nmgs.util.PubTools;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import javax.servlet.http.HttpServletRequest;
import java.sql.SQLException;
import java.text.SimpleDateFormat;
import java.util.Map;
/**
*
*/
@RestController
@RequestMapping("/whiteCarnoDic")
@Api(tags = "自定义白名单管理")
public class WhiteCarnoDicController {
public IWhiteCarnoDicService iWhiteCarnoDicService;
@Autowired
public void setiWhiteCarnoDicService(IWhiteCarnoDicService iWhiteCarnoDicService) {
this.iWhiteCarnoDicService = iWhiteCarnoDicService;
}
SimpleDateFormat df=new SimpleDateFormat("yyyy-MM-dd");
@PostMapping(value="/getCarnoDicByPage")
@ApiOperation(httpMethod="POST",value="查询自定义白名单管理数据")
public Object getCarnoDicByPage(HttpServletRequest request, @RequestBody(required = false) Map<String, Object> req) throws SQLException {
Page<WhiteCarnoDic> whiteCarnoListList =null;
try{
whiteCarnoListList = iWhiteCarnoDicService.getWhiteCarnoDicByPage(req);
if (PubTools.isEmpty(whiteCarnoListList)) {
return ResultData.fail(-1,"数据查询失败");
}
}catch (Exception e){
String throwableStr = e.getCause().toString();
if(throwableStr.contains(":")){
throwableStr = throwableStr.substring(throwableStr.indexOf(":") + 1);
}
return ResultData.fail(-1,"数据查询失败==>"+throwableStr);
}
return whiteCarnoListList;
}
@PostMapping(value = "/addCarnoDicData")
@OperationLogDesc(module = "自定义白名单管理>新增", events = "新增记录")
@ApiOperation(httpMethod="POST",value="新增记录")
public ResultData<String> addCarnoDicData(HttpServletRequest request, @RequestBody(required = false) Map<String, Object> req) throws Exception {
int ret = iWhiteCarnoDicService.insertData((WhiteCarnoDic)PubTools.map2Object(req,WhiteCarnoDic.class));
if(ret>-1){
return ResultData.success("新增成功","",0);
}else{
if(ret==-2){
return ResultData.fail("此数据已存在!");
}
}
return ResultData.fail("新增失败");
}
@PostMapping(value = "/batchDelCarnoDicDatas")
@OperationLogDesc(module = "自定义白名单管理>批量删除", events = "删除记录")
@ApiOperation(httpMethod="POST",value="删除记录")
public ResultData<String> batchDelCarnoDicDatas(HttpServletRequest request, @RequestBody Object req) throws Exception {
int ret = iWhiteCarnoDicService.batchDelDatas(req);
if(ret>-1){
return ResultData.success("删除成功","",0);
}
return ResultData.fail("删除失败");
}
}

@ -0,0 +1,26 @@
package com.nmgs.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
@Data
@AllArgsConstructor
@NoArgsConstructor
@TableName("WHITE_CARNO_DIC_TABLE")
public class WhiteCarnoDic {
@TableField("MEMO")
private String memo;
@TableField("DISCRP")
private String discrp;
@TableField("DICNAME")
private String dicname;
@TableField("UNUSER1")
private String unuser1;
@TableField("UNUSER2")
private int unuser2;
}

@ -0,0 +1,20 @@
package com.nmgs.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.nmgs.entity.WhiteAccountText;
import com.nmgs.entity.WhiteCarnoDic;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Map;
@Mapper
public interface WhiteCarnoDicMapper extends BaseMapper<WhiteCarnoDic> {
Page<WhiteCarnoDic> getWhiteCarnoDicByPage(Page<WhiteCarnoDic> page, @Param("params") Map<String, Object> params);
int insertData(@Param("params") WhiteCarnoDic params);
int delDataById(@Param("ids") List<String> ids);
int updateById(@Param("params") WhiteCarnoDic params);
List<WhiteCarnoDic> getWhiteCarnoDicList(@Param("params") Map<String, Object> params);
}

@ -0,0 +1,43 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.nmgs.mapper.WhiteCarnoDicMapper">
<select id="getWhiteCarnoDicByPage" parameterType="java.util.HashMap" resultType="com.nmgs.entity.WhiteCarnoDic">
select
t.memo,t.discrp,t.dicname,t.unuser1,t.unuser2
FROM WHITE_CARNO_DIC_TABLE t
<where>
<if test="params.memo != null and params.memo != ''">
AND t.memo = #{params.memo}
</if>
<if test="params.dicname != null and params.dicname != ''">
AND t.dicname like '%'|| #{params.dicname} || '%'
</if>
</where>
</select>
<insert id="insertData" parameterType="com.nmgs.entity.WhiteCarnoDic">
insert into WHITE_CARNO_DIC_TABLE(memo,discrp,dicname) values(#{params.memo},#{params.discrp},#{params.dicname})
</insert>
<delete id="delDataById">
DELETE FROM WHITE_CARNO_DIC_TABLE WHERE memo IN
<foreach item="str" collection="ids" open="(" separator="," close=")">
#{str}
</foreach>
</delete>
<select id="getWhiteCarnoDicList" parameterType="java.util.HashMap" resultType="com.nmgs.entity.WhiteCarnoDic">
select
t.memo,t.discrp,t.dicname,t.unuser1,t.unuser2
FROM WHITE_CARNO_DIC_TABLE t
<where>
<if test="params.memo != null and params.memo != ''">
AND t.memo = #{params.memo}
</if>
<if test="params.dicname != null and params.dicname != ''">
AND t.dicname like '%'|| #{params.dicname} || '%'
</if>
</where>
</select>
</mapper>

@ -1,7 +1,10 @@
package com.nmgs.service;
import com.alibaba.fastjson.JSONObject;
import java.util.List;
import java.util.Map;
public interface ISelectData {
public String getSelect(String selectType, String value);
public List getDataByType(JSONObject paramsData);
}

@ -0,0 +1,40 @@
package com.nmgs.service;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.nmgs.entity.WhiteAccountText;
import com.nmgs.entity.WhiteCarnoDic;
import java.util.List;
import java.util.Map;
public interface IWhiteCarnoDicService {
/**
*
* @param params
* @return
*/
Page<WhiteCarnoDic> getWhiteCarnoDicByPage(Map<String, Object> params);
/**
*
* @param whiteCarnoDic
* @return
* @throws Exception
*/
int insertData(WhiteCarnoDic whiteCarnoDic) throws Exception;
/**
*
* @param params
* @return
* @throws Exception
*/
int batchDelDatas(Object params) throws Exception;
/**
*
* @param params
* @return
*/
List<WhiteCarnoDic> getWhiteCarnoDicList(Map<String, Object> params);
}

@ -22,52 +22,31 @@ public class SelectDataImpl implements ISelectData {
SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHH");
@Autowired
public Mapper mapperI;
@Override
public List getDataByType(JSONObject paramsData) {
List ret = new ArrayList();
String sql="";
String selectType=paramsData.get("selectType").toString();
String subcomno="";
String roadNo="";
if(!PubTools.isEmpty(paramsData.get("subcomno"))){
subcomno=paramsData.get("subcomno").toString();
}
if(!PubTools.isEmpty(paramsData.get("roadno"))){
roadNo=paramsData.get("roadno").toString();
String roadNoSql="";
if(!PubTools.isEmpty(paramsData.get("roadNoSql"))){
roadNoSql=paramsData.get("roadNoSql").toString();
}
if("VECHECLASS".equals(selectType)){//车种下拉值查询
sql="select a.value as VALUE,a.text as LABEL from VEHICLECLASS_TEXT a order by a.value";
}else if("VECHETYPE".equals(selectType)){//车种下拉值查询
sql="select a.value as VALUE,a.text as LABEL from TYPE_TEXT a order by a.value";
}else if("EXITFEETYPE".equals(selectType)){//出口计费方式
sql="select a.value as VALUE,a.text as LABEL from EXITFEETYPE_TEXT a order by a.value";
} else if ("STANAME".equals(selectType)) {//站名称,包含门架
sql="select a.STANO as VALUE,a.STANAME as LABEL from DIV_NAME_TABLE a where a.STATYPE=1 order by a.STANAME";
}else if("SUBCOM".equals(selectType)){//分公司下拉值
//sql="select subComNo value,subComName label from subcompany_table where 1=1 ";
sql="select distinct t.SUBCOMNO as VALUE,t.SUBCOMNAME as LABEL from DIV_NAME_TABLE a,subcompany_table t where a.STATYPE=1 and a.SUBCOMNO=t.subComNo order by t.SUBCOMNAME";
}else if("ROAD".equals(selectType)){//路段
sql="select distinct a.roadno value,a.roadname label from DIV_NAME_TABLE a where a.STATYPE=1 ";
if(!PubTools.isNull(subcomno)){
sql += " and a.subcomno ="+subcomno;
if("ROAD".equals(selectType)){//自定义白名单全部路段
sql="select a.roadno value,a.roadname||':'||a.roadno label from WHITE_ROAD_TABLE a where a.ENABLED='Y' ";
if(!PubTools.isNull(roadNoSql)){
sql += roadNoSql;
}
sql +=" order by a.roadname ";
} else if ("STANO".equals(selectType)) {//站名称,包含门架,可关联分公司或者路段
sql="select distinct a.stano as value,a.staname as label from DIV_NAME_TABLE a where a.STATYPE=1 ";
if(!PubTools.isNull(subcomno)){
sql += " and a.subcomno ="+subcomno;
} else if("ROAD_STA_STA".equals(selectType)){//自定义白名单全:站站路段,需要排除全部路段
sql="select distinct a.roadno value,a.roadname||':'||a.roadno label from WHITE_ROAD_TABLE a where a.ENABLED='Y' ";
if(!PubTools.isNull(roadNoSql)){
sql += roadNoSql;
}
if(!PubTools.isNull(roadNo)){
sql += " and a.roadno ="+roadNo;
}
sql +=" order by a.STANAME ";
sql +=" order by a.roadname ";
} else if ("STANONAME".equals(selectType)) {//站名称
sql = "select a.stano as value,a.roadname||'_'||a.staname as label from NAME_TABLE a where 1=1 AND a.STATYPE=1 ";
if (!PubTools.isNull(subcomno)) {
sql += " and a.subcomno =" + subcomno;
}
if (!PubTools.isNull(roadNo)) {
sql += " and a.roadno =" + roadNo;
sql = "select a.stano as value,a.staname||':'||a.stano as label from NAME_TABLE a where 1=1 AND a.STATYPE=1 ";
if(!PubTools.isNull(roadNoSql)){
sql += roadNoSql;
}
sql += " order by a.roadname,a.STANAME ";
}else if("GANTRY".equals(selectType)){//省界门架出口名称
@ -97,37 +76,4 @@ public class SelectDataImpl implements ISelectData {
}
@Override
public String getSelect(String selectType, String value) {
String ret = "";
String sql = "";
if ("VECHECLASS".equals(selectType)) {//车种下拉值查询
sql = "select a.value as VALUE,a.text as LABEL from VEHICLECLASS_TEXT a WHERE a.VALUE=" + value + " order by a.value";
} else if ("VECHETYPE".equals(selectType)) {//车型下拉值查询
sql = "select a.value as VALUE,a.text as LABEL from TYPE_TEXT a WHERE a.VALUE=" + value + " order by a.value";
} else if ("EXITFEETYPE".equals(selectType)) {//计费方式
sql = "select a.value as VALUE,a.text as LABEL from EXITFEETYPE_TEXT a WHERE a.VALUE=" + value + " order by a.value";
} else if ("GANTRY".equals(selectType)) {//省界门架出口名称
sql = "select distinct a.gantryhex as value,a.name as label from GANTRY_TABLE a where a.boundarytype=2 group by a.name,a.gantryhex order by a.name ";
} else if ("INTERFLOW".equals(selectType)) {//互通名称
sql = "select distinct a.INTER_HEX as value,a.INTER_NAME as label from DIV_INTERFLOW_TABLE a where a.IN_OUT='OUT' order by a.INTER_HEX ";
} else if ("PLATECOLOR".equals(selectType)) {//车牌颜色
sql = "select a.value as VALUE,a.text as LABEL from PLATECOLOR_TEXT a WHERE a.VALUE=" + value + " order by a.value ";
} else if ("ROAD".equals(selectType)) {//路段名称
sql = "select a.ROADNO as VALUE,a.roadname as LABEL from ROAD_TABLE a WHERE a.ROADNO=" + value + " order by a.roadname ";
}
try {
List retSql = mapperI.selectforlist(sql);
if (retSql.size() > 0) {
Map<String, String> stringStringMap = (Map<String, String>) retSql.get(0);
ret = stringStringMap.get("LABEL").toString();
}
} catch (Exception e) {
LogUtil.WriteLog_Error("下拉数据解析" + selectType + "查询失败=====" + e.getMessage(), "SelectDataImpl");
ret = null;
}
return ret;
}
}

@ -0,0 +1,101 @@
package com.nmgs.service.impl;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.nmgs.entity.WhiteAccountText;
import com.nmgs.entity.WhiteCarnoDic;
import com.nmgs.mapper.Mapper;
import com.nmgs.mapper.WhiteCarnoDicMapper;
import com.nmgs.service.IWhiteCarnoDicService;
import com.nmgs.util.LogUtil;
import com.nmgs.util.PropertiesUtil;
import com.nmgs.util.PubTools;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@Service
public class WhiteCarnoDicSeviceImpl implements IWhiteCarnoDicService {
@Autowired
public WhiteCarnoDicMapper whiteCarnoDicMapper;
@Autowired
public Mapper mapperI;
SimpleDateFormat dateTimeFormatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
@Override
public Page<WhiteCarnoDic> getWhiteCarnoDicByPage(Map<String, Object> params) {
//从配置文件中读取数据库连接类型
params.put("DBTYPE", PropertiesUtil.getValue("DBType"));
//设置分页
Integer pageNum = (Integer) params.get("pageNum");
Integer pageSize = (Integer) params.get("pageSize");
Page<WhiteCarnoDic> page = new Page<>(pageNum,pageSize);
page = whiteCarnoDicMapper.getWhiteCarnoDicByPage(page,params);
return page;
}
@Override
public int insertData(WhiteCarnoDic whiteAccountText) throws Exception {
int ret=-1;
try{
//先根据车牌号与颜色判断是否已经存在
Map<String,Object> params=new HashMap<String,Object>();
params.put("id",whiteAccountText.getMemo());
List<WhiteCarnoDic> whiteCarnoList1 = whiteCarnoDicMapper.getWhiteCarnoDicList(params);
if(whiteCarnoList1.size()>0){
return -2;//白名单存在该信息!
}
ret= whiteCarnoDicMapper.insert(whiteAccountText);
}catch (Exception e){
LogUtil.WriteLog_Error("新增自定义白名单出错:"+e.getMessage(),"WhiteCarnoDicSeviceImpl");
throw new Exception(e);
}
return ret;
}
@Override
public int batchDelDatas(Object params) throws Exception {
int ret=-1;
List<String> ids=new ArrayList<String>();
try{
if(!PubTools.isEmpty(params)){
if(params instanceof ArrayList){
List<Map<String,Object>> whiteAccount= (ArrayList<Map<String,Object>>) params;
if(whiteAccount.size()>0){
for(int i=0;i<whiteAccount.size();i++){
WhiteCarnoDic wcl=(WhiteCarnoDic)PubTools.map2Object(whiteAccount.get(i),WhiteCarnoDic.class);
ids.add(wcl.getMemo());
}
}
}else if(params instanceof JSONArray){
JSONArray json=(JSONArray)params;
if(json.size()>0){
for(int i=0;i<json.size();i++){
JSONObject jo=(JSONObject)json.get(i);
WhiteCarnoDic wcl= jo.toJavaObject(WhiteCarnoDic.class);
ids.add(wcl.getMemo());
}
}
}
}
if(ids.size()>0){
ret= whiteCarnoDicMapper.delDataById(ids);
}
}catch (Exception e){
throw new Exception(e);
}
return ret;
}
@Override
public List<WhiteCarnoDic> getWhiteCarnoDicList(Map<String, Object> params) {
//从配置文件中读取数据库连接类型
params.put("DBTYPE", PropertiesUtil.getValue("DBType"));
List<WhiteCarnoDic> records = whiteCarnoDicMapper.getWhiteCarnoDicList(params);
return records;
}
}
Loading…
Cancel
Save