|
@@ -56,14 +56,35 @@ public class EnergyDataServiceImpl extends ServiceImpl<EnergyDataMapper, EnergyD
|
|
|
@Override
|
|
|
public Result listCount(HttpServletRequest httpServletRequest, Map<String, String> paramsMap) {
|
|
|
String farmId = paramsMap.get("farmId");
|
|
|
- String displayType = paramsMap.get("displayType");
|
|
|
- QueryWrapper<EnergyData> queryWrapper = new QueryWrapper<>();
|
|
|
- if ("0".equals(displayType)){
|
|
|
- queryWrapper.eq("display_type",displayType);
|
|
|
+ String waterDisplayType = paramsMap.get("waterDisplayType");
|
|
|
+ String electricityDisplayType = paramsMap.get("electricityDisplayType");
|
|
|
+ String feedDisplayType = paramsMap.get("feedDisplayType");
|
|
|
+ String gasDisplayType = paramsMap.get("gasDisplayType");
|
|
|
+ QueryWrapper<EnergyData> waterqueryWrapper = new QueryWrapper<>();
|
|
|
+ QueryWrapper<EnergyData> electricityqueryWrapper = new QueryWrapper<>();
|
|
|
+ QueryWrapper<EnergyData> feedqueryWrapper = new QueryWrapper<>();
|
|
|
+ QueryWrapper<EnergyData> gasqueryWrapper = new QueryWrapper<>();
|
|
|
+ if (ObjectUtil.isNotEmpty(waterDisplayType)){
|
|
|
+ waterqueryWrapper.eq("display_type",waterDisplayType);
|
|
|
+ }
|
|
|
+ if (ObjectUtil.isNotEmpty(electricityDisplayType)){
|
|
|
+ electricityqueryWrapper.eq("display_type",electricityDisplayType);
|
|
|
+ }
|
|
|
+ if (ObjectUtil.isNotEmpty(feedDisplayType)){
|
|
|
+ feedqueryWrapper.eq("display_type",feedDisplayType);
|
|
|
+ }
|
|
|
+ if (ObjectUtil.isNotEmpty(gasDisplayType)){
|
|
|
+ gasqueryWrapper.eq("display_type",gasDisplayType);
|
|
|
}
|
|
|
Date monthmorning = DataUill.getTimesMonthmorning();
|
|
|
- queryWrapper.eq("farm_id", farmId).ge("create_date", monthmorning);
|
|
|
- EnergyDataVo energyDataVo = dataMapper.listCount(queryWrapper);
|
|
|
+ waterqueryWrapper.eq("farm_id", farmId).ge("create_date", monthmorning);
|
|
|
+ electricityqueryWrapper.eq("farm_id", farmId).ge("create_date", monthmorning);
|
|
|
+ feedqueryWrapper.eq("farm_id", farmId).ge("create_date", monthmorning);
|
|
|
+ gasqueryWrapper.eq("farm_id", farmId).ge("create_date", monthmorning);
|
|
|
+ EnergyDataVo energyDataVo = dataMapper.listWaterCount(waterqueryWrapper);
|
|
|
+ energyDataVo.setGasValue(dataMapper.listGasCount(gasqueryWrapper));
|
|
|
+ energyDataVo.setFeedValue(dataMapper.listFeedCount(feedqueryWrapper));
|
|
|
+ energyDataVo.setElectricityValue(dataMapper.listElectricityCount(electricityqueryWrapper));
|
|
|
QueryWrapper<EnergyWarningInfo> queryWrapper1 = new QueryWrapper<>();
|
|
|
queryWrapper1.eq("farm_id", farmId);
|
|
|
Integer count = warningInfoMapper.selectCount(queryWrapper1);
|
|
@@ -94,8 +115,12 @@ public class EnergyDataServiceImpl extends ServiceImpl<EnergyDataMapper, EnergyD
|
|
|
|
|
|
QueryWrapper<EnergyData> dataQueryWrapper = new QueryWrapper<>();
|
|
|
dataQueryWrapper.eq("farm_id", farmId);
|
|
|
+ if (ObjectUtil.isNotEmpty(displayType)){
|
|
|
+ dataQueryWrapper.eq("display_type",displayType);
|
|
|
+ }
|
|
|
//用水
|
|
|
if ("1".equals(dataType)) {
|
|
|
+ dataQueryWrapper.isNotNull("water_value");
|
|
|
//自定义
|
|
|
if ("4".equals(timeType)) {
|
|
|
startTime = startTime + " 00:00:00";
|
|
@@ -127,6 +152,7 @@ public class EnergyDataServiceImpl extends ServiceImpl<EnergyDataMapper, EnergyD
|
|
|
}
|
|
|
//用电
|
|
|
else if ("2".equals(dataType)) {
|
|
|
+ dataQueryWrapper.isNotNull("electricity_value");
|
|
|
//自定义
|
|
|
if ("4".equals(timeType)) {
|
|
|
startTime = startTime + " 00:00:00";
|
|
@@ -158,6 +184,7 @@ public class EnergyDataServiceImpl extends ServiceImpl<EnergyDataMapper, EnergyD
|
|
|
}
|
|
|
//饲料
|
|
|
else if ("3".equals(dataType)) {
|
|
|
+ dataQueryWrapper.isNotNull("feed_value");
|
|
|
//自定义
|
|
|
if ("4".equals(timeType)) {
|
|
|
startTime = startTime + " 00:00:00";
|
|
@@ -189,9 +216,7 @@ public class EnergyDataServiceImpl extends ServiceImpl<EnergyDataMapper, EnergyD
|
|
|
}
|
|
|
//天然气
|
|
|
else if ("4".equals(dataType)) {
|
|
|
- if (ObjectUtil.isNotEmpty(displayType)){
|
|
|
- dataQueryWrapper.eq("display_type",displayType);
|
|
|
- }
|
|
|
+ dataQueryWrapper.isNotNull("gas_value");
|
|
|
//自定义
|
|
|
if ("4".equals(timeType)) {
|
|
|
startTime = startTime + " 00:00:00";
|
|
@@ -253,60 +278,88 @@ public class EnergyDataServiceImpl extends ServiceImpl<EnergyDataMapper, EnergyD
|
|
|
basePigpens1.forEach(item -> {
|
|
|
idList.add(item.getId());
|
|
|
});//某一层所有单元的id
|
|
|
- QueryWrapper<EnergyData> dataQueryWrapper = new QueryWrapper<>();
|
|
|
- if ("0".equals(displayType)){
|
|
|
- dataQueryWrapper.eq("display_type",displayType);
|
|
|
- }
|
|
|
+
|
|
|
+ QueryWrapper<EnergyData> waterWrapper = new QueryWrapper<>();
|
|
|
+ QueryWrapper<EnergyData> gasWrapper = new QueryWrapper<>();
|
|
|
+ QueryWrapper<EnergyData> electricityWrapper = new QueryWrapper<>();
|
|
|
+ QueryWrapper<EnergyData> feedWrapper = new QueryWrapper<>();
|
|
|
if (idList.size() != 0) {
|
|
|
- dataQueryWrapper.eq("farm_id", farmId).in("unit_id", idList);
|
|
|
+ waterWrapper.eq("farm_id", farmId).in("unit_id", idList);
|
|
|
+ gasWrapper.eq("farm_id", farmId).in("unit_id", idList);
|
|
|
+ electricityWrapper.eq("farm_id", farmId).in("unit_id", idList);
|
|
|
+ feedWrapper.eq("farm_id", farmId).in("unit_id", idList);
|
|
|
if ("4".equals(timeType)) {
|
|
|
//自定义
|
|
|
startTime = startTime + " 00:00:00";
|
|
|
endTime = endTime + " 23:59:59";
|
|
|
- dataQueryWrapper.between("create_date", startTime, endTime);
|
|
|
+ waterWrapper.between("create_date", startTime, endTime);
|
|
|
+ gasWrapper.between("create_date", startTime, endTime);
|
|
|
+ electricityWrapper.between("create_date", startTime, endTime);
|
|
|
+ feedWrapper.between("create_date", startTime, endTime);
|
|
|
} else if ("3".equals(timeType)) {
|
|
|
//本年
|
|
|
DateTime dateTime = DateUtil.beginOfYear(new Date());
|
|
|
- dataQueryWrapper.ge("create_date", dateTime);
|
|
|
+ waterWrapper.ge("create_date", dateTime);
|
|
|
+ gasWrapper.ge("create_date", dateTime);
|
|
|
+ electricityWrapper.ge("create_date", dateTime);
|
|
|
+ feedWrapper.ge("create_date", dateTime);
|
|
|
} else if ("2".equals(timeType)) {
|
|
|
//本月
|
|
|
Date timesMonthmorning = DataUill.getTimesMonthmorning();
|
|
|
- dataQueryWrapper.ge("create_date", timesMonthmorning);
|
|
|
+ waterWrapper.ge("create_date", timesMonthmorning);
|
|
|
+ gasWrapper.ge("create_date", timesMonthmorning);
|
|
|
+ electricityWrapper.ge("create_date", timesMonthmorning);
|
|
|
+ feedWrapper.ge("create_date", timesMonthmorning);
|
|
|
} else if ("1".equals(timeType)) {
|
|
|
//本周
|
|
|
Calendar calendar = Calendar.getInstance();
|
|
|
calendar.set(Calendar.DATE, calendar.get(Calendar.DATE) - 7);
|
|
|
- dataQueryWrapper.ge("create_date", calendar.getTime());
|
|
|
+ waterWrapper.ge("create_date", calendar.getTime());
|
|
|
+ gasWrapper.ge("create_date", calendar.getTime());
|
|
|
+ electricityWrapper.ge("create_date", calendar.getTime());
|
|
|
+ feedWrapper.ge("create_date", calendar.getTime());
|
|
|
}
|
|
|
- dataQueryWrapper.select(
|
|
|
- " IFNULL(SUM(water_value),0) waterValue,IFNULL(SUM(gas_value),0) gasValue" +
|
|
|
- ",IFNULL(SUM(electricity_value),0) electricityValue" +
|
|
|
- ",IFNULL(SUM(feed_value),0) feedValue "
|
|
|
- );
|
|
|
- EnergyData energyData = dataMapper.selectOne(dataQueryWrapper);
|
|
|
+
|
|
|
+
|
|
|
+ if (ObjectUtil.isNotEmpty(displayType)){
|
|
|
+ waterWrapper.eq("display_type",displayType);
|
|
|
+ }
|
|
|
+ if (ObjectUtil.isNotEmpty(displayType)){
|
|
|
+ gasWrapper.eq("display_type",displayType);
|
|
|
+ }
|
|
|
+ if (ObjectUtil.isNotEmpty(displayType)){
|
|
|
+ electricityWrapper.eq("display_type",displayType);
|
|
|
+ }
|
|
|
+ if (ObjectUtil.isNotEmpty(displayType)){
|
|
|
+ feedWrapper.eq("display_type",displayType);
|
|
|
+ }
|
|
|
+
|
|
|
+ waterWrapper.select(" IFNULL(SUM(water_value),0) waterValue ");
|
|
|
+ gasWrapper.select(" IFNULL(SUM(gas_value),0) gasValue ");
|
|
|
+ electricityWrapper.select(" IFNULL(SUM(electricity_value),0) electricityValue ");
|
|
|
+ feedWrapper.select(" IFNULL(SUM(feed_value),0) feedValue ");
|
|
|
if ("1".equals(dataType)) {
|
|
|
- value = Float.parseFloat(energyData.getWaterValue());
|
|
|
+ value = Float.parseFloat(dataMapper.selectOne(waterWrapper).getWaterValue());
|
|
|
jsonObject.put("value", value);
|
|
|
}
|
|
|
if ("2".equals(dataType)) {
|
|
|
- value = Float.parseFloat(energyData.getElectricityValue());
|
|
|
+ value = Float.parseFloat(dataMapper.selectOne(electricityWrapper).getElectricityValue());
|
|
|
jsonObject.put("value", value);
|
|
|
}
|
|
|
if ("3".equals(dataType)) {
|
|
|
- value = Float.parseFloat(energyData.getFeedValue());
|
|
|
+ value = Float.parseFloat(dataMapper.selectOne(feedWrapper).getFeedValue());
|
|
|
jsonObject.put("value", value);
|
|
|
|
|
|
}
|
|
|
if ("4".equals(dataType)) {
|
|
|
- value = Float.parseFloat(energyData.getGasValue());
|
|
|
+ value = Float.parseFloat(dataMapper.selectOne(gasWrapper).getGasValue());
|
|
|
jsonObject.put("value", value);
|
|
|
}
|
|
|
- jsonObject.put("buildName", pigpen.getBuildName());
|
|
|
|
|
|
} else {
|
|
|
jsonObject.put("value", 0);
|
|
|
- jsonObject.put("buildName", pigpen.getBuildName());
|
|
|
}
|
|
|
+ jsonObject.put("buildName", pigpen.getBuildName());
|
|
|
jsonArray.add(jsonObject);
|
|
|
}
|
|
|
|
|
@@ -317,18 +370,34 @@ public class EnergyDataServiceImpl extends ServiceImpl<EnergyDataMapper, EnergyD
|
|
|
@Override
|
|
|
public Result listDataScreen(HttpServletRequest httpServletRequest, Map<String, String> paramsMap) {
|
|
|
String farmId = paramsMap.get("farmId");
|
|
|
- String displayType = paramsMap.get("displayType");
|
|
|
- QueryWrapper<EnergyData> queryWrapper = new QueryWrapper<>();
|
|
|
- queryWrapper.eq("farm_id", farmId);
|
|
|
+ String waterDisplayType = paramsMap.get("waterDisplayType");
|
|
|
+ String electricityDisplayType = paramsMap.get("electricityDisplayType");
|
|
|
+ String feedDisplayType = paramsMap.get("feedDisplayType");
|
|
|
+ String gasDisplayType = paramsMap.get("gasDisplayType");
|
|
|
+ QueryWrapper<EnergyData> queryWrapper1 = new QueryWrapper<>();
|
|
|
+ queryWrapper1.eq("farm_id", farmId);
|
|
|
+ if (ObjectUtil.isNotEmpty(gasDisplayType)){
|
|
|
+ queryWrapper1.eq("display_type",gasDisplayType);
|
|
|
+ }
|
|
|
QueryWrapper<EnergyData> queryWrapper2 = new QueryWrapper<>();
|
|
|
queryWrapper2.eq("farm_id", farmId);
|
|
|
- if (ObjectUtil.isNotEmpty(displayType)){
|
|
|
- queryWrapper2.eq("display_type",displayType);
|
|
|
+ if (ObjectUtil.isNotEmpty(feedDisplayType)){
|
|
|
+ queryWrapper2.eq("display_type",feedDisplayType);
|
|
|
+ }
|
|
|
+ QueryWrapper<EnergyData> queryWrapper3 = new QueryWrapper<>();
|
|
|
+ queryWrapper3.eq("farm_id", farmId);
|
|
|
+ if (ObjectUtil.isNotEmpty(waterDisplayType)){
|
|
|
+ queryWrapper3.eq("display_type",waterDisplayType);
|
|
|
}
|
|
|
- List<EnergyAllDataVo> energyGasDataVos = dataMapper.listDayGas(queryWrapper2);
|
|
|
- List<EnergyAllDataVo> energyFeedDataVos = dataMapper.listDayFeed(queryWrapper);
|
|
|
- List<EnergyAllDataVo> energyWaterDataVos = dataMapper.listDayWater(queryWrapper);
|
|
|
- List<EnergyAllDataVo> energyElectricityDataVos = dataMapper.listDayElectricity(queryWrapper);
|
|
|
+ QueryWrapper<EnergyData> queryWrapper4 = new QueryWrapper<>();
|
|
|
+ queryWrapper4.eq("farm_id", farmId);
|
|
|
+ if (ObjectUtil.isNotEmpty(electricityDisplayType)){
|
|
|
+ queryWrapper4.eq("display_type",electricityDisplayType);
|
|
|
+ }
|
|
|
+ List<EnergyAllDataVo> energyGasDataVos = dataMapper.listDayGas(queryWrapper1.isNotNull("gas_value"));
|
|
|
+ List<EnergyAllDataVo> energyFeedDataVos = dataMapper.listDayFeed(queryWrapper2.isNotNull("feed_value"));
|
|
|
+ List<EnergyAllDataVo> energyWaterDataVos = dataMapper.listDayWater(queryWrapper3.isNotNull("water_value"));
|
|
|
+ List<EnergyAllDataVo> energyElectricityDataVos = dataMapper.listDayElectricity(queryWrapper4.isNotNull("electricity_value"));
|
|
|
JSONObject jsonObject = new JSONObject();
|
|
|
jsonObject.put("gas", energyGasDataVos);
|
|
|
jsonObject.put("water", energyWaterDataVos);
|
|
@@ -341,7 +410,11 @@ public class EnergyDataServiceImpl extends ServiceImpl<EnergyDataMapper, EnergyD
|
|
|
public Result listRankScreen(HttpServletRequest httpServletRequest, Map<String, String> paramsMap) {
|
|
|
String farmId = paramsMap.get("farmId");
|
|
|
String dataType = paramsMap.get("dataType");
|
|
|
- String displayType = paramsMap.get("displayType");
|
|
|
+ String waterDisplayType = paramsMap.get("waterDisplayType");
|
|
|
+ String electricityDisplayType = paramsMap.get("electricityDisplayType");
|
|
|
+ String feedDisplayType = paramsMap.get("feedDisplayType");
|
|
|
+ String gasDisplayType = paramsMap.get("gasDisplayType");
|
|
|
+
|
|
|
if (dataType == null || dataType == "") {
|
|
|
dataType = "1";
|
|
|
}
|
|
@@ -360,32 +433,52 @@ public class EnergyDataServiceImpl extends ServiceImpl<EnergyDataMapper, EnergyD
|
|
|
idList.add(item.getId());
|
|
|
});//某一层所有单元的id
|
|
|
|
|
|
- QueryWrapper<EnergyData> dataQueryWrapper = new QueryWrapper<>();
|
|
|
- if ("0".equals(displayType)){
|
|
|
- dataQueryWrapper.eq("display_type",displayType);
|
|
|
- }
|
|
|
+ QueryWrapper<EnergyData> waterWrapper = new QueryWrapper<>();
|
|
|
+ QueryWrapper<EnergyData> gasWrapper = new QueryWrapper<>();
|
|
|
+ QueryWrapper<EnergyData> electricityWrapper = new QueryWrapper<>();
|
|
|
+ QueryWrapper<EnergyData> feedWrapper = new QueryWrapper<>();
|
|
|
Date timesMonthmorning = DataUill.getTimesMonthmorning();
|
|
|
+
|
|
|
JSONObject jsonObject = new JSONObject();
|
|
|
if (idList.size() != 0) {
|
|
|
- dataQueryWrapper.eq("farm_id", farmId).in("unit_id", idList);
|
|
|
- dataQueryWrapper.ge("create_date", timesMonthmorning);
|
|
|
- dataQueryWrapper.select(
|
|
|
- "IFNULL(SUM(water_value),0) waterValue,IFNULL(SUM(gas_value),0) gasValue" +
|
|
|
- ",IFNULL(SUM(electricity_value),0) electricityValue" +
|
|
|
- ",IFNULL(SUM(feed_value),0) feedValue "
|
|
|
- );
|
|
|
- EnergyData energyData = dataMapper.selectOne(dataQueryWrapper);
|
|
|
+ waterWrapper.eq("farm_id", farmId).in("unit_id", idList);
|
|
|
+ waterWrapper.ge("create_date", timesMonthmorning);
|
|
|
+ gasWrapper.eq("farm_id", farmId).in("unit_id", idList);
|
|
|
+ gasWrapper.ge("create_date", timesMonthmorning);
|
|
|
+ feedWrapper.eq("farm_id", farmId).in("unit_id", idList);
|
|
|
+ feedWrapper.ge("create_date", timesMonthmorning);
|
|
|
+ electricityWrapper.eq("farm_id", farmId).in("unit_id", idList);
|
|
|
+ electricityWrapper.ge("create_date", timesMonthmorning);
|
|
|
+
|
|
|
+ if (ObjectUtil.isNotEmpty(waterDisplayType)){
|
|
|
+ waterWrapper.eq("display_type",waterDisplayType);
|
|
|
+ }
|
|
|
+ if (ObjectUtil.isNotEmpty(gasDisplayType)){
|
|
|
+ gasWrapper.eq("display_type",gasDisplayType);
|
|
|
+ }
|
|
|
+ if (ObjectUtil.isNotEmpty(electricityDisplayType)){
|
|
|
+ electricityWrapper.eq("display_type",electricityDisplayType);
|
|
|
+ }
|
|
|
+ if (ObjectUtil.isNotEmpty(feedDisplayType)){
|
|
|
+ feedWrapper.eq("display_type",feedDisplayType);
|
|
|
+ }
|
|
|
+
|
|
|
+ waterWrapper.select(" IFNULL(SUM(water_value),0) waterValue ");
|
|
|
+ gasWrapper.select(" IFNULL(SUM(gas_value),0) gasValue ");
|
|
|
+ electricityWrapper.select(" IFNULL(SUM(electricity_value),0) electricityValue ");
|
|
|
+ feedWrapper.select(" IFNULL(SUM(feed_value),0) feedValue ");
|
|
|
+
|
|
|
if ("1".equals(dataType)) {
|
|
|
- value = Float.parseFloat(energyData.getWaterValue());
|
|
|
+ value = Float.parseFloat(dataMapper.selectOne(waterWrapper).getWaterValue());
|
|
|
}
|
|
|
if ("2".equals(dataType)) {
|
|
|
- value = Float.parseFloat(energyData.getElectricityValue());
|
|
|
+ value = Float.parseFloat(dataMapper.selectOne(electricityWrapper).getElectricityValue());
|
|
|
}
|
|
|
if ("3".equals(dataType)) {
|
|
|
- value = Float.parseFloat(energyData.getFeedValue());
|
|
|
+ value = Float.parseFloat(dataMapper.selectOne(feedWrapper).getFeedValue());
|
|
|
}
|
|
|
if ("4".equals(dataType)) {
|
|
|
- value = Float.parseFloat(energyData.getGasValue());
|
|
|
+ value = Float.parseFloat(dataMapper.selectOne(gasWrapper).getGasValue());
|
|
|
}
|
|
|
jsonObject.put("value", value);
|
|
|
jsonObject.put("buildName", basePigpen.getBuildName());
|
|
@@ -577,6 +670,42 @@ public class EnergyDataServiceImpl extends ServiceImpl<EnergyDataMapper, EnergyD
|
|
|
return new Result(ResultCode.SUCCESS,array);
|
|
|
}
|
|
|
|
|
|
+ @Override
|
|
|
+ public Result listAll(Map<String, String> paramsMap) {
|
|
|
+ String farmId = paramsMap.get("farmId");
|
|
|
+ String dataType = paramsMap.get("dataType");
|
|
|
+ List<EnergyData> energyData = new ArrayList<>();
|
|
|
+ if ("1".equals(dataType)){
|
|
|
+ energyData = dataMapper.selectList(new QueryWrapper<EnergyData>().lambda()
|
|
|
+ .eq(EnergyData::getFarmId,farmId)
|
|
|
+ .eq(EnergyData::getDisplayType, 1)
|
|
|
+ .isNotNull(EnergyData::getWaterValue)
|
|
|
+ .orderByDesc(EnergyData::getCreateDate));
|
|
|
+ }
|
|
|
+ if ("2".equals(dataType)){
|
|
|
+ energyData = dataMapper.selectList(new QueryWrapper<EnergyData>().lambda()
|
|
|
+ .eq(EnergyData::getFarmId,farmId)
|
|
|
+ .eq(EnergyData::getDisplayType, 1)
|
|
|
+ .isNotNull(EnergyData::getElectricityValue)
|
|
|
+ .orderByDesc(EnergyData::getCreateDate));
|
|
|
+ }
|
|
|
+ if ("3".equals(dataType)){
|
|
|
+ energyData = dataMapper.selectList(new QueryWrapper<EnergyData>().lambda()
|
|
|
+ .eq(EnergyData::getFarmId,farmId)
|
|
|
+ .eq(EnergyData::getDisplayType, 1)
|
|
|
+ .isNotNull(EnergyData::getFeedValue)
|
|
|
+ .orderByDesc(EnergyData::getCreateDate));
|
|
|
+ }
|
|
|
+ if ("4".equals(dataType)){
|
|
|
+ energyData = dataMapper.selectList(new QueryWrapper<EnergyData>().lambda()
|
|
|
+ .eq(EnergyData::getFarmId,farmId)
|
|
|
+ .eq(EnergyData::getDisplayType, 1)
|
|
|
+ .isNotNull(EnergyData::getGasValue)
|
|
|
+ .orderByDesc(EnergyData::getCreateDate));
|
|
|
+ }
|
|
|
+ return new Result(ResultCode.SUCCESS,energyData);
|
|
|
+ }
|
|
|
+
|
|
|
|
|
|
/*数组排序*/
|
|
|
public static JSONArray jsonArraySort(JSONArray jsonArr, String sortKey, boolean is_desc) {
|