From 57fa3510fe6573f70a5dfc043a775da32530fbc6 Mon Sep 17 00:00:00 2001 From: zhangc <zc@123> Date: 星期六, 15 三月 2025 16:22:12 +0800 Subject: [PATCH] 配置信息 --- src/main/java/com/zy/asrs/controller/OpenController.java | 408 +++++++++++++++++++++++++++++---------------------------- 1 files changed, 206 insertions(+), 202 deletions(-) diff --git a/src/main/java/com/zy/asrs/controller/OpenController.java b/src/main/java/com/zy/asrs/controller/OpenController.java index 9a16f6c..cc090c7 100644 --- a/src/main/java/com/zy/asrs/controller/OpenController.java +++ b/src/main/java/com/zy/asrs/controller/OpenController.java @@ -8,7 +8,6 @@ import com.core.common.Cools; import com.core.common.R; import com.core.exception.CoolException; -import com.fasterxml.jackson.databind.ObjectMapper; import com.zy.asrs.entity.*; import com.zy.asrs.entity.param.*; import com.zy.asrs.service.*; @@ -23,15 +22,20 @@ import javax.servlet.http.HttpServletRequest; import java.io.IOException; import java.lang.reflect.Field; -import java.util.*; - -import static org.apache.ibatis.ognl.OgnlRuntime.setFieldValue; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; @Slf4j @RestController @RequestMapping("/open") public class OpenController extends BaseController { + public static final ArrayList<String> APP_KEY_LIST = new ArrayList<String>() {{ + add("ea1f0459efc02a79f046f982767939ae"); + }}; + private static final boolean auth = true; @Autowired private OpenService openService; @Autowired @@ -52,29 +56,70 @@ private LocMastService locMastService; @Autowired private BasCrnErrorService basCrnErrorService; - @Value("${wms.url}") private String wmsUrl; - private static final boolean auth = true; + public static <T> List<T> convertListMapToListObject(List<HashMap<String, Object>> listMap, Class<T> clazz) throws Exception { + List<T> list = new ArrayList<>(); - public static final ArrayList<String> APP_KEY_LIST = new ArrayList<String>() {{ - add("ea1f0459efc02a79f046f982767939ae"); - }}; + for (Map<String, Object> map : listMap) { + T obj = clazz.getDeclaredConstructor().newInstance(); + + for (Map.Entry<String, Object> entry : map.entrySet()) { + String key = entry.getKey(); + Object value = entry.getValue(); + + try { + Field field = clazz.getDeclaredField(key); + field.setAccessible(true); + setFieldValue(obj, field, value); + } catch (NoSuchFieldException e) { + System.out.println("No such field: " + key + " in class " + clazz.getName()); + } + } + + list.add(obj); + } + + return list; + } + + private static void setFieldValue(Object obj, Field field, Object value) throws IllegalAccessException { + Class<?> fieldType = field.getType(); + + if (fieldType.isAssignableFrom(value.getClass())) { + field.set(obj, value); + } else if (fieldType == int.class || fieldType == Integer.class) { + field.set(obj, ((Number) value).intValue()); + } else if (fieldType == long.class || fieldType == Long.class) { + field.set(obj, ((Number) value).longValue()); + } else if (fieldType == double.class || fieldType == Double.class) { + field.set(obj, ((Number) value).doubleValue()); + } else if (fieldType == float.class || fieldType == Float.class) { + field.set(obj, ((Number) value).floatValue()); + } else if (fieldType == boolean.class || fieldType == Boolean.class) { + field.set(obj, (Boolean) value); + } else if (fieldType == String.class) { + field.set(obj, String.valueOf(value)); + } else { + System.out.println("Unsupported field type: " + fieldType.getName()); + } + } + //agv浠诲姟瀹屾垚 @PostMapping("/toAgvTaskOver") @AppAuth(memo = "agv浠诲姟瀹屾垚鎺ュ彛") public R getAgvTaskOver(@RequestHeader String appkey, - @RequestBody TaskOverParam param, - HttpServletRequest request){ + @RequestBody TaskOverParam param, + HttpServletRequest request) { auth(appkey, param, request); if (Cools.isEmpty(param)) { return R.parse(BaseRes.PARAM); } - if (Cools.isEmpty(param.getWharfCode())){ + if (Cools.isEmpty(param.getWharfCode())) { return R.error("鐮佸ご[wharfCode]涓嶈兘涓虹┖"); } - if (Cools.isEmpty(param.getStatus())){ + if (Cools.isEmpty(param.getStatus())) { return R.error("瀹屾垚鏍囪[status]涓嶈兘涓虹┖"); } openService.getAgvTaskOver(param); @@ -85,10 +130,10 @@ @PostMapping("/taskCreate") @Transactional public R taskCreate(@RequestHeader String appkey, - @RequestBody List<TaskCreateParam> param1, - HttpServletRequest request) { + @RequestBody List<TaskCreateParam> param1, + HttpServletRequest request) { auth(appkey, param1, request); - try{ + try { List<TaskCreateParam> paramList = new ArrayList<>(); List<String> locNoList = new ArrayList<>(); for (TaskCreateParam param : param1) { @@ -104,42 +149,42 @@ if (Cools.isEmpty(param.getBarcode())) { return R.error("鏉$爜[barcode]涓嶈兘涓虹┖"); } - String locNo=null; - if(param.getIoType()==1){ - locNo=param.getTargetPoint(); - }else{ - locNo=param.getStartPoint(); + String locNo = null; + if (param.getIoType() == 1) { + locNo = param.getTargetPoint(); + } else { + locNo = param.getStartPoint(); } - try{ + try { LocMast locMast = locMastService.selectOne(new EntityWrapper<LocMast>() - .eq("loc_no", locNo).ne("loc_sts","X")); - if (Cools.isEmpty(locMast)){ - log.error("搴撲綅鍙蜂笉瀛樺湪"+locNo); - return R.error("搴撲綅鍙蜂笉瀛樺湪"+locNo).add("搴撲綅鍙蜂笉瀛樺湪"+locNo); + .eq("loc_no", locNo).ne("loc_sts", "X")); + if (Cools.isEmpty(locMast)) { + log.error("搴撲綅鍙蜂笉瀛樺湪" + locNo); + return R.error("搴撲綅鍙蜂笉瀛樺湪" + locNo).add("搴撲綅鍙蜂笉瀛樺湪" + locNo); } - }catch (Exception e){ - log.error("搴撲綅鍙锋娴嬬▼搴忓紓甯�==銆嬪紓甯镐俊鎭�"+e); - return R.error("搴撲綅鍙锋娴嬬▼搴忓紓甯�").add("搴撲綅鍙锋娴嬬▼搴忓紓甯�==銆嬪紓甯镐俊鎭�"+e); + } catch (Exception e) { + log.error("搴撲綅鍙锋娴嬬▼搴忓紓甯�==銆嬪紓甯镐俊鎭�" + e); + return R.error("搴撲綅鍙锋娴嬬▼搴忓紓甯�").add("搴撲綅鍙锋娴嬬▼搴忓紓甯�==銆嬪紓甯镐俊鎭�" + e); } - LocMast locMast=locMastService.selectOne(new EntityWrapper<LocMast>() - .eq("loc_sts","F") - .eq("loc_no",locNo) - .eq("barcode",param.getBarcode())); - if(Cools.isEmpty(locMast)){ - return R.error("璇ュ簱浣嶄笉婊¤冻鍑哄簱鏉′欢"+param.getTargetPoint()); + LocMast locMast = locMastService.selectOne(new EntityWrapper<LocMast>() + .eq("loc_sts", "F") + .eq("loc_no", locNo) + .eq("barcode", param.getBarcode())); + if (Cools.isEmpty(locMast)) { + return R.error("璇ュ簱浣嶄笉婊¤冻鍑哄簱鏉′欢" + param.getTargetPoint()); } - if (!locNoList.contains(locMast.getLocNo())){ + if (!locNoList.contains(locMast.getLocNo())) { locNoList.add(locMast.getLocNo()); paramList.add(param); - }else { - return R.error("璇ュ簱浣嶄笉鑳藉悓鏃朵笅鍙戜袱绗斾换鍔�"+locMast.getLocNo()); + } else { + return R.error("璇ュ簱浣嶄笉鑳藉悓鏃朵笅鍙戜袱绗斾换鍔�" + locMast.getLocNo()); } } - for (TaskCreateParam param : paramList){ + for (TaskCreateParam param : paramList) { openService.taskCreate(param); } - }catch (Exception e){ - log.error("浠诲姟涓嬪彂寮傚父"+e); + } catch (Exception e) { + log.error("浠诲姟涓嬪彂寮傚父" + e); return R.error(); } return R.ok(); @@ -162,16 +207,16 @@ @PostMapping("/pick/and/place/v1") @AppAuth(memo = "agv鍙栨斁璐х敵璇�") public R getAgvPickAndPlaceV1(@RequestHeader String appkey, - @RequestBody TaskOverParam param, - HttpServletRequest request){ + @RequestBody TaskOverParam param, + HttpServletRequest request) { auth(appkey, param, request); if (Cools.isEmpty(param)) { return R.parse(BaseRes.PARAM); } - if (Cools.isEmpty(param.getStaNo())){ + if (Cools.isEmpty(param.getStaNo())) { return R.error("鐮佸ご[staNo]涓嶈兘涓虹┖"); } - if (Cools.isEmpty(param.getType())){ + if (Cools.isEmpty(param.getType())) { return R.error("绫诲瀷[type]涓嶈兘涓虹┖"); } return openService.getAgvPickAndPlaceV1(param); @@ -182,15 +227,15 @@ @AppAuth(memo = "agv鍙栨斁璐у畬鎴愬弽棣�") public R getAgvPickAndPlaceV2(@RequestHeader String appkey, @RequestBody TaskOverParam param, - HttpServletRequest request){ + HttpServletRequest request) { auth(appkey, param, request); if (Cools.isEmpty(param)) { return R.parse(BaseRes.PARAM); } - if (Cools.isEmpty(param.getStaNo())){ + if (Cools.isEmpty(param.getStaNo())) { return R.error("鐮佸ご[staNo]涓嶈兘涓虹┖"); } - if (Cools.isEmpty(param.getType())){ + if (Cools.isEmpty(param.getType())) { return R.error("绫诲瀷[type]涓嶈兘涓虹┖"); } return openService.getAgvPickAndPlaceV2(param); @@ -228,27 +273,27 @@ public R targetWharfApply(@RequestHeader String appkey, @RequestBody WMSAndAGVInterfaceParam param, HttpServletRequest request) throws IOException { - auth(appkey,param,request); + auth(appkey, param, request); - if (Cools.isEmpty(param)){ + if (Cools.isEmpty(param)) { return R.error("鍙傛暟涓虹┖锛�"); - } else if (Cools.isEmpty(param.getTaskNo())){ + } else if (Cools.isEmpty(param.getTaskNo())) { return R.error("宸ヤ綔鍙蜂负绌猴紒"); - } else if (Cools.isEmpty(param.getContainerCode())){ + } else if (Cools.isEmpty(param.getContainerCode())) { return R.error("鎵樼洏缂栫爜涓虹┖锛�"); - } else if (Cools.isEmpty(param.getWharfSource())){ + } else if (Cools.isEmpty(param.getWharfSource())) { return R.error("婧愮爜澶翠负绌猴紒"); - } else if (Cools.isEmpty(param.getFreeWharfs()) || param.getFreeWharfs().size()==0){ + } else if (Cools.isEmpty(param.getFreeWharfs()) || param.getFreeWharfs().size() == 0) { return R.error("绌洪棽鐨勫叆搴撶爜澶达紙AGV锛変负绌猴紒"); } R r = openService.AgvToWCSToWms(param); apiLogService.save("AGV璇锋眰鍏ュ簱鐮佸ご鎺ュ彛" - ,request.getRemoteAddr()+request.getRequestURI() - ,appkey - ,request.getRemoteAddr() - ,JSON.toJSONString(param) - ,r.toString() - ,true + , request.getRemoteAddr() + request.getRequestURI() + , appkey + , request.getRemoteAddr() + , JSON.toJSONString(param) + , r.toString() + , true ); return r; } @@ -257,61 +302,66 @@ @PostMapping("/agvTaskRequest") @AppAuth(memo = "AGV璇锋眰鍔ㄤ綔鎺ュ彛") public R agvTaskRequest(@RequestHeader String appkey, - @RequestBody WMSAndAGVInterfaceParam param, - HttpServletRequest request) { + @RequestBody WMSAndAGVInterfaceParam param, + HttpServletRequest request) { auth(appkey, param, request); - if (Cools.isEmpty(param)){ + if (Cools.isEmpty(param)) { return R.error("鍙傛暟涓虹┖锛�"); - } else if (Cools.isEmpty(param.getRequestType())){ + } else if (Cools.isEmpty(param.getRequestType())) { return R.error("璇锋眰绫诲瀷涓虹┖锛�"); - } else if (Cools.isEmpty(param.getWharfCode())){ + } else if (Cools.isEmpty(param.getWharfCode())) { return R.error("鐮佸ご缂栧彿涓虹┖锛�"); } - Map<String,Integer> map = new HashMap<>(); - map.put("J-1102",102);map.put("J-1101",101); - map.put("J-1103",105);map.put("J-1104",106); - map.put("J-1105",109);map.put("J-1106",110); - map.put("J-1107",113);map.put("J-1108",114); - map.put("J-1109",117);map.put("J-1110",118); - map.put("J-1111",121);map.put("J-1112",122); - map.put("H-1102",300);map.put("H-1101",305); - map.put("G-1102",400);map.put("G-1101",405); + Map<String, Integer> map = new HashMap<>(); + map.put("J-1102", 102); + map.put("J-1101", 101); + map.put("J-1103", 105); + map.put("J-1104", 106); + map.put("J-1105", 109); + map.put("J-1106", 110); + map.put("J-1107", 113); + map.put("J-1108", 114); + map.put("J-1109", 117); + map.put("J-1110", 118); + map.put("J-1111", 121); + map.put("J-1112", 122); + map.put("H-1102", 300); + map.put("H-1101", 305); + map.put("G-1102", 400); + map.put("G-1101", 405); // StaDesc staDesc = staDescService.selectOne(new EntityWrapper<StaDesc>() // .eq("stn_desc", param.getWharfCode())); // // if (Cools.isEmpty(staDesc)){ // return R.error("绋嬪簭鎶ラ敊锛屾湭鏌ヨ鍒扮珯鐐�"); // } - if (Cools.isEmpty(map.get(param.getWharfCode()))){ + if (Cools.isEmpty(map.get(param.getWharfCode()))) { return R.error("鏈煡璇㈠埌绔欑偣"); } BasDevp basDevp = basDevpService.selectById(map.get(param.getWharfCode())); // BasDevp basDevp = basDevpService.selectById(staDesc.getStnNo()); - if (basDevp.getAutoing().equals("Y") && (basDevp.getInEnable().equals("Y") || basDevp.getOutEnable().equals("Y"))){ + if (basDevp.getAutoing().equals("Y") && (basDevp.getInEnable().equals("Y") || basDevp.getOutEnable().equals("Y"))) { apiLogService.save("AGV璇锋眰鍏ュ簱鐮佸ご鎺ュ彛" - ,request.getRemoteAddr()+request.getRequestURI() - ,appkey - ,request.getRemoteAddr() - ,JSON.toJSONString(param) - ,R.ok().toString() - ,true + , request.getRemoteAddr() + request.getRequestURI() + , appkey + , request.getRemoteAddr() + , JSON.toJSONString(param) + , R.ok().toString() + , true ); return R.ok("鍙叆"); - }else { + } else { apiLogService.save("AGV璇锋眰鍏ュ簱鐮佸ご鎺ュ彛" - ,request.getRemoteAddr()+request.getRequestURI() - ,appkey - ,request.getRemoteAddr() - ,JSON.toJSONString(param) - ,R.error("绔欑偣鐘舵�佷笉鍙叆").toString() - ,true + , request.getRemoteAddr() + request.getRequestURI() + , appkey + , request.getRemoteAddr() + , JSON.toJSONString(param) + , R.error("绔欑偣鐘舵�佷笉鍙叆").toString() + , true ); return R.error("绔欑偣鐘舵�佷笉鍙叆"); } - - - } @@ -319,125 +369,125 @@ //浠诲姟涓嬪彂鎺ュ彛 @PostMapping("/outboundTaskSend") @Transactional - public HashMap<String, Object> outboundTaskSend(@RequestBody HashMap<String,Object> hashMap) { + public HashMap<String, Object> outboundTaskSend(@RequestBody HashMap<String, Object> hashMap) { String jsonString = JSON.toJSONString(hashMap.get("TaskList")); - List<CarryParam> params= JSONObject.parseArray(jsonString,CarryParam.class); + List<CarryParam> params = JSONObject.parseArray(jsonString, CarryParam.class); HashMap<String, Object> map = new HashMap<>(); - List<WMSAndAGVInterfaceParam> params1 =new ArrayList<>(); - for (CarryParam param:params){ - if (Cools.isEmpty(param)){ - map.put("Code","0"); - map.put("Msg","鍙傛暟涓虹┖锛�"); + List<WMSAndAGVInterfaceParam> params1 = new ArrayList<>(); + for (CarryParam param : params) { + if (Cools.isEmpty(param)) { + map.put("Code", "0"); + map.put("Msg", "鍙傛暟涓虹┖锛�"); return map; - } else if (Cools.isEmpty(param.getTaskNo())){ - map.put("Code","0"); - map.put("Msg","浠诲姟鍙蜂负绌猴紒"); + } else if (Cools.isEmpty(param.getTaskNo())) { + map.put("Code", "0"); + map.put("Msg", "浠诲姟鍙蜂负绌猴紒"); return map; - } else if (Cools.isEmpty(param.getStereoscopicTaskType())){ - map.put("Code","0"); - map.put("Msg","浠诲姟绫诲瀷涓虹┖锛�"); + } else if (Cools.isEmpty(param.getStereoscopicTaskType())) { + map.put("Code", "0"); + map.put("Msg", "浠诲姟绫诲瀷涓虹┖锛�"); return map; } String fusion = Utils.Fusion(param.getOriginalRowNo(), param.getOriginalFloorNo(), param.getOriginalColumnNo()); param.setStartPoint(fusion); LocMast locMast = locMastService.selectByLocNo(param.getStartPoint()); - if(Cools.isEmpty(locMast)){ - map.put("Code","0"); - map.put("Msg","鍒濆搴撲綅鏃犳硶鎵惧埌锛�"); + if (Cools.isEmpty(locMast)) { + map.put("Code", "0"); + map.put("Msg", "鍒濆搴撲綅鏃犳硶鎵惧埌锛�"); return map; } - HashMap<String,Object> r = new HashMap<>(); + HashMap<String, Object> r = new HashMap<>(); - if(param.getStereoscopicTaskType() == 2){ + if (param.getStereoscopicTaskType() == 2) { //鍑哄簱浠诲姟鍒涘缓 StaDesc staDesc = staDescService.selectOne(new EntityWrapper<StaDesc>() - .eq("type_no",2) - .eq("crn_no",locMast.getCrnNo()) - .eq("stn_no",param.getTerminalNo())); - if(Cools.isEmpty(staDesc)){ - map.put("Code","0"); - map.put("Msg","鍑哄簱璺姴涓嶅瓨鍦紒"); + .eq("type_no", 2) + .eq("crn_no", locMast.getCrnNo()) + .eq("stn_no", param.getTerminalNo())); + if (Cools.isEmpty(staDesc)) { + map.put("Code", "0"); + map.put("Msg", "鍑哄簱璺姴涓嶅瓨鍦紒"); return map; } - r = openService.taskCreate(new TaskCreateParam(param,staDesc.getCrnNo())); - if(r.get("Code").equals("0")){ + r = openService.taskCreate(new TaskCreateParam(param, staDesc.getCrnNo())); + if (r.get("Code").equals("0")) { return r; } - }else if (param.getStereoscopicTaskType() == 3){ + } else if (param.getStereoscopicTaskType() == 3) { String fusion1 = Utils.Fusion(param.getGoalRowNo(), param.getGoalFloorNo(), param.getGoalColumnNo()); param.setTerminalNo(fusion1); //绉诲簱浠诲姟鍒涘缓 - r = openService.taskCreate(new TaskCreateParam(param,locMast.getCrnNo())); - if(r.get("Code").equals("0")){ + r = openService.taskCreate(new TaskCreateParam(param, locMast.getCrnNo())); + if (r.get("Code").equals("0")) { return r; } } apiLogService.save("Wms浠诲姟涓嬪彂鎺ュ彛" - ,request.getRemoteAddr()+request.getRequestURI() - ,"" - ,request.getRemoteAddr() - ,JSON.toJSONString(param) - ,r.toString() - ,true + , request.getRemoteAddr() + request.getRequestURI() + , "" + , request.getRemoteAddr() + , JSON.toJSONString(param) + , r.toString() + , true ); } - map.put("Code","1"); - map.put("Msg","ok"); + map.put("Code", "1"); + map.put("Msg", "ok"); return map; } //浠诲姟鍙栨秷鎺ュ彛 @PostMapping("/taskCancel") public R taskCancel(@RequestHeader String appkey, - @RequestBody WMSAndAGVInterfaceParam param, - HttpServletRequest request) { + @RequestBody WMSAndAGVInterfaceParam param, + HttpServletRequest request) { auth(appkey, param, request); - if (Cools.isEmpty(param)){ + if (Cools.isEmpty(param)) { return R.error("鍙傛暟涓虹┖锛�"); - } else if (Cools.isEmpty(param.getTaskNo())){ + } else if (Cools.isEmpty(param.getTaskNo())) { return R.error("宸ヤ綔鍙蜂负绌猴紒"); - } else if (Cools.isEmpty(param.getIoType())){ + } else if (Cools.isEmpty(param.getIoType())) { return R.error("鎿嶄綔绫诲瀷涓虹┖锛�"); - } else if (Cools.isEmpty(param.getBarcode())){ + } else if (Cools.isEmpty(param.getBarcode())) { return R.error("鎵樼洏鐮佷笉鑳戒负绌猴紒"); } TaskWrk taskWrk = taskWrkService.selectOne(new EntityWrapper<TaskWrk>() .eq("task_no", param.getTaskNo()) - .eq("io_type",param.getIoType()) - .eq("barcode",param.getBarcode())); - if (Cools.isEmpty(taskWrk)){ - return R.error("鏈煡鍒板綋鍓嶄换鍔�---"+param); + .eq("io_type", param.getIoType()) + .eq("barcode", param.getBarcode())); + if (Cools.isEmpty(taskWrk)) { + return R.error("鏈煡鍒板綋鍓嶄换鍔�---" + param); } - boolean sign =false; - switch (param.getTaskStatus()){ + boolean sign = false; + switch (param.getTaskStatus()) { case 1://姝e父鍙栨秷 - if (taskWrk.getStatus()>1){ + if (taskWrk.getStatus() > 1) { return R.error("浠诲姟宸插紑濮嬫墽琛�"); } break; case 2://姝e父瀹屾垚 - if (taskWrk.getStatus()>1){ + if (taskWrk.getStatus() > 1) { return R.error("浠诲姟宸插紑濮嬫墽琛�"); } - sign=true; + sign = true; break; default: return R.error("鏈煡鎿嶄綔"); } - return taskWrkOperate(taskWrk,sign); + return taskWrkOperate(taskWrk, sign); } //浠诲姟鎿嶄綔 - private R taskWrkOperate(TaskWrk taskWrk,boolean sign){ - try{ - if (sign){//瀹屾垚 + private R taskWrkOperate(TaskWrk taskWrk, boolean sign) { + try { + if (sign) {//瀹屾垚 return taskWrkController.complete(taskWrk.getTaskNo()); - }else {//鍙栨秷 + } else {//鍙栨秷 return taskWrkController.cancel(taskWrk.getTaskNo()); } - }catch (Exception e){ + } catch (Exception e) { return R.error(); } } @@ -446,68 +496,22 @@ @GetMapping("/deviceStatus") @Transactional public R deviceStatus() { - List<CrnStatusParam> crnStatusParams=new ArrayList<>(); + List<CrnStatusParam> crnStatusParams = new ArrayList<>(); List<BasCrnp> basCrnps = basCrnpService.selectList(new EntityWrapper<>()); - for (BasCrnp basCrnp:basCrnps){ - CrnStatusParam crnStatusParam=new CrnStatusParam(); + for (BasCrnp basCrnp : basCrnps) { + CrnStatusParam crnStatusParam = new CrnStatusParam(); crnStatusParam.setCrnNo(basCrnp.getCrnNo()); crnStatusParam.setCrnSts(basCrnp.getCrnSts()); crnStatusParam.setErrorCode(basCrnp.getCrnErr()); - BasCrnError error=basCrnErrorService.selectOne(new EntityWrapper<BasCrnError>().eq("error_code",basCrnp.getCrnErr())); - if(Cools.isEmpty(error)){ + BasCrnError error = basCrnErrorService.selectOne(new EntityWrapper<BasCrnError>().eq("error_code", basCrnp.getCrnErr())); + if (Cools.isEmpty(error)) { crnStatusParam.setErrorMsg(""); - }else { + } else { crnStatusParam.setErrorMsg(error.getErrName()); } crnStatusParams.add(crnStatusParam); } return R.ok(crnStatusParams); - } - - public static <T> List<T> convertListMapToListObject(List<HashMap<String, Object>> listMap, Class<T> clazz) throws Exception { - List<T> list = new ArrayList<>(); - - for (Map<String, Object> map : listMap) { - T obj = clazz.getDeclaredConstructor().newInstance(); - - for (Map.Entry<String, Object> entry : map.entrySet()) { - String key = entry.getKey(); - Object value = entry.getValue(); - - try { - Field field = clazz.getDeclaredField(key); - field.setAccessible(true); - setFieldValue(obj, field, value); - } catch (NoSuchFieldException e) { - System.out.println("No such field: " + key + " in class " + clazz.getName()); - } - } - - list.add(obj); - } - - return list; - } - private static void setFieldValue(Object obj, Field field, Object value) throws IllegalAccessException { - Class<?> fieldType = field.getType(); - - if (fieldType.isAssignableFrom(value.getClass())) { - field.set(obj, value); - } else if (fieldType == int.class || fieldType == Integer.class) { - field.set(obj, ((Number) value).intValue()); - } else if (fieldType == long.class || fieldType == Long.class) { - field.set(obj, ((Number) value).longValue()); - } else if (fieldType == double.class || fieldType == Double.class) { - field.set(obj, ((Number) value).doubleValue()); - } else if (fieldType == float.class || fieldType == Float.class) { - field.set(obj, ((Number) value).floatValue()); - } else if (fieldType == boolean.class || fieldType == Boolean.class) { - field.set(obj, (Boolean) value); - } else if (fieldType == String.class) { - field.set(obj, String.valueOf(value)); - } else { - System.out.println("Unsupported field type: " + fieldType.getName()); - } } } -- Gitblit v1.9.1