|
@@ -44,10 +44,11 @@ public class AppPageReportController {
|
|
@ApiOperation(value = "App总览——生产数据(本月)")
|
|
@ApiOperation(value = "App总览——生产数据(本月)")
|
|
public AjaxMessage<Map<String,Object>> getProductionDataForMonth(
|
|
public AjaxMessage<Map<String,Object>> getProductionDataForMonth(
|
|
@ApiParam(value = "公司id,总公司传空值") @RequestParam(required = false) Integer companyOrgId){
|
|
@ApiParam(value = "公司id,总公司传空值") @RequestParam(required = false) Integer companyOrgId){
|
|
- Map<String,Object> map = new HashMap<String,Object>();
|
|
|
|
|
|
+
|
|
List<DeviceWaterSupply> supplyWaterList = appPageReportService.deviceWaterReportForMonth(companyOrgId,"水源",4,1);
|
|
List<DeviceWaterSupply> supplyWaterList = appPageReportService.deviceWaterReportForMonth(companyOrgId,"水源",4,1);
|
|
List<DeviceWaterSupply> makingWaterList = appPageReportService.deviceWaterReportForMonth(companyOrgId,"水厂",3,1);
|
|
List<DeviceWaterSupply> makingWaterList = appPageReportService.deviceWaterReportForMonth(companyOrgId,"水厂",3,1);
|
|
List<DeviceWaterSupply> sellerWaterList = appPageReportService.deviceSellerWaterReportForMonth(companyOrgId,1);
|
|
List<DeviceWaterSupply> sellerWaterList = appPageReportService.deviceSellerWaterReportForMonth(companyOrgId,1);
|
|
|
|
+ Map<String,Object> map = new HashMap<String,Object>();
|
|
map.put("intake", supplyWaterList);
|
|
map.put("intake", supplyWaterList);
|
|
map.put("making", makingWaterList);
|
|
map.put("making", makingWaterList);
|
|
map.put("seller", sellerWaterList);
|
|
map.put("seller", sellerWaterList);
|
|
@@ -66,10 +67,11 @@ public class AppPageReportController {
|
|
public AjaxMessage<Map<String,Object>> getProductionDataForSameYear(
|
|
public AjaxMessage<Map<String,Object>> getProductionDataForSameYear(
|
|
@ApiParam(value = "公司id,总公司传空值") @RequestParam(required = false) Integer companyOrgId){
|
|
@ApiParam(value = "公司id,总公司传空值") @RequestParam(required = false) Integer companyOrgId){
|
|
LocalDate localDate = LocalDate.now();
|
|
LocalDate localDate = LocalDate.now();
|
|
- Map<String,Object> map = new HashMap<String,Object>();
|
|
|
|
|
|
+
|
|
List<DeviceWaterSupply> supplyWaterList = appPageReportService.deviceWaterReportForMonth(companyOrgId,"水源",4,localDate.getMonthValue());
|
|
List<DeviceWaterSupply> supplyWaterList = appPageReportService.deviceWaterReportForMonth(companyOrgId,"水源",4,localDate.getMonthValue());
|
|
List<DeviceWaterSupply> makingWaterList = appPageReportService.deviceWaterReportForMonth(companyOrgId,"水厂",3,localDate.getMonthValue());
|
|
List<DeviceWaterSupply> makingWaterList = appPageReportService.deviceWaterReportForMonth(companyOrgId,"水厂",3,localDate.getMonthValue());
|
|
List<DeviceWaterSupply> sellerWaterList = appPageReportService.deviceSellerWaterReportForMonth(companyOrgId,localDate.getMonthValue());
|
|
List<DeviceWaterSupply> sellerWaterList = appPageReportService.deviceSellerWaterReportForMonth(companyOrgId,localDate.getMonthValue());
|
|
|
|
+ Map<String,Object> map = new HashMap<String,Object>();
|
|
map.put("intake", supplyWaterList);
|
|
map.put("intake", supplyWaterList);
|
|
map.put("making", makingWaterList);
|
|
map.put("making", makingWaterList);
|
|
map.put("seller", sellerWaterList);
|
|
map.put("seller", sellerWaterList);
|
|
@@ -88,10 +90,11 @@ public class AppPageReportController {
|
|
@ApiOperation(value = "App总览——生产数据(近一年)")
|
|
@ApiOperation(value = "App总览——生产数据(近一年)")
|
|
public AjaxMessage<Map<String,Object>> getProductionDataFor12Month(
|
|
public AjaxMessage<Map<String,Object>> getProductionDataFor12Month(
|
|
@ApiParam(value = "公司id,总公司传空值") @RequestParam(required = false) Integer companyOrgId){
|
|
@ApiParam(value = "公司id,总公司传空值") @RequestParam(required = false) Integer companyOrgId){
|
|
- Map<String,Object> map = new HashMap<String,Object>();
|
|
|
|
|
|
+
|
|
List<DeviceWaterSupply> supplyWaterList = appPageReportService.deviceWaterReportForMonth(companyOrgId,"水源",4,12);
|
|
List<DeviceWaterSupply> supplyWaterList = appPageReportService.deviceWaterReportForMonth(companyOrgId,"水源",4,12);
|
|
List<DeviceWaterSupply> makingWaterList = appPageReportService.deviceWaterReportForMonth(companyOrgId,"水厂",3,12);
|
|
List<DeviceWaterSupply> makingWaterList = appPageReportService.deviceWaterReportForMonth(companyOrgId,"水厂",3,12);
|
|
List<DeviceWaterSupply> sellerWaterList = appPageReportService.deviceSellerWaterReportForMonth(companyOrgId,12);
|
|
List<DeviceWaterSupply> sellerWaterList = appPageReportService.deviceSellerWaterReportForMonth(companyOrgId,12);
|
|
|
|
+ Map<String,Object> map = new HashMap<String,Object>();
|
|
map.put("intake", supplyWaterList);
|
|
map.put("intake", supplyWaterList);
|
|
map.put("making", makingWaterList);
|
|
map.put("making", makingWaterList);
|
|
map.put("seller", sellerWaterList);
|
|
map.put("seller", sellerWaterList);
|
|
@@ -104,11 +107,12 @@ public class AppPageReportController {
|
|
public AjaxMessage<Object> getProductionComparisonForSameMonth(@ApiParam(value = "公司id,总公司传空值") @RequestParam(required = false) Integer companyOrgId){
|
|
public AjaxMessage<Object> getProductionComparisonForSameMonth(@ApiParam(value = "公司id,总公司传空值") @RequestParam(required = false) Integer companyOrgId){
|
|
LocalDate now = LocalDate.now();
|
|
LocalDate now = LocalDate.now();
|
|
LocalDate last = now.minusMonths(1);
|
|
LocalDate last = now.minusMonths(1);
|
|
- Map<String,Object> map = new HashMap<String,Object>();
|
|
|
|
|
|
+
|
|
List<DeviceWaterSupply> sameMakingWaterList = appPageReportService.deviceWaterReportForDay(companyOrgId,"水源",4, now.getYear(),now.getMonthValue(),1, now.getYear(),now.getMonthValue(),now.getDayOfMonth());
|
|
List<DeviceWaterSupply> sameMakingWaterList = appPageReportService.deviceWaterReportForDay(companyOrgId,"水源",4, now.getYear(),now.getMonthValue(),1, now.getYear(),now.getMonthValue(),now.getDayOfMonth());
|
|
List<DeviceWaterSupply> lastMakingWaterList = appPageReportService.deviceWaterReportForDay(companyOrgId,"水源",4, last.getYear(),last.getMonthValue(),1, last.getYear(),last.getMonthValue(),last.getDayOfMonth());
|
|
List<DeviceWaterSupply> lastMakingWaterList = appPageReportService.deviceWaterReportForDay(companyOrgId,"水源",4, last.getYear(),last.getMonthValue(),1, last.getYear(),last.getMonthValue(),last.getDayOfMonth());
|
|
List<DeviceWaterSupply> sameSupplyWaterList = appPageReportService.deviceWaterReportForDay(companyOrgId,"水厂",3, now.getYear(),now.getMonthValue(),1, now.getYear(),now.getMonthValue(),now.getDayOfMonth());
|
|
List<DeviceWaterSupply> sameSupplyWaterList = appPageReportService.deviceWaterReportForDay(companyOrgId,"水厂",3, now.getYear(),now.getMonthValue(),1, now.getYear(),now.getMonthValue(),now.getDayOfMonth());
|
|
List<DeviceWaterSupply> lastSupplyWaterList = appPageReportService.deviceWaterReportForDay(companyOrgId,"水厂",3, last.getYear(),last.getMonthValue(),1, last.getYear(),last.getMonthValue(),last.getDayOfMonth());
|
|
List<DeviceWaterSupply> lastSupplyWaterList = appPageReportService.deviceWaterReportForDay(companyOrgId,"水厂",3, last.getYear(),last.getMonthValue(),1, last.getYear(),last.getMonthValue(),last.getDayOfMonth());
|
|
|
|
+ Map<String,Object> map = new HashMap<String,Object>();
|
|
map.put("intakeComparison",appPageReportService.CalculationComparison(sameMakingWaterList,lastMakingWaterList));
|
|
map.put("intakeComparison",appPageReportService.CalculationComparison(sameMakingWaterList,lastMakingWaterList));
|
|
map.put("makingComparison",appPageReportService.CalculationComparison(sameSupplyWaterList,lastSupplyWaterList));
|
|
map.put("makingComparison",appPageReportService.CalculationComparison(sameSupplyWaterList,lastSupplyWaterList));
|
|
List<DeviceWaterSupply> sameSellerWaterList = appPageReportService.deviceSellerWaterReportForMonth(companyOrgId,2);
|
|
List<DeviceWaterSupply> sameSellerWaterList = appPageReportService.deviceSellerWaterReportForMonth(companyOrgId,2);
|
|
@@ -121,7 +125,7 @@ public class AppPageReportController {
|
|
public AjaxMessage<Object> getProductionComparisonForSameYear(@ApiParam(value = "公司id,总公司传空值") @RequestParam(required = false) Integer companyOrgId){
|
|
public AjaxMessage<Object> getProductionComparisonForSameYear(@ApiParam(value = "公司id,总公司传空值") @RequestParam(required = false) Integer companyOrgId){
|
|
LocalDate now = LocalDate.now();
|
|
LocalDate now = LocalDate.now();
|
|
LocalDate last = now.minusYears(1);
|
|
LocalDate last = now.minusYears(1);
|
|
- Map<String,Object> map = new HashMap<String,Object>();
|
|
|
|
|
|
+
|
|
List<DeviceWaterSupply> sameMakingWaterList = appPageReportService.deviceWaterReportForDay(companyOrgId,"水源",4, now.getYear(),1,1, now.getYear(),now.getMonthValue(),now.getDayOfMonth());
|
|
List<DeviceWaterSupply> sameMakingWaterList = appPageReportService.deviceWaterReportForDay(companyOrgId,"水源",4, now.getYear(),1,1, now.getYear(),now.getMonthValue(),now.getDayOfMonth());
|
|
List<DeviceWaterSupply> lastMakingWaterList = appPageReportService.deviceWaterReportForDay(companyOrgId,"水源",4, last.getYear(),1,1, last.getYear(),12,31);
|
|
List<DeviceWaterSupply> lastMakingWaterList = appPageReportService.deviceWaterReportForDay(companyOrgId,"水源",4, last.getYear(),1,1, last.getYear(),12,31);
|
|
List<DeviceWaterSupply> sameSupplyWaterList = appPageReportService.deviceWaterReportForDay(companyOrgId,"水厂",3, now.getYear(),1,1, now.getYear(),now.getMonthValue(),now.getDayOfMonth());
|
|
List<DeviceWaterSupply> sameSupplyWaterList = appPageReportService.deviceWaterReportForDay(companyOrgId,"水厂",3, now.getYear(),1,1, now.getYear(),now.getMonthValue(),now.getDayOfMonth());
|
|
@@ -137,6 +141,7 @@ public class AppPageReportController {
|
|
lastSellerAmount = lastSellerAmount.add(sellerWaterList.get(i).getAmount());
|
|
lastSellerAmount = lastSellerAmount.add(sellerWaterList.get(i).getAmount());
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
+ Map<String,Object> map = new HashMap<String,Object>();
|
|
map.put("intakeComparison",appPageReportService.CalculationComparison(sameMakingWaterList,lastMakingWaterList));
|
|
map.put("intakeComparison",appPageReportService.CalculationComparison(sameMakingWaterList,lastMakingWaterList));
|
|
map.put("makingComparison",appPageReportService.CalculationComparison(sameSupplyWaterList,lastSupplyWaterList));
|
|
map.put("makingComparison",appPageReportService.CalculationComparison(sameSupplyWaterList,lastSupplyWaterList));
|
|
map.put("sellerComparison", lastSellerAmount.compareTo(BigDecimal.ZERO) == 0 ? BigDecimal.ZERO : sameSellerAmount.multiply(new BigDecimal(100)).divide(lastSellerAmount,2));
|
|
map.put("sellerComparison", lastSellerAmount.compareTo(BigDecimal.ZERO) == 0 ? BigDecimal.ZERO : sameSellerAmount.multiply(new BigDecimal(100)).divide(lastSellerAmount,2));
|
|
@@ -149,26 +154,28 @@ public class AppPageReportController {
|
|
LocalDate now = LocalDate.now();
|
|
LocalDate now = LocalDate.now();
|
|
LocalDate last = now.minusMonths(11);
|
|
LocalDate last = now.minusMonths(11);
|
|
|
|
|
|
- Map<String,Object> map = new HashMap<String,Object>();
|
|
|
|
|
|
+
|
|
List<DeviceWaterSupply> sameMakingWaterList = appPageReportService.deviceWaterReportForDay(companyOrgId,"水源",4, last.getYear(),last.getMonthValue(),last.getDayOfMonth(), now.getYear(),now.getMonthValue(),now.getDayOfMonth());
|
|
List<DeviceWaterSupply> sameMakingWaterList = appPageReportService.deviceWaterReportForDay(companyOrgId,"水源",4, last.getYear(),last.getMonthValue(),last.getDayOfMonth(), now.getYear(),now.getMonthValue(),now.getDayOfMonth());
|
|
List<DeviceWaterSupply> sameSupplyWaterList = appPageReportService.deviceWaterReportForDay(companyOrgId,"水厂",3, last.getYear(),last.getMonthValue(),last.getDayOfMonth(),now.getYear(),now.getMonthValue(),now.getDayOfMonth());
|
|
List<DeviceWaterSupply> sameSupplyWaterList = appPageReportService.deviceWaterReportForDay(companyOrgId,"水厂",3, last.getYear(),last.getMonthValue(),last.getDayOfMonth(),now.getYear(),now.getMonthValue(),now.getDayOfMonth());
|
|
LocalDate last2 = last.minusDays(1);
|
|
LocalDate last2 = last.minusDays(1);
|
|
LocalDate last3 = last2.minusMonths(11);
|
|
LocalDate last3 = last2.minusMonths(11);
|
|
List<DeviceWaterSupply> lastMakingWaterList = appPageReportService.deviceWaterReportForDay(companyOrgId,"水源",4, last3.getYear(),last2.getMonthValue(),last2.getDayOfMonth(), last.getYear(),12,31);
|
|
List<DeviceWaterSupply> lastMakingWaterList = appPageReportService.deviceWaterReportForDay(companyOrgId,"水源",4, last3.getYear(),last2.getMonthValue(),last2.getDayOfMonth(), last.getYear(),12,31);
|
|
List<DeviceWaterSupply> lastSupplyWaterList = appPageReportService.deviceWaterReportForDay(companyOrgId,"水厂",3, last.getYear(),1,1, last.getYear(),12,31);
|
|
List<DeviceWaterSupply> lastSupplyWaterList = appPageReportService.deviceWaterReportForDay(companyOrgId,"水厂",3, last.getYear(),1,1, last.getYear(),12,31);
|
|
- List<DeviceWaterSupply> sellerWaterList = appPageReportService.deviceSellerWaterReportForMonth(companyOrgId,now.getMonthValue()+12);
|
|
|
|
|
|
+
|
|
|
|
+ List<DeviceWaterSupply> sellerWaterList = appPageReportService.deviceSellerWaterReportForMonth(companyOrgId,24);
|
|
|
|
|
|
BigDecimal sameSellerAmount = new BigDecimal(0);
|
|
BigDecimal sameSellerAmount = new BigDecimal(0);
|
|
BigDecimal lastSellerAmount = new BigDecimal(0);
|
|
BigDecimal lastSellerAmount = new BigDecimal(0);
|
|
|
|
|
|
for( int i =0 ;i<sellerWaterList.size(); i++){
|
|
for( int i =0 ;i<sellerWaterList.size(); i++){
|
|
- if(i<now.getMonthValue()){
|
|
|
|
|
|
+ if(i>=12){
|
|
sameSellerAmount = sameSellerAmount.add(sellerWaterList.get(i).getAmount());
|
|
sameSellerAmount = sameSellerAmount.add(sellerWaterList.get(i).getAmount());
|
|
}
|
|
}
|
|
else{
|
|
else{
|
|
lastSellerAmount = lastSellerAmount.add(sellerWaterList.get(i).getAmount());
|
|
lastSellerAmount = lastSellerAmount.add(sellerWaterList.get(i).getAmount());
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
+ Map<String,Object> map = new HashMap<String,Object>();
|
|
map.put("intakeComparison",appPageReportService.CalculationComparison(sameMakingWaterList,lastMakingWaterList));
|
|
map.put("intakeComparison",appPageReportService.CalculationComparison(sameMakingWaterList,lastMakingWaterList));
|
|
map.put("makingComparison",appPageReportService.CalculationComparison(sameSupplyWaterList,lastSupplyWaterList));
|
|
map.put("makingComparison",appPageReportService.CalculationComparison(sameSupplyWaterList,lastSupplyWaterList));
|
|
map.put("sellerComparison",lastSellerAmount.compareTo(BigDecimal.ZERO) == 0 ? BigDecimal.ZERO : sameSellerAmount.multiply(new BigDecimal(100)).divide(lastSellerAmount,2));
|
|
map.put("sellerComparison",lastSellerAmount.compareTo(BigDecimal.ZERO) == 0 ? BigDecimal.ZERO : sameSellerAmount.multiply(new BigDecimal(100)).divide(lastSellerAmount,2));
|
|
@@ -177,20 +184,28 @@ public class AppPageReportController {
|
|
|
|
|
|
/**
|
|
/**
|
|
* @Author wangbo
|
|
* @Author wangbo
|
|
- * @Description App 营业总览数据-本月应收实收回收率数据
|
|
|
|
|
|
+ * @Description App 营业总览数据-本月应收实收回收率普通用户用量大用户用量数据
|
|
* @param companyOrgId 公司ID
|
|
* @param companyOrgId 公司ID
|
|
* @return
|
|
* @return
|
|
*/
|
|
*/
|
|
@RequestMapping(value = "getBusinessDataForSameMonth",method = RequestMethod.GET)
|
|
@RequestMapping(value = "getBusinessDataForSameMonth",method = RequestMethod.GET)
|
|
- @ApiOperation(value = "App总览——营业总览应收实收回收率数据(本月)")
|
|
|
|
|
|
+ @ApiOperation(value = "App总览——营业总览应收实收回收率普通用户用量大用户用量数据(本月)")
|
|
public AjaxMessage<Map<String,Object>> getSameMonthBusinessData(
|
|
public AjaxMessage<Map<String,Object>> getSameMonthBusinessData(
|
|
@ApiParam(value = "公司id,总公司传空值") @RequestParam(required = false) Integer companyOrgId){
|
|
@ApiParam(value = "公司id,总公司传空值") @RequestParam(required = false) Integer companyOrgId){
|
|
- Map<String,Object> map = new HashMap<String,Object>();
|
|
|
|
|
|
+
|
|
List<DeviceWaterSupply> sellerWaterList = appPageReportService.deviceSellerAmountReportForMonth(companyOrgId,1);
|
|
List<DeviceWaterSupply> sellerWaterList = appPageReportService.deviceSellerAmountReportForMonth(companyOrgId,1);
|
|
- map.put("totalReceivable", sellerWaterList.get(0).getAmount());
|
|
|
|
- map.put("totalReceived", sellerWaterList.get(0).getAmount2());
|
|
|
|
|
|
+ BigDecimal sum = sellerWaterList.get(0).getGeneralUserAmount().add(sellerWaterList.get(0).getBigUserAmount());
|
|
|
|
+ BigDecimal generalRate =sum.compareTo(BigDecimal.ZERO)==0?BigDecimal.ZERO:sellerWaterList.get(0).getGeneralUserAmount().multiply(new BigDecimal(100)).divide(sum,2);
|
|
|
|
+
|
|
|
|
+ Map<String,Object> map = new HashMap<String,Object>();
|
|
|
|
+ map.put("totalReceivable", sellerWaterList.get(0).getReceivableAmount());
|
|
|
|
+ map.put("totalReceived", sellerWaterList.get(0).getReceivedAmount());
|
|
map.put("amount",sellerWaterList);
|
|
map.put("amount",sellerWaterList);
|
|
- map.put("rate", sellerWaterList.get(0).getAmount().compareTo(BigDecimal.ZERO)==0? 0 : sellerWaterList.get(0).getAmount2().multiply(new BigDecimal(100)).divide(sellerWaterList.get(0).getAmount(),2));
|
|
|
|
|
|
+ map.put("generalUser",sellerWaterList.get(0).getGeneralUserAmount());
|
|
|
|
+ map.put("bigUser",sellerWaterList.get(0).getBigUserAmount());
|
|
|
|
+ map.put("generalUserRate",generalRate);
|
|
|
|
+ map.put("bigUserRate",new BigDecimal(100).subtract(generalRate));
|
|
|
|
+ map.put("recoveryRate", sellerWaterList.get(0).getReceivableAmount().compareTo(BigDecimal.ZERO)==0? 0 : sellerWaterList.get(0).getReceivedAmount().multiply(new BigDecimal(100)).divide(sellerWaterList.get(0).getReceivableAmount(),2));
|
|
return new AjaxMessage<>(ResultStatus.OK,map);
|
|
return new AjaxMessage<>(ResultStatus.OK,map);
|
|
}
|
|
}
|
|
|
|
|
|
@@ -201,22 +216,32 @@ public class AppPageReportController {
|
|
* @return
|
|
* @return
|
|
*/
|
|
*/
|
|
@RequestMapping(value = "getBusinessDataForSameYear",method = RequestMethod.GET)
|
|
@RequestMapping(value = "getBusinessDataForSameYear",method = RequestMethod.GET)
|
|
- @ApiOperation(value = "App总览——营业总览应收实收回收率数据(本年)")
|
|
|
|
|
|
+ @ApiOperation(value = "App总览——营业总览应收实收回收率普通用户用量大用户用量数据(本年)")
|
|
public AjaxMessage<Map<String,Object>> getBusinessDataForSameYear(
|
|
public AjaxMessage<Map<String,Object>> getBusinessDataForSameYear(
|
|
@ApiParam(value = "公司id,总公司传空值") @RequestParam(required = false) Integer companyOrgId){
|
|
@ApiParam(value = "公司id,总公司传空值") @RequestParam(required = false) Integer companyOrgId){
|
|
LocalDate now = LocalDate.now();
|
|
LocalDate now = LocalDate.now();
|
|
- Map<String,Object> map = new HashMap<String,Object>();
|
|
|
|
List<DeviceWaterSupply> sellerWaterList = appPageReportService.deviceSellerAmountReportForMonth(companyOrgId,now.getMonthValue());
|
|
List<DeviceWaterSupply> sellerWaterList = appPageReportService.deviceSellerAmountReportForMonth(companyOrgId,now.getMonthValue());
|
|
BigDecimal totalReceivableAmount = new BigDecimal(0);
|
|
BigDecimal totalReceivableAmount = new BigDecimal(0);
|
|
BigDecimal totalReceivedAmount = new BigDecimal(0);
|
|
BigDecimal totalReceivedAmount = new BigDecimal(0);
|
|
|
|
+ BigDecimal totalGeneralUser = new BigDecimal(0);
|
|
|
|
+ BigDecimal totalBigUser = new BigDecimal(0);
|
|
for(DeviceWaterSupply amount: sellerWaterList){
|
|
for(DeviceWaterSupply amount: sellerWaterList){
|
|
- totalReceivableAmount.add(amount.getAmount());
|
|
|
|
- totalReceivedAmount.add(amount.getAmount2());
|
|
|
|
|
|
+ totalReceivableAmount =totalReceivableAmount.add(amount.getReceivableAmount());
|
|
|
|
+ totalReceivedAmount=totalReceivedAmount.add(amount.getReceivedAmount());
|
|
|
|
+ totalGeneralUser=totalGeneralUser.add(amount.getGeneralUserAmount());
|
|
|
|
+ totalBigUser=totalBigUser.add(amount.getBigUserAmount());
|
|
}
|
|
}
|
|
|
|
+ BigDecimal sum =totalBigUser.add(totalGeneralUser);
|
|
|
|
+ BigDecimal generalRate =sum.compareTo(BigDecimal.ZERO)==0?BigDecimal.ZERO:totalGeneralUser.multiply(new BigDecimal(100)).divide(sum,2);
|
|
|
|
+ Map<String,Object> map = new HashMap<String,Object>();
|
|
map.put("totalReceivable", totalReceivableAmount);
|
|
map.put("totalReceivable", totalReceivableAmount);
|
|
map.put("totalReceived",totalReceivedAmount);
|
|
map.put("totalReceived",totalReceivedAmount);
|
|
map.put("amountDetails",sellerWaterList);
|
|
map.put("amountDetails",sellerWaterList);
|
|
- map.put("rate", sellerWaterList.get(0).getAmount().compareTo(BigDecimal.ZERO)==0? 0 : sellerWaterList.get(0).getAmount2().multiply(new BigDecimal(100)).divide(sellerWaterList.get(0).getAmount(),2));
|
|
|
|
|
|
+ map.put("generalUser",totalGeneralUser);
|
|
|
|
+ map.put("bigUser",totalBigUser);
|
|
|
|
+ map.put("generalUserRate",generalRate);
|
|
|
|
+ map.put("bigUserRate",new BigDecimal(100).subtract(generalRate));
|
|
|
|
+ map.put("recoveryRate", totalReceivableAmount.compareTo(BigDecimal.ZERO)==0? 0 : totalReceivedAmount.multiply(new BigDecimal(100)).divide(totalReceivableAmount,2));
|
|
return new AjaxMessage<>(ResultStatus.OK,map);
|
|
return new AjaxMessage<>(ResultStatus.OK,map);
|
|
}
|
|
}
|
|
|
|
|
|
@@ -227,44 +252,107 @@ public class AppPageReportController {
|
|
* @return
|
|
* @return
|
|
*/
|
|
*/
|
|
@RequestMapping(value = "getBusinessDataForLast12Month",method = RequestMethod.GET)
|
|
@RequestMapping(value = "getBusinessDataForLast12Month",method = RequestMethod.GET)
|
|
- @ApiOperation(value = "App总览——营业总览应收实收回收率数据(近一年)")
|
|
|
|
|
|
+ @ApiOperation(value = "App总览——营业总览应收实收回收率普通用户用量大用户用量数据(近一年)")
|
|
public AjaxMessage<Map<String,Object>> getBusinessDataForLast12Month(
|
|
public AjaxMessage<Map<String,Object>> getBusinessDataForLast12Month(
|
|
@ApiParam(value = "公司id,总公司传空值") @RequestParam(required = false) Integer companyOrgId){
|
|
@ApiParam(value = "公司id,总公司传空值") @RequestParam(required = false) Integer companyOrgId){
|
|
- Map<String,Object> map = new HashMap<String,Object>();
|
|
|
|
|
|
+
|
|
List<DeviceWaterSupply> sellerWaterList = appPageReportService.deviceSellerAmountReportForMonth(companyOrgId,12);
|
|
List<DeviceWaterSupply> sellerWaterList = appPageReportService.deviceSellerAmountReportForMonth(companyOrgId,12);
|
|
BigDecimal totalReceivableAmount = new BigDecimal(0);
|
|
BigDecimal totalReceivableAmount = new BigDecimal(0);
|
|
BigDecimal totalReceivedAmount = new BigDecimal(0);
|
|
BigDecimal totalReceivedAmount = new BigDecimal(0);
|
|
|
|
+ BigDecimal totalGeneralUser = new BigDecimal(0);
|
|
|
|
+ BigDecimal totalBigUser = new BigDecimal(0);
|
|
for(DeviceWaterSupply amount: sellerWaterList){
|
|
for(DeviceWaterSupply amount: sellerWaterList){
|
|
- totalReceivableAmount.add(amount.getAmount());
|
|
|
|
- totalReceivedAmount.add(amount.getAmount2());
|
|
|
|
|
|
+ totalReceivableAmount =totalReceivableAmount.add(amount.getReceivableAmount());
|
|
|
|
+ totalReceivedAmount=totalReceivedAmount.add(amount.getReceivedAmount());
|
|
|
|
+ totalGeneralUser=totalGeneralUser.add(amount.getGeneralUserAmount());
|
|
|
|
+ totalBigUser=totalBigUser.add(amount.getBigUserAmount());
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+ BigDecimal sum =totalBigUser.add(totalGeneralUser);
|
|
|
|
+ BigDecimal generalRate =sum.compareTo(BigDecimal.ZERO)==0?BigDecimal.ZERO:totalGeneralUser.multiply(new BigDecimal(100)).divide(sum,2);
|
|
|
|
+ Map<String,Object> map = new HashMap<String,Object>();
|
|
map.put("totalReceivable", totalReceivableAmount);
|
|
map.put("totalReceivable", totalReceivableAmount);
|
|
map.put("totalReceived",totalReceivedAmount);
|
|
map.put("totalReceived",totalReceivedAmount);
|
|
map.put("amountDetails",sellerWaterList);
|
|
map.put("amountDetails",sellerWaterList);
|
|
- map.put("rate", sellerWaterList.get(0).getAmount().compareTo(BigDecimal.ZERO)==0? 0 : sellerWaterList.get(0).getAmount2().multiply(new BigDecimal(100)).divide(sellerWaterList.get(0).getAmount(),2));
|
|
|
|
|
|
+ map.put("generalUser",totalGeneralUser);
|
|
|
|
+ map.put("bigUser",totalBigUser);
|
|
|
|
+ map.put("generalUserRate",generalRate);
|
|
|
|
+ map.put("bigUserRate",new BigDecimal(100).subtract(generalRate));
|
|
|
|
+ map.put("recoveryRate", totalReceivableAmount.compareTo(BigDecimal.ZERO)==0? 0 : totalReceivedAmount.multiply(new BigDecimal(100)).divide(totalReceivableAmount,2));
|
|
return new AjaxMessage<>(ResultStatus.OK,map);
|
|
return new AjaxMessage<>(ResultStatus.OK,map);
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
+ @RequestMapping(value = "getSellerComparisonForSameMonth",method = RequestMethod.GET)
|
|
|
|
+ @ApiOperation(value = "App总览——营收数据-应收实收环比(本月)")
|
|
|
|
+ public AjaxMessage<Object> getSellerComparisonForSameMonth(@ApiParam(value = "公司id,总公司传空值") @RequestParam(required = false) Integer companyOrgId){
|
|
|
|
+
|
|
|
|
+ List<DeviceWaterSupply> sellerWaterList = appPageReportService.deviceSellerAmountReportForMonth(companyOrgId,2);
|
|
|
|
+ BigDecimal receivableComparison = sellerWaterList.get(1).getReceivableAmount().compareTo(BigDecimal.ZERO)==0 ?BigDecimal.ZERO:sellerWaterList.get(0).getReceivableAmount().multiply(new BigDecimal(100)).divide(sellerWaterList.get(1).getReceivableAmount(),2);
|
|
|
|
+ BigDecimal receivedComparison = sellerWaterList.get(1).getReceivedAmount().compareTo(BigDecimal.ZERO)==0 ?BigDecimal.ZERO:sellerWaterList.get(0).getReceivedAmount().multiply(new BigDecimal(100)).divide(sellerWaterList.get(1).getReceivedAmount(),2);
|
|
|
|
+ Map<String,Object> map = new HashMap<String,Object>();
|
|
|
|
+ map.put("receivableComparison",receivableComparison);
|
|
|
|
+ map.put("receivedComparison",receivedComparison);
|
|
|
|
+ return new AjaxMessage<>(ResultStatus.OK,map);
|
|
|
|
+ }
|
|
|
|
|
|
- @RequestMapping(value = "getReceivableComparisonForSameMonth",method = RequestMethod.GET)
|
|
|
|
- @ApiOperation(value = "App总览——营收数据-应收环比(本月)")
|
|
|
|
- public AjaxMessage<Object> getReceivableComparisonForSameMonth(@ApiParam(value = "公司id,总公司传空值") @RequestParam(required = false) Integer companyOrgId){
|
|
|
|
|
|
+ @RequestMapping(value = "getSellerComparisonForSameYear",method = RequestMethod.GET)
|
|
|
|
+ @ApiOperation(value = "App总览——营收数据-应收实收环比(本年)")
|
|
|
|
+ public AjaxMessage<Object> getSellerComparisonForSameYear(@ApiParam(value = "公司id,总公司传空值") @RequestParam(required = false) Integer companyOrgId){
|
|
LocalDate now = LocalDate.now();
|
|
LocalDate now = LocalDate.now();
|
|
- LocalDate last = now.minusMonths(1);
|
|
|
|
|
|
+
|
|
|
|
+ List<DeviceWaterSupply> sellerWaterList = appPageReportService.deviceSellerAmountReportForMonth(companyOrgId,12+now.getMonthValue());
|
|
|
|
+ BigDecimal receivedSameYearComparison = new BigDecimal(0);
|
|
|
|
+ BigDecimal receivedLastYearComparison = new BigDecimal(0);
|
|
|
|
+ BigDecimal receivableSameYearComparison = new BigDecimal(0);
|
|
|
|
+ BigDecimal receivableLastYearComparison = new BigDecimal(0);
|
|
|
|
+ for(int i=0 ;i<sellerWaterList.size();i++){
|
|
|
|
+ if(i>=12){
|
|
|
|
+ receivedSameYearComparison = receivedSameYearComparison.add(sellerWaterList.get(i).getReceivedAmount());
|
|
|
|
+ receivableSameYearComparison =receivableSameYearComparison.add(sellerWaterList.get(i).getReceivableAmount());
|
|
|
|
+ }
|
|
|
|
+ else{
|
|
|
|
+ receivedLastYearComparison = receivedLastYearComparison.add(sellerWaterList.get(i).getReceivedAmount());
|
|
|
|
+ receivableLastYearComparison =receivableLastYearComparison.add(sellerWaterList.get(i).getReceivableAmount());
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ BigDecimal receivedComparison = receivedLastYearComparison.compareTo(BigDecimal.ZERO)==0 ?BigDecimal.ZERO:receivedSameYearComparison.multiply(new BigDecimal(100)).divide(receivedLastYearComparison,2);
|
|
|
|
+ BigDecimal receivableComparison = receivableLastYearComparison.compareTo(BigDecimal.ZERO)==0 ?BigDecimal.ZERO:receivableSameYearComparison.multiply(new BigDecimal(100)).divide(receivableLastYearComparison,2);
|
|
Map<String,Object> map = new HashMap<String,Object>();
|
|
Map<String,Object> map = new HashMap<String,Object>();
|
|
- List<DeviceWaterSupply> sameMakingWaterList = appPageReportService.deviceWaterReportForDay(companyOrgId,"水源",4, now.getYear(),now.getMonthValue(),1, now.getYear(),now.getMonthValue(),now.getDayOfMonth());
|
|
|
|
- List<DeviceWaterSupply> lastMakingWaterList = appPageReportService.deviceWaterReportForDay(companyOrgId,"水源",4, last.getYear(),last.getMonthValue(),1, last.getYear(),last.getMonthValue(),last.getDayOfMonth());
|
|
|
|
- List<DeviceWaterSupply> sameSupplyWaterList = appPageReportService.deviceWaterReportForDay(companyOrgId,"水厂",3, now.getYear(),now.getMonthValue(),1, now.getYear(),now.getMonthValue(),now.getDayOfMonth());
|
|
|
|
- List<DeviceWaterSupply> lastSupplyWaterList = appPageReportService.deviceWaterReportForDay(companyOrgId,"水厂",3, last.getYear(),last.getMonthValue(),1, last.getYear(),last.getMonthValue(),last.getDayOfMonth());
|
|
|
|
- map.put("intakeComparison",appPageReportService.CalculationComparison(sameMakingWaterList,lastMakingWaterList));
|
|
|
|
- map.put("makingComparison",appPageReportService.CalculationComparison(sameSupplyWaterList,lastSupplyWaterList));
|
|
|
|
- List<DeviceWaterSupply> sameSellerWaterList = appPageReportService.deviceSellerWaterReportForMonth(companyOrgId,2);
|
|
|
|
- map.put("sellerComparison", sameSellerWaterList.get(0).getAmount().compareTo(BigDecimal.ZERO) == 0 ? BigDecimal.ZERO : sameSellerWaterList.get(0).getAmount().multiply(new BigDecimal(100)).divide(sameSellerWaterList.get(1).getAmount(),2));
|
|
|
|
|
|
+ map.put("receivableComparison",receivableComparison);
|
|
|
|
+ map.put("receivedComparison",receivedComparison);
|
|
return new AjaxMessage<>(ResultStatus.OK,map);
|
|
return new AjaxMessage<>(ResultStatus.OK,map);
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ @RequestMapping(value = "getSellerComparisonForLast12Month",method = RequestMethod.GET)
|
|
|
|
+ @ApiOperation(value = "App总览——营收数据-应收实收环比(本年)")
|
|
|
|
+ public AjaxMessage<Object> getSellerComparisonForLast12Month(@ApiParam(value = "公司id,总公司传空值") @RequestParam(required = false) Integer companyOrgId){
|
|
|
|
+ BigDecimal receivedSameYearComparison = new BigDecimal(0);
|
|
|
|
+ BigDecimal receivedLastYearComparison = new BigDecimal(0);
|
|
|
|
+ BigDecimal receivableSameYearComparison = new BigDecimal(0);
|
|
|
|
+ BigDecimal receivableLastYearComparison = new BigDecimal(0);
|
|
|
|
+ List<DeviceWaterSupply> sellerWaterList = appPageReportService.deviceSellerAmountReportForMonth(companyOrgId,24);
|
|
|
|
+
|
|
|
|
+ for(int i=0;i<sellerWaterList.size();i++){
|
|
|
|
|
|
|
|
+ if(i>=12){
|
|
|
|
+ receivedSameYearComparison = receivedSameYearComparison.add(sellerWaterList.get(i).getReceivedAmount());
|
|
|
|
+ receivableSameYearComparison =receivableSameYearComparison.add(sellerWaterList.get(i).getReceivableAmount());
|
|
|
|
+ }
|
|
|
|
+ else{
|
|
|
|
+ receivedLastYearComparison = receivedLastYearComparison.add(sellerWaterList.get(i).getReceivedAmount());
|
|
|
|
+ receivableLastYearComparison =receivableLastYearComparison.add(sellerWaterList.get(i).getReceivableAmount());
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ BigDecimal receivedComparison = receivedLastYearComparison.compareTo(BigDecimal.ZERO)==0 ?BigDecimal.ZERO:receivedSameYearComparison.multiply(new BigDecimal(100)).divide(receivedLastYearComparison,2);
|
|
|
|
+ BigDecimal receivableComparison = receivableLastYearComparison.compareTo(BigDecimal.ZERO)==0 ?BigDecimal.ZERO:receivableSameYearComparison.multiply(new BigDecimal(100)).divide(receivableLastYearComparison,2);
|
|
|
|
+ Map<String,Object> map = new HashMap<String,Object>();
|
|
|
|
+ map.put("receivableComparison",receivableComparison);
|
|
|
|
+ map.put("receivedComparison",receivedComparison);
|
|
|
|
+ return new AjaxMessage<>(ResultStatus.OK,map);
|
|
|
|
+ }
|
|
|
|
|
|
|
|
|
|
}
|
|
}
|