白名单管理新增修改

pull/1/head
bmpandlcm 11 months ago
parent 918eefd0ef
commit e8a638e32d

@ -54,6 +54,8 @@ public class WhiteCarnoList {
private String memo;
@TableField("VEHICLE_CLASS")
private int vehicleClass;
@TableField("DISCRP")
private String discrp;
@TableField(exist = false)
private String colorName;
@TableField(exist = false)
@ -70,6 +72,14 @@ public class WhiteCarnoList {
private String opermano;
@TableField(exist = false)
private String opermaname;
@TableField(exist = false)
private String qm;
@TableField(exist = false)
private String mfld;
@TableField(exist = false)
private String mfzzh;
@TableField(exist = false)
private String zdyzh;
public WhiteCarnoList(String verno) {
this.verno = verno;

@ -8,7 +8,7 @@
select
t.id,t.acarno,t.COLOR,t.DT,t.BEGDT,t.ENDDT,
t.VEHICLE_TYPE,t.DATAFLAG,t.DESCRIB,t.BEGDATE,
t.ACCOUNT,t.VERNO,t.bak1,t.bak2,t.bak3,t.memo,t.VEHICLE_CLASS,
t.ACCOUNT,t.VERNO,t.bak1,t.bak2,t.bak3,t.memo,t.VEHICLE_CLASS,t.DISCRP,
<if test="params.DBTYPE ==1">
(case when t.ENDDT&lt; dateadd(day,0,#{params.CURRENTDATE}) THEN '已过期'
when t.ENDDT&lt; dateadd(day,0,#{params.CURRENTWILLDATE}) THEN '将到期'
@ -38,7 +38,6 @@
left join white_ACCOUNT_text wct on(t.ACCOUNT = wct.acountid)
left join white_plate_color wpc on(t.COLOR = wpc.value)
left join WHITE_VEHICLE_CLASS wvc on(t.VEHICLE_CLASS = wvc.value)
<where>
<if test="params.id != null and params.id != ''">
AND t.id = #{params.id}
@ -220,6 +219,9 @@
<if test="params.bak3 !='' and params.bak3 != null">
BAK3= #{params.bak3},
</if>
<if test="params.discrp !='' and params.discrp != null">
DISCRP= #{params.discrp},
</if>
MEMO= #{params.memo},
VEHICLE_CLASS=#{params.vehicleClass}
</set>
@ -274,19 +276,20 @@
<insert id="insertData" parameterType="com.nmgs.entity.WhiteCarnoList">
insert into WHITE_CARNO_TABLE(ID,acarno,COLOR,DT,BEGDT,ENDDT,VEHICLE_TYPE,
DATAFLAG,DESCRIB,BEGDT,ACCOUNT,VERNO,BAK1,BAK2,BAK3,MEMO,
VEHICLE_CLASS) values(#{params.id},#{params.acarno},#{params.color},#{params.dt},#{params.begdt},
VEHICLE_CLASS,DISCRP) values(#{params.id},#{params.acarno},#{params.color},#{params.dt},#{params.begdt},
#{params.enddt},#{params.vehicleType},#{params.dataflag},#{params.describ},#{params.begdate},
#{params.account},#{params.version},#{params.bak1},#{params.bak12},#{params.bak3},#{params.memo},#{params.vehicleClass}
#{params.account},#{params.version},#{params.bak1},#{params.bak12},#{params.bak3},#{params.memo},
#{params.vehicleClass},#{params.discrp}
)
</insert>
<insert id="insertDataBatch" parameterType="java.util.List">
insert into WHITE_CARNO_TABLE(ID,acarno,COLOR,DT,BEGDT,ENDDT,VEHICLE_TYPE,
DATAFLAG,DESCRIB,BEGDATE,ACCOUNT,VERNO,BAK1,BAK2,BAK3,MEMO,
VEHICLE_CLASS) values
VEHICLE_CLASS,DISCRP) values
<foreach collection="list" item="params" separator=",">
(#{params.id},#{params.acarno},#{params.color},#{params.dt},#{params.begdt},
#{params.enddt},#{params.vehicleType},#{params.dataflag},#{params.describ},#{params.begdate},
#{params.account},#{params.verno},#{params.bak1},#{params.bak2},#{params.bak3},#{params.memo},#{params.vehicleClass}
#{params.account},#{params.verno},#{params.bak1},#{params.bak2},#{params.bak3},#{params.memo},#{params.vehicleClass},#{params.discrp}
)
</foreach>
</insert>
@ -300,7 +303,7 @@
select
t.id,t.acarno,t.COLOR,t.DT,t.BEGDT,t.ENDDT,
t.VEHICLE_TYPE,t.DATAFLAG,t.DESCRIB,t.BEGDATE,
t.ACCOUNT,t.VERNO,t.bak1,t.bak2,t.bak3,t.memo,t.VEHICLE_CLASS,
t.ACCOUNT,t.VERNO,t.bak1,t.bak2,t.bak3,t.memo,t.VEHICLE_CLASS,t.DISCRP,
<if test="params.DBTYPE =='1'">
(case when t.ENDDT&lt; dateadd(day,0,#{params.CURRENTDATE}) THEN '已过期'
when t.ENDDT&lt; dateadd(day,0,#{params.CURRENTWILLDATE}) THEN '将到期'

@ -65,7 +65,10 @@ public class SelectDataImpl implements ISelectData {
sql = "select a.value as VALUE,a.text as LABEL from WHITE_VEHICLE_CLASS a WHERE a.useflag='1' order by a.value ";
}else if ("WHITE_PLATECOLOR".equals(selectType)) {//车牌颜色,白名单使用
sql = "select a.value as VALUE,a.text as LABEL from white_PLATE_COLOR a WHERE a.useflag='1' order by a.value ";
}
}else if ("WHITE_ZDYZH".equals(selectType)) {//自定义组合,白名单使用
sql = "select a.memo as VALUE,a.DICNAME as LABEL,a.DISCRP as discrp from WHITE_CARNO_DIC_TABLE a WHERE 1=1 ";
}
try {
ret=mapperI.selectforlist(sql);
} catch (Exception e) {

@ -87,6 +87,46 @@ public class WhiteCarnoListSeriveImpl implements IWhiteCarnoListSerive {
}
whiteCarnoList.setId(UUID.randomUUID().toString().replace("-","").substring(0,32));
whiteCarnoList.setDt(dateTimeFormatter.parse(dateTimeFormatter.format(new Date())));
String memoDb="";
if(!PubTools.isNull(whiteCarnoList.getQm()) && "1".equals(whiteCarnoList.getQm())){//免费类型:全免的话默认为零
memoDb="0000000000";
whiteCarnoList.setDiscrp("");
}else{
//免费路段处理
if (!PubTools.isNull(whiteCarnoList.getMfld())){
String[] ckgFree=whiteCarnoList.getMfld().split(",");
for (int i = 0; i < ckgFree.length; i++){
String r = ckgFree[i]+"";
if (!PubTools.isNull(ckgFree[i]+"")){
//不足两位补0,
if (Integer.parseInt(ckgFree[i]+"") < 10){
memoDb += GetHex("0" + ckgFree[i]+"" + "0" + ckgFree[i]+"" + "00" + "0" + ckgFree[i]+"" + "00");
}else if(Integer.parseInt(ckgFree[i]+"") < 100 && Integer.parseInt(ckgFree[i]+"")>=10){//两位的
memoDb += GetHex(ckgFree[i]+"" + ckgFree[i]+"" + "00" + ckgFree[i]+"" + "00");
}else{
memoDb += GetHex(ckgFree[i].substring(0,2)+ ckgFree[i].substring(0,2)+ ckgFree[i].substring(0,2)+ ckgFree[i].substring(0,2)+ ckgFree[i].substring(0,2));
}
}
}
}
//免费站站组合
if (!PubTools.isNull(whiteCarnoList.getMfzzh())){
String[] ckgFree=whiteCarnoList.getMfzzh().split(",");
for (int i = 0; i < ckgFree.length; i++){
String r = ckgFree[i]+"";
memoDb += GetHex(r);
}
}
//自定义组合
if (!PubTools.isNull(whiteCarnoList.getZdyzh())){
String[] ckgFree=whiteCarnoList.getZdyzh().split(",");
for (int i = 0; i < ckgFree.length; i++){
String r = ckgFree[i]+"";
memoDb += r;
}
}
}
whiteCarnoList.setMemo(memoDb);
ret= whiteCarnoListMapper.insert(whiteCarnoList);
if(ret>0){
WhiteCarnoLogTable wclt=new WhiteCarnoLogTable();
@ -174,6 +214,46 @@ public class WhiteCarnoListSeriveImpl implements IWhiteCarnoListSerive {
public int updateById(WhiteCarnoList params) throws Exception {
int ret=-1;
try{
String memoDb="";
if(!PubTools.isNull(params.getQm()) && "1".equals(params.getQm())){//免费类型:全免的话默认为零
memoDb="0000000000";
}else{
//免费路段处理
if (!PubTools.isNull(params.getMfld())){
String[] ckgFree=params.getMfld().split(",");
for (int i = 0; i < ckgFree.length; i++){
String r = ckgFree[i]+"";
if (!PubTools.isNull(ckgFree[i]+"")){
//不足两位补0,
if (Integer.parseInt(ckgFree[i]+"") < 10){
memoDb += GetHex("0" + ckgFree[i]+"" + "0" + ckgFree[i]+"" + "00" + "0" + ckgFree[i]+"" + "00");
}else if(Integer.parseInt(ckgFree[i]+"") < 100 && Integer.parseInt(ckgFree[i]+"")>=10){//两位的
memoDb += GetHex(ckgFree[i]+"" + ckgFree[i]+"" + "00" + ckgFree[i]+"" + "00");
}else{
memoDb += GetHex(ckgFree[i].substring(0,2)+ ckgFree[i].substring(0,2)+ ckgFree[i].substring(0,2)+ ckgFree[i].substring(0,2)+ ckgFree[i].substring(0,2));
}
}
}
}
//免费站站组合
if (!PubTools.isNull(params.getMfzzh())){
String[] ckgFree=params.getMfzzh().split(",");
for (int i = 0; i < ckgFree.length; i++){
String r = ckgFree[i]+"";
memoDb += GetHex(r);
}
}
//自定义组合
if (!PubTools.isNull(params.getZdyzh())){
String[] ckgFree=params.getZdyzh().split(",");
for (int i = 0; i < ckgFree.length; i++){
String r = ckgFree[i]+"";
memoDb += r;
}
}
}
params.setMemo(memoDb);
ret= whiteCarnoListMapper.updateById(params);
WhiteCarnoLogTable wclt=new WhiteCarnoLogTable();
BeanUtils.copyProperties(params,wclt,"id");
@ -332,4 +412,21 @@ public class WhiteCarnoListSeriveImpl implements IWhiteCarnoListSerive {
public List<WhiteCarnoList> getWhiteCarno(Map<String, Object> params) {
return this.whiteCarnoListMapper.getWhiteCarno(params);
}
private String GetHex(Object o)
{
String r = "", s1 = "", s2 = "";
String s = o.toString();
if (s.length() >= 10)
{
r = "00" + Integer.toHexString(Integer.parseInt(s.substring(0, 2)));
s1 = "0000" + Integer.toHexString(Integer.parseInt(s.substring(2, 6)));
s2 = "0000" + Integer.toHexString(Integer.parseInt(s.substring(6, 10)));
r = r.substring(r.length() - 2, r.length());
s1 = s1.substring(s1.length() - 4, s1.length());
s2 = s2.substring(s2.length() - 4, s2.length());
}
return r + s1 + s2;
}
}

Loading…
Cancel
Save