1.标识对应取值
// 包装类型map
Map packMap = new HashMap();
// 包装类型数量默认为0,后边根据数量判断是否新增明细
packMap.put("daiZi", "0");
packMap.put("zhongYao", "0");
packMap.put("zhouZhuanXiang", "0");
packMap.put("bingDai", "0");
packMap.put("suLiaoDai", "0");
packMap.put("zhiXiang", "0");
packMap.put("zhengJian", "0");
packMap.put("kongZhi", "0");
// WMS包装类型下拉值
packMap.put("daiZiType", "5");
packMap.put("zhongYaoType", "7");
packMap.put("zhouZhuanXiangType", "0");
packMap.put("bingDaiType", "3");
packMap.put("suLiaoDaiType", "2");
packMap.put("zhiXiangType", "1");
// WMS包装下拉转换值->对应托运单细单转换值TMS
packMap.put("daiZiTypeToValue", "7");
packMap.put("zhongYaoTypeToValue", "8");
packMap.put("zhouZhuanXiangTypeToValue", "4");
packMap.put("bingDaiTypeToValue", "9");
packMap.put("suLiaoDaiTypeToValue", "10");
packMap.put("zhiXiangTypeToValue", "2");
packMap.put("zhengJianTypeToValue", "11");
packMap.put("kongZhiTypeToValue", "12");
这种方法通过一个map封装,获取包装类型转换的时候直接取其’ToValue’key的值.
2.返回直接转换值
private Long getConvertValueByHeDan(String type) {
if("daiZi".equals(type)){
return 7L;
}
if("zhongYao".equals(type)){
return 8L;
}
if("zhouZhuanXiang".equals(type)){
return 4L;
}
if("bingDai".equals(type)){
return 9L;
}
if("suLiaoDai".equals(type)){
return 10L;
}
if("zhiXiang".equals(type)){
return 2L;
}
if("zhengJian".equals(type)){
return 11L;
}
if("kongZhi".equals(type)){
return 12L;
}
return null;
}
这种方法是通过传值,直接返回相应的数值.
浅析
当本人写第一种写法的时候,还感到非常有成就感.但是当我突然想到第二种方法的时候又感觉到第一种写法很low.两种方法都能达到目的,但是第二种方法简单易改,可直接查看到.