|
@@ -71,17 +71,34 @@ public class BasePigpenServiceImpl extends ServiceImpl<BasePigpenMapper, BasePig
|
|
|
Integer id = basePigpen.getId();
|
|
|
String buildName = basePigpen.getBuildName();
|
|
|
Integer floorNum = basePigpenDto.getFloorNum();
|
|
|
- for (Integer integer = 1; integer <= floorNum; integer++) {
|
|
|
+ Integer unitNum = basePigpenDto.getUnitNum();
|
|
|
+ for (Integer integer = 1; integer <= unitNum; integer++) {
|
|
|
BasePigpen basePigpen1 = new BasePigpen();
|
|
|
basePigpen1.setFType(2);
|
|
|
basePigpen1.setParentId(id);
|
|
|
- basePigpen1.setBuildName(buildName + Convert.numberToChinese(integer, false) + "层");
|
|
|
- basePigpen1.setOther1(Convert.numberToChinese(integer, false) + "层");
|
|
|
+ basePigpen1.setBuildName(buildName + Convert.numberToChinese(integer, false) + "单元");
|
|
|
+ basePigpen1.setOther1(Convert.numberToChinese(integer, false) + "单元");
|
|
|
basePigpen1.setOther2("0," + id);
|
|
|
basePigpen1.setFarmId(basePigpen.getFarmId());
|
|
|
basePigpen1.setStageCode(basePigpen.getStageCode());
|
|
|
basePigpenMapper.insert(basePigpen1);
|
|
|
}
|
|
|
+ QueryWrapper<BasePigpen> queryWrapper = new QueryWrapper<>();
|
|
|
+ queryWrapper.eq("parent_id", id);
|
|
|
+ List<BasePigpen> basePigpens = basePigpenMapper.selectList(queryWrapper);
|
|
|
+ for (BasePigpen pigpen : basePigpens) {
|
|
|
+ for (Integer integer = 1; integer <= floorNum; integer++) {
|
|
|
+ BasePigpen basePigpen1 = new BasePigpen();
|
|
|
+ basePigpen1.setFType(3);
|
|
|
+ basePigpen1.setParentId(pigpen.getId());
|
|
|
+ basePigpen1.setBuildName(pigpen.getBuildName() + Convert.numberToChinese(integer, false) + "层");
|
|
|
+ basePigpen1.setOther1(Convert.numberToChinese(integer, false) + "层");
|
|
|
+ basePigpen1.setOther2(pigpen.getOther2()+","+pigpen.getId());
|
|
|
+ basePigpen1.setFarmId(basePigpen.getFarmId());
|
|
|
+ basePigpen1.setStageCode(basePigpen.getStageCode());
|
|
|
+ basePigpenMapper.insert(basePigpen1);
|
|
|
+ }
|
|
|
+ }
|
|
|
return ResultUtil.addResult(insert);
|
|
|
}
|
|
|
|
|
@@ -158,43 +175,46 @@ public class BasePigpenServiceImpl extends ServiceImpl<BasePigpenMapper, BasePig
|
|
|
gateways.forEach(item->{
|
|
|
idList.add(item.getId());
|
|
|
});
|
|
|
- QueryWrapper<Terminal> queryWrapper1 = new QueryWrapper<>();
|
|
|
- queryWrapper1.in("gateway_id", idList);
|
|
|
- List<Terminal> terminals = terminalMapper.selectList(queryWrapper1);
|
|
|
- for (Terminal terminal : terminals) {
|
|
|
- if (terminal.getStatus() == 0) {
|
|
|
- offTerminal++;
|
|
|
- } else {
|
|
|
- onTerminal++;
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- List<Integer> idList2 = new ArrayList<>();
|
|
|
- terminals.forEach(item->{
|
|
|
- idList2.add(item.getId());
|
|
|
- });
|
|
|
-
|
|
|
- QueryWrapper<TerminalPort> queryWrapper2 = new QueryWrapper<>();
|
|
|
- queryWrapper2.in("terminal_id", idList2);
|
|
|
- List<TerminalPort> terminalPorts = portMapper.selectList(queryWrapper2);
|
|
|
- for (TerminalPort terminal : terminalPorts) {
|
|
|
- if (terminal.getLocationId() != null) {
|
|
|
+ if (idList.size() > 0) {
|
|
|
+ QueryWrapper<Terminal> queryWrapper1 = new QueryWrapper<>();
|
|
|
+ queryWrapper1.in("gateway_id", idList);
|
|
|
+ List<Terminal> terminals = terminalMapper.selectList(queryWrapper1);
|
|
|
+ for (Terminal terminal : terminals) {
|
|
|
if (terminal.getStatus() == 0) {
|
|
|
- offPort++;
|
|
|
+ offTerminal++;
|
|
|
} else {
|
|
|
- onPort++;
|
|
|
- }
|
|
|
- if (terminal.getHeightTempWarning() == 1) {
|
|
|
- tempCount++;
|
|
|
+ onTerminal++;
|
|
|
}
|
|
|
- if (terminal.getChargingWarning() == 1) {
|
|
|
- chargingCount++;
|
|
|
- }
|
|
|
- if (terminal.getLeakageWarning() == 1) {
|
|
|
- leakageCount++;
|
|
|
+ }
|
|
|
+ List<Integer> idList2 = new ArrayList<>();
|
|
|
+ terminals.forEach(item->{
|
|
|
+ idList2.add(item.getId());
|
|
|
+ });
|
|
|
+ if (idList2.size() > 0) {
|
|
|
+ QueryWrapper<TerminalPort> queryWrapper2 = new QueryWrapper<>();
|
|
|
+ queryWrapper2.in("terminal_id", idList2);
|
|
|
+ List<TerminalPort> terminalPorts = portMapper.selectList(queryWrapper2);
|
|
|
+ for (TerminalPort terminal : terminalPorts) {
|
|
|
+ if (terminal.getLocationId() != null) {
|
|
|
+ if (terminal.getStatus() == 0) {
|
|
|
+ offPort++;
|
|
|
+ } else {
|
|
|
+ onPort++;
|
|
|
+ }
|
|
|
+ if (terminal.getHeightTempWarning() == 1) {
|
|
|
+ tempCount++;
|
|
|
+ }
|
|
|
+ if (terminal.getChargingWarning() == 1) {
|
|
|
+ chargingCount++;
|
|
|
+ }
|
|
|
+ if (terminal.getLeakageWarning() == 1) {
|
|
|
+ leakageCount++;
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
JSONObject jsonObject = new JSONObject();
|
|
|
jsonObject.put("onGateway", onGateway);
|
|
|
jsonObject.put("offGateway", offGateway);
|
|
@@ -229,12 +249,13 @@ public class BasePigpenServiceImpl extends ServiceImpl<BasePigpenMapper, BasePig
|
|
|
queryWrapper.like(StringUtils.isNotBlank(stageCode), "stage_code", stageCode);
|
|
|
queryWrapper.eq(StringUtils.isNotBlank(farmCode), "farm_id", farmCode);
|
|
|
queryWrapper.eq("other3", type);
|
|
|
- queryWrapper.orderByAsc("sort");
|
|
|
+ queryWrapper.orderByAsc("id");
|
|
|
//创建排序
|
|
|
List<BasePigpen> basePigpens = basePigpenMapper.selectList(queryWrapper);
|
|
|
//将结果List改为树
|
|
|
List<TreeBasePigpen> treeBasePigpens = parseBizBaseArea(basePigpens);
|
|
|
- return new Result(ResultCode.SUCCESS, treeBasePigpens);
|
|
|
+ List<TreeBasePigpen> pigpens = jsonArraySort(treeBasePigpens, false);
|
|
|
+ return new Result(ResultCode.SUCCESS, pigpens);
|
|
|
}
|
|
|
|
|
|
/**
|
|
@@ -276,49 +297,49 @@ public class BasePigpenServiceImpl extends ServiceImpl<BasePigpenMapper, BasePig
|
|
|
}
|
|
|
|
|
|
/*数组排序*/
|
|
|
-// public static List<TreeBasePigpen> jsonArraySort(List<BasePigpen> bizBaseAreas, String sortKey, boolean is_desc) {
|
|
|
-// //存放排序结果json数组
|
|
|
-// JSONArray sortedJsonArray = new JSONArray();
|
|
|
-// //用于排序的list
|
|
|
-//
|
|
|
-// List<JSONObject> jsonValues = new ArrayList<JSONObject>();
|
|
|
-// //将参数json数组每一项取出,放入list
|
|
|
-// for (int i = 0; i < bizBaseAreas.size(); i++) {
|
|
|
-// jsonValues.add(jsonArr.getJSONObject(i));
|
|
|
-// }
|
|
|
-// //快速排序,重写compare方法,完成按指定字段比较,完成排序
|
|
|
-// Collections.sort(jsonValues, new Comparator<JSONObject>() {
|
|
|
-// //排序字段
|
|
|
-// private final String KEY_NAME = sortKey;
|
|
|
-//
|
|
|
-// //重写compare方法
|
|
|
-// @Override
|
|
|
-// public int compare(JSONObject a, JSONObject b) {
|
|
|
-// //如果用String接会导致一位数和两位数混合比对的时候不能准确比出来,要用int类型接
|
|
|
-// //String valA = new String();
|
|
|
-// //String valB = new String();
|
|
|
-// Float valA = 0.00f;
|
|
|
-// Float valB = 0.00f;
|
|
|
-// try {
|
|
|
-// valA = Float.parseFloat(a.getString(KEY_NAME));
|
|
|
-// valB = Float.parseFloat(b.getString(KEY_NAME));
|
|
|
-// } catch (JSONException e) {
|
|
|
-// e.printStackTrace();
|
|
|
-// }
|
|
|
-// //是升序还是降序
|
|
|
-// if (is_desc) {
|
|
|
-// return -valA.compareTo(valB);
|
|
|
-// } else {
|
|
|
-// return -valB.compareTo(valA);
|
|
|
-// }
|
|
|
-//
|
|
|
-// }
|
|
|
-// });
|
|
|
-// //将排序后结果放入结果jsonArray
|
|
|
-// for (int i = 0; i < jsonArr.size(); i++) {
|
|
|
-// sortedJsonArray.add(jsonValues.get(i));
|
|
|
-// }
|
|
|
-//
|
|
|
-// return sortedJsonArray;
|
|
|
-// }
|
|
|
+ public static List<TreeBasePigpen> jsonArraySort(List<TreeBasePigpen> bizBaseAreas, boolean is_desc) {
|
|
|
+ //存放排序结果json数组
|
|
|
+ List<TreeBasePigpen> sortedJsonArray = new ArrayList<>();
|
|
|
+ //用于排序的list
|
|
|
+
|
|
|
+ List<TreeBasePigpen> jsonValues = new ArrayList<TreeBasePigpen>();
|
|
|
+ //将参数json数组每一项取出,放入list
|
|
|
+ for (int i = 0; i < bizBaseAreas.size(); i++) {
|
|
|
+ jsonValues.add(bizBaseAreas.get(i));
|
|
|
+ }
|
|
|
+ //快速排序,重写compare方法,完成按指定字段比较,完成排序
|
|
|
+ Collections.sort(jsonValues, new Comparator<TreeBasePigpen>() {
|
|
|
+ //排序字段
|
|
|
+
|
|
|
+
|
|
|
+ //重写compare方法
|
|
|
+ @Override
|
|
|
+ public int compare(TreeBasePigpen a, TreeBasePigpen b) {
|
|
|
+ //如果用String接会导致一位数和两位数混合比对的时候不能准确比出来,要用int类型接
|
|
|
+ //String valA = new String();
|
|
|
+ //String valB = new String();
|
|
|
+ Float valA = 0.00f;
|
|
|
+ Float valB = 0.00f;
|
|
|
+ try {
|
|
|
+ valA = Float.parseFloat(a.getId());
|
|
|
+ valB = Float.parseFloat(b.getId());
|
|
|
+ } catch (JSONException e) {
|
|
|
+ e.printStackTrace();
|
|
|
+ }
|
|
|
+ //是升序还是降序
|
|
|
+ if (is_desc) {
|
|
|
+ return -valA.compareTo(valB);
|
|
|
+ } else {
|
|
|
+ return -valB.compareTo(valA);
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+ });
|
|
|
+ //将排序后结果放入结果jsonArray
|
|
|
+ for (int i = 0; i < jsonValues.size(); i++) {
|
|
|
+ sortedJsonArray.add(jsonValues.get(i));
|
|
|
+ }
|
|
|
+
|
|
|
+ return sortedJsonArray;
|
|
|
+ }
|
|
|
}
|