diff --git a/src/main/java/io/renren/modules/business/controller/BusinessZcmxController.java b/src/main/java/io/renren/modules/business/controller/BusinessZcmxController.java index 121c537..6f95038 100644 --- a/src/main/java/io/renren/modules/business/controller/BusinessZcmxController.java +++ b/src/main/java/io/renren/modules/business/controller/BusinessZcmxController.java @@ -10,6 +10,7 @@ import org.apache.shiro.authz.annotation.RequiresPermissions; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; +import java.math.BigDecimal; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.*; @@ -227,7 +228,7 @@ public class BusinessZcmxController { @RequiresPermissions("business:businesszcmx:list") public R stbzList(@RequestParam Map params){ //System.out.println(params); - List> page = businessOutlayService.stbzList(params); + Map page = businessOutlayService.stbzList(params); return R.ok().put("page", page); } @@ -251,7 +252,7 @@ public class BusinessZcmxController { businessStEntity.setDateDay(date); } if (item.get("stday") != null && !item.get("stday").toString().equals("")) { - businessStEntity.setFixDay(Integer.parseInt(item.get("stday").toString())); + businessStEntity.setFixDay(new BigDecimal(item.get("stday").toString())); } businessStEntityList.add(businessStEntity); } diff --git a/src/main/java/io/renren/modules/business/entity/BusinessStEntity.java b/src/main/java/io/renren/modules/business/entity/BusinessStEntity.java index a778607..8aa77df 100644 --- a/src/main/java/io/renren/modules/business/entity/BusinessStEntity.java +++ b/src/main/java/io/renren/modules/business/entity/BusinessStEntity.java @@ -6,6 +6,7 @@ import com.fasterxml.jackson.annotation.JsonFormat; import lombok.Data; import java.io.Serializable; +import java.math.BigDecimal; import java.util.Date; /** @@ -33,5 +34,5 @@ public class BusinessStEntity implements Serializable { /** * 修正天数 */ - private Integer fixDay; + private BigDecimal fixDay; } diff --git a/src/main/java/io/renren/modules/business/service/BusinessOutlayService.java b/src/main/java/io/renren/modules/business/service/BusinessOutlayService.java index 69d7cfe..9076c66 100644 --- a/src/main/java/io/renren/modules/business/service/BusinessOutlayService.java +++ b/src/main/java/io/renren/modules/business/service/BusinessOutlayService.java @@ -52,7 +52,7 @@ public interface BusinessOutlayService extends IService { * @param params * @return */ - List> stbzList(Map params); + Map stbzList(Map params); /** * 获取最新的年度日期 diff --git a/src/main/java/io/renren/modules/business/service/impl/BusinessOutlayServiceImpl.java b/src/main/java/io/renren/modules/business/service/impl/BusinessOutlayServiceImpl.java index 7115982..cafa7da 100644 --- a/src/main/java/io/renren/modules/business/service/impl/BusinessOutlayServiceImpl.java +++ b/src/main/java/io/renren/modules/business/service/impl/BusinessOutlayServiceImpl.java @@ -15,6 +15,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.math.BigDecimal; +import java.math.RoundingMode; import java.text.DecimalFormat; import java.text.ParseException; import java.text.SimpleDateFormat; @@ -125,12 +126,35 @@ public class BusinessOutlayServiceImpl extends ServiceImpl> stbzList(Map params) { -// String startTime = params.get("year") + "-02"; -// String endTime = (Integer.parseInt((String) params.get("year")) + 1) + "-03"; -// params.put("startTime",startTime); -// params.put("endTime",endTime); - return baseMapper.stbzList(params); + public Map stbzList(Map params) { + BigDecimal pjMoney = new BigDecimal("0"); + BigDecimal pjDay = new BigDecimal("0"); + BigDecimal pjStDay = new BigDecimal("0"); + BigDecimal bzJz = new BigDecimal("0"); + List> list = baseMapper.stbzList(params); + for(int i=0;i map= (Map)list.get(i); + String moneyStr = map.get("money").toString(); + String dayStr = map.get("day").toString(); + String stdayStr = map.get("stday").toString(); + pjMoney = pjMoney.add(new BigDecimal(moneyStr)); + pjDay = pjDay.add(new BigDecimal(dayStr)); + pjStDay = pjStDay.add(new BigDecimal(stdayStr)); + } + + BigDecimal bzTs = new BigDecimal("0"); + bzTs = pjDay.add(pjStDay); + if(bzTs.compareTo(new BigDecimal("0")) != 0){ + bzJz = pjMoney.divide(bzTs,2); + } + + Map mapList = new HashMap<>(); + mapList.put("list",list); + mapList.put("pjMoney",pjMoney.setScale(2, RoundingMode.HALF_UP)); + mapList.put("pjDay",pjDay.setScale(2, RoundingMode.HALF_UP)); + mapList.put("pjStDay",pjStDay.setScale(2, RoundingMode.HALF_UP)); + mapList.put("bzJz",bzJz.setScale(2, RoundingMode.HALF_UP)); + return mapList; } /** diff --git a/src/main/java/io/renren/modules/business/service/impl/BusinessWorkerCqServiceImpl.java b/src/main/java/io/renren/modules/business/service/impl/BusinessWorkerCqServiceImpl.java index fa49c22..9bb9088 100644 --- a/src/main/java/io/renren/modules/business/service/impl/BusinessWorkerCqServiceImpl.java +++ b/src/main/java/io/renren/modules/business/service/impl/BusinessWorkerCqServiceImpl.java @@ -154,28 +154,72 @@ public class BusinessWorkerCqServiceImpl extends ServiceImpl and b.out_time <= #{endTime} - WHERE a.dict_id IN ( '141', '259', '260', '261', '327' ) + WHERE a.dict_id IN ( '141', '259', '260', '262', '327' ) GROUP BY a.NAME ORDER BY a.order_num @@ -782,7 +782,7 @@ sum(hjg) as hjg, sum(xs) as xs, sum(hjq) as hjq, - sum(lxj) as xj, + sum(lxj) as lxj, sum(hjg) - sum(xs) - sum(hjq) - sum(lxj) as yz from ( select