From ef1fa26353097afa5bb7c3fca2a40f4a55055df6 Mon Sep 17 00:00:00 2001
From: k94314517 <8417338+k94314517@user.noreply.gitee.com>
Date: 星期四, 24 四月 2025 14:13:02 +0800
Subject: [PATCH] 代码初始化

---
 server/meeting/meeting_service/src/main/java/com/doumee/service/business/impl/BookingsServiceImpl.java   |    2 
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformJobServiceImpl.java |   48 +++++++++++-
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/PlatformJobService.java          |    7 +
 server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/PdaPlatformController.java                |   10 ++
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/thrid/BoardServiceImpl.java |  133 ++++++++++++++++++++++++++++-----
 server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/PlatformCloudController.java            |   11 ++
 server/system_timer/src/main/java/com/doumee/jobs/fegin/VisitServiceFegin.java                           |    2 
 server/visits/dmvisit_service/src/main/java/com/doumee/core/wx/wxPlat/WxPlatNotice.java                  |    2 
 8 files changed, 187 insertions(+), 28 deletions(-)

diff --git a/server/meeting/meeting_service/src/main/java/com/doumee/service/business/impl/BookingsServiceImpl.java b/server/meeting/meeting_service/src/main/java/com/doumee/service/business/impl/BookingsServiceImpl.java
index 709ae96..f1395de 100644
--- a/server/meeting/meeting_service/src/main/java/com/doumee/service/business/impl/BookingsServiceImpl.java
+++ b/server/meeting/meeting_service/src/main/java/com/doumee/service/business/impl/BookingsServiceImpl.java
@@ -1316,7 +1316,7 @@
         for (Rooms rooms:roomList) {
             //鏌ヨ褰撳墠浼氳瀹ゆ槸鍚﹀瓨鍦ㄨ繘琛屼腑鐨勪細璁�
             if(bookingsMapper.selectCount(new QueryWrapper<Bookings>().lambda().eq(Bookings::getIsdeleted,Constants.ZERO)
-                    .eq(Bookings::getStatus,Constants.ZERO).isNotNull(Bookings::getStartTimeReal)
+                    .eq(Bookings::getStatus,Constants.ZERO).isNotNull(Bookings::getStartTimeReal).apply(" DATE_FORMAT(NOW(), '%Y-%m-%d') = DATE_FORMAT(START_TIME, '%Y-%m-%d') ")
             )<=Constants.ZERO){
                 //鏍规嵁浼氳瀹よ幏鍙栧彲浠ュ紑鍚殑浼氳璁板綍锛堢涓�鏉¤褰曪級
                 Bookings bookings = bookingsMapper.selectOne(new QueryWrapper<Bookings>().lambda()
diff --git a/server/system_timer/src/main/java/com/doumee/jobs/fegin/VisitServiceFegin.java b/server/system_timer/src/main/java/com/doumee/jobs/fegin/VisitServiceFegin.java
index 950454b..c5a0337 100644
--- a/server/system_timer/src/main/java/com/doumee/jobs/fegin/VisitServiceFegin.java
+++ b/server/system_timer/src/main/java/com/doumee/jobs/fegin/VisitServiceFegin.java
@@ -92,7 +92,7 @@
     @GetMapping("/timer/sms/sendWaitingSmsNotice")
     ApiResponse sendWaitingSmsNotice();
 
-    @ApiOperation("銆愭暟瀛楀寲鏈堝彴銆戞湀鍙颁粖鏃ヤ綔涓氬瀹屾垚閫氱煡瀹氭椂")
+    @ApiOperation("銆愭暟瀛楀寲鏈堝彴銆戞湀鍙颁粖鏃ヤ綔涓氭湭瀹屾垚閫氱煡瀹氭椂")
     @GetMapping("/timer/platformJob/sendUnFinishNotice")
     ApiResponse sendUnFinishNotice();
 
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/PlatformCloudController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/PlatformCloudController.java
index 05737bd..7553e6a 100644
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/PlatformCloudController.java
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/PlatformCloudController.java
@@ -245,6 +245,17 @@
     }
 
 
+    @ApiOperation("鎭㈠浣滀笟")
+    @PostMapping("/restoreWork")
+    @CloudRequiredPermission("business:platform:update")
+    public ApiResponse restoreWork (@RequestBody JobOperateDTO jobOperateDTO, @RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+        jobOperateDTO.setLoginUserInfo(getLoginUser(token));
+        PlatformJob platformJob = platformJobService.restoreWork(jobOperateDTO);
+        platformJobService.cancelInPark(platformJob);
+        return ApiResponse.success("鎿嶄綔鎴愬姛");
+    }
+
+
     @ApiOperation("瀹屾垚浣滀笟")
     @PostMapping("/finishWork")
     @CloudRequiredPermission("business:platform:update")
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/PdaPlatformController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/PdaPlatformController.java
index ff4a5e5..9cf22d8 100644
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/PdaPlatformController.java
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/PdaPlatformController.java
@@ -171,6 +171,16 @@
     }
 
 
+    @ApiOperation("鎭㈠浣滀笟")
+    @PostMapping("/restoreWork")
+    @CloudRequiredPermission("business:platform:update")
+    public ApiResponse restoreWork (@RequestBody JobOperateDTO jobOperateDTO, @RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+        jobOperateDTO.setLoginUserInfo(getLoginUser(token));
+        PlatformJob platformJob = platformJobService.restoreWork(jobOperateDTO);
+        platformJobService.cancelInPark(platformJob);
+        return ApiResponse.success("鎿嶄綔鎴愬姛");
+    }
+
     @ApiOperation("瀹屾垚浣滀笟")
     @PostMapping("/finishWork")
     @CloudRequiredPermission("business:platform:update")
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/core/wx/wxPlat/WxPlatNotice.java b/server/visits/dmvisit_service/src/main/java/com/doumee/core/wx/wxPlat/WxPlatNotice.java
index ae2a8a3..3520756 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/core/wx/wxPlat/WxPlatNotice.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/core/wx/wxPlat/WxPlatNotice.java
@@ -782,7 +782,7 @@
     public void  sendUnFinishNotice(SystemDictDataBiz systemDictDataBiz,WxNoticeConfigMapper wxNoticeConfigMapper,Integer unFinishNum,String objCode,
                                            List<String> openIds){
         String token = this.getToken(systemDictDataBiz);
-        if(StringUtils.isBlank(token)){
+        if(StringUtils.isBlank(token)||Constants.equalsInteger(unFinishNum,Constants.ZERO)){
             return;
         }
         try{
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/PlatformJobService.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/PlatformJobService.java
index 6b2b9b2..78aa1f9 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/PlatformJobService.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/PlatformJobService.java
@@ -257,4 +257,11 @@
     void sendUnFinishNotice();
 
     void dealJobFinish(List<Integer> jobIdList);
+
+    /**
+     * 鎭㈠浣滀笟
+     * @param jobOperateDTO
+     * @return
+     */
+    PlatformJob restoreWork(JobOperateDTO jobOperateDTO);
 }
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformJobServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformJobServiceImpl.java
index c24a0b8..7469b7d 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformJobServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformJobServiceImpl.java
@@ -335,8 +335,14 @@
                 .ge(pageWrap.getModel().getBeginDoneDateStart() != null, PlatformJob::getDoneDate, Utils.Date.getStart(pageWrap.getModel().getBeginDoneDateStart()))
                 .le(pageWrap.getModel().getBeginDoneDateEnd() != null, PlatformJob::getDoneDate, Utils.Date.getEnd(pageWrap.getModel().getBeginDoneDateEnd()))
 
-                .isNotNull(pageWrap.getModel().getJobType() != null && Constants.equalsInteger(Constants.ONE,pageWrap.getModel().getJobType()), PlatformJob::getContractNum)
-                .isNull(pageWrap.getModel().getJobType() != null && Constants.equalsInteger(Constants.ZERO,pageWrap.getModel().getJobType()), PlatformJob::getContractNum)
+//                .isNotNull(pageWrap.getModel().getJobType() != null && Constants.equalsInteger(Constants.ONE,pageWrap.getModel().getJobType()),
+//                        PlatformJob::getContractNum)
+//                .isNull(pageWrap.getModel().getJobType() != null && Constants.equalsInteger(Constants.ZERO,pageWrap.getModel().getJobType()), PlatformJob::getContractNum)
+
+                .exists(pageWrap.getModel().getJobType() != null && Constants.equalsInteger(Constants.ZERO,pageWrap.getModel().getJobType()),
+                        "select 1  from platform_wms_detail tt where tt.isdeleted=0  and  tt.job_id=t.id")
+                .notExists(pageWrap.getModel().getJobType() != null && Constants.equalsInteger(Constants.ONE,pageWrap.getModel().getJobType()),
+                        "select 1  from platform_wms_detail tt where tt.isdeleted=0  and  tt.job_id=t.id")
                 .exists(StringUtils.isNotBlank(pageWrap.getModel().getWmsContractNum()),
                         "select tt.id from platform_wms_detail tt where tt.isdeleted=0 and tt.contract_num='"+pageWrap.getModel().getWmsContractNum()+"' and  tt.job_id=t.id");
         queryWrapper.orderByDesc(PlatformJob::getCreateDate);
@@ -737,7 +743,8 @@
                     PlatformGroup platformGroup = platformGroupMapper.selectById(groupId);
                     if(Objects.nonNull(platformGroup)&&StringUtils.isNotBlank(platformGroup.getUnFinishNoticeUsers())){
                         List<SystemUser> systemUserList = systemUserMapper.selectList(new QueryWrapper<SystemUser>().lambda()
-                                .eq(SystemUser::getDeleted,Constants.ZERO).eq(SystemUser::getStatus,Constants.ZERO).isNotNull(SystemUser::getOpenid)
+                                .eq(SystemUser::getDeleted,Constants.ZERO).eq(SystemUser::getStatus,Constants.ZERO)
+                                .isNotNull(SystemUser::getOpenid)
                                 .in(SystemUser::getMemberId,Arrays.asList(platformGroup.getUnFinishNoticeUsers().split(",")))
                         );
                         if (com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(systemUserList)) {
@@ -753,7 +760,6 @@
                 }
             }
         }
-
 
 
     }
@@ -2453,8 +2459,42 @@
             }
 
         }
+    }
 
 
+
+
+    @Override
+    @Transactional(rollbackFor = {Exception.class,BusinessException.class})
+    public PlatformJob restoreWork(JobOperateDTO jobOperateDTO){
+        if(Objects.isNull(jobOperateDTO)
+                || Objects.isNull(jobOperateDTO.getJobId())){
+            throw new BusinessException(ResponseStatus.BAD_REQUEST);
+        }
+        PlatformJob platformJob = platformJobMapper.selectById(jobOperateDTO.getJobId());
+        if(Objects.isNull(platformJob)||Constants.equalsInteger(platformJob.getIsdeleted(),Constants.ONE)){
+            throw new BusinessException(ResponseStatus.DATA_EMPTY);
+        }
+        if(!Constants.equalsInteger(platformJob.getStatus(),Constants.PlatformJobStatus.EXCEPTION.getKey())){
+            throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"瀵逛笉璧�,涓氬姟鐘舵�佸凡娴佽浆锛�");
+        }
+        Platform platform = platformJoinMapper.selectById(platformJob.getPlatformId());
+        if(Objects.isNull(platform)){
+            throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"鏈煡璇㈠埌鏈堝彴淇℃伅");
+        }
+        PlatformJob oldPlatformJob = new PlatformJob();
+        BeanUtils.copyProperties(platformJob,oldPlatformJob);
+        if(Objects.isNull(platformJob.getStartDate())){
+            platformJob.setStartDate(new Date());
+        }
+        platformJob.setStatus(Constants.PlatformJobStatus.WORKING.getKey());
+        platformJob.setEditDate(new Date());
+        platformJobMapper.updateById(platformJob);
+
+        //瀛樺偍鎿嶄綔鏃ュ織
+        savePlatformLog(Constants.PlatformJobLogType.WORKING.getKey(),oldPlatformJob,platformJob,
+                Constants.PlatformJobLogType.WORKING.getInfo().replace("{data}",platform.getName()));
+        return platformJob;
     }
 
 
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/thrid/BoardServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/thrid/BoardServiceImpl.java
index 7ddc86e..a8ef908 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/thrid/BoardServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/thrid/BoardServiceImpl.java
@@ -1078,27 +1078,31 @@
         data.setCurrentOutDoneNum(getSumTotalByList(currentDoneNum,0,1));//浠婃棩瀹屾垚閲�
         data.setCurrentInNum(beforeInNum.add(data.getCurrentInDoneNum()).add(currentInNum));//褰撳墠鍏ュ簱鎬讳换鍔℃垚閲�
         data.setCurrentOutNum(beforeOutNum.add(data.getCurrentOutDoneNum()).add(currentOutNum));//褰撳墠鍑哄簱鎬讳换鍔℃垚閲�
-
-        //------------浠婃棩鍑哄叆搴撴晥鐜�----------------
-        BigDecimal outHours = getTotalDoneTimes(currentDoneNum,0);//
-        BigDecimal inHours = getTotalDoneTimes(currentDoneNum,1);//
-        if(outHours.compareTo(new BigDecimal(0))>0){
-            data.setTodayOutRate(data.getCurrentOutDoneNum().divide(outHours,2));//褰撳墠鍏ュ簱鎬讳换鍔℃垚閲�
-        }
-        if(inHours.compareTo(new BigDecimal(0))>0){
-            data.setTodayInRate(data.getCurrentInDoneNum().divide(inHours,2));//褰撳墠鍏ュ簱鎬讳换鍔℃垚閲�
-        }
+        data.setTodayOutRate(getDayTotalRata(data.getCurrentOutDoneNum(),DateUtil.getToday()));//褰撴棩鍑哄簱鏁堢巼
+        data.setTodayInRate(getDayTotalRata(data.getCurrentInDoneNum(),DateUtil.getToday()));//褰撴棩鍏ュ簱鏁堢巼
+        data.setMonthOutRate(getMonthRata(monthNum,Constants.ZERO));//鏈湀鍑哄簱鏁堢巼
+        data.setMonthInRate(getMonthRata(monthNum,Constants.ONE));//鏈湀鍑哄簱鏁堢巼
+        //------------浠婃棩鍑哄叆搴撴晥鐜�---------------- 
+//        BigDecimal outHours = getTotalDoneTimes(currentDoneNum,0);//
+//        BigDecimal inHours = getTotalDoneTimes(currentDoneNum,1);//
+//
+//        if(outHours.compareTo(new BigDecimal(0))>0){
+//            data.setTodayOutRate(data.getCurrentOutDoneNum().divide(outHours,2));//褰撳墠鍏ュ簱鎬讳换鍔℃垚閲�
+//        }
+//        if(inHours.compareTo(new BigDecimal(0))>0){
+//            data.setTodayInRate(data.getCurrentInDoneNum().divide(inHours,2));//褰撳墠鍏ュ簱鎬讳换鍔℃垚閲�
+//        }
         //------------鏈湀鍑哄叆搴撴晥鐜�----------------
 //        BigDecimal outMonthNum = getSumTotalByList(monthNum,0,null).add(data.getCurrentOutDoneNum());
-        BigDecimal inMonthNum = getSumTotalByList(monthNum,1,null).add(data.getCurrentInDoneNum());
-        BigDecimal outMonthHours = getTotalDoneTimes(monthNum,0).add(outHours);//
-        BigDecimal inMonthHours = getTotalDoneTimes(monthNum,1).add(inHours);//
-        if(outMonthHours.compareTo(new BigDecimal(0))>0){
-            data.setMonthOutRate(data.getMonthOutTotal().divide(outMonthHours,0,BigDecimal.ROUND_HALF_UP));//鏈湀鍏ュ簱鏁堢巼
-        }
-        if(inMonthHours.compareTo(new BigDecimal(0))>0){
-            data.setMonthInRate(inMonthNum.divide(inMonthHours,0,BigDecimal.ROUND_HALF_UP));//鏈湀鍏ュ簱鏁堢巼
-        }
+//        BigDecimal inMonthNum = getSumTotalByList(monthNum,1,null).add(data.getCurrentInDoneNum());
+//        BigDecimal outMonthHours = getTotalDoneTimes(monthNum,0).add(outHours);//
+//        BigDecimal inMonthHours = getTotalDoneTimes(monthNum,1).add(inHours);//
+//        if(outMonthHours.compareTo(new BigDecimal(0))>0){
+//            data.setMonthOutRate(data.getMonthOutTotal().divide(outMonthHours,0,BigDecimal.ROUND_HALF_UP));//鏈湀鍑哄簱鏁堢巼
+//        }
+//        if(inMonthHours.compareTo(new BigDecimal(0))>0){
+//            data.setMonthInRate(inMonthNum.divide(inMonthHours,0,BigDecimal.ROUND_HALF_UP));//鏈湀鍏ュ簱鏁堢巼
+//        }
         return data;
     }
 
@@ -1110,10 +1114,9 @@
         if(platformLogList!=null && platformLogList.size()>0){
             return new BigDecimal((double)(platformLogList.stream().map(m->Long.valueOf(m.getParam3())).reduce(Long.valueOf(0),Long::sum))/(double)60);
         }
-
         return new BigDecimal(0);
-
     }
+
     private BigDecimal getTotalDoneTimes(List<PlatformJob> list, Integer type) {
         BigDecimal r = new BigDecimal(0);
         if(list==null || list.size() == 0){
@@ -1149,6 +1152,94 @@
         return r;
     }
 
+
+    private BigDecimal getMonthRata(List<PlatformJob> list, Integer type) {
+        BigDecimal r = new BigDecimal(0);
+        if(list==null || list.size() == 0){
+            return r;
+        }
+        List<PlatformJob> jobList= new ArrayList<>();
+        for(PlatformJob job : list) {
+            if (!(Constants.equalsInteger(job.getStatus(), Constants.PlatformJobStatus.DONE.getKey())
+                    || Constants.equalsInteger(job.getStatus(), Constants.PlatformJobStatus.LEAVED.getKey())
+                    || Constants.equalsInteger(job.getStatus(), Constants.PlatformJobStatus.AUTHED_LEAVE.getKey()))) {
+                //鍙煡璇㈠畬鎴愭暟鎹�
+                continue;
+            }
+            if (type != null && type == 0 && (Constants.equalsInteger(job.getType(), Constants.ONE) || Constants.equalsInteger(job.getType(), Constants.THREE))) {
+                //鍑哄簱
+                jobList.add(job);
+            }
+            if (type != null && type == 1 && (Constants.equalsInteger(job.getType(), Constants.ZERO) || Constants.equalsInteger(job.getType(), Constants.TWO) || Constants.equalsInteger(job.getType(), Constants.FOUR))) {
+                //鍏ュ簱
+                jobList.add(job);
+            }
+        }
+        if(CollectionUtils.isNotEmpty(jobList)){
+            //鑾峰彇浠诲姟鏁版嵁
+            List<String> jobDataList = list.stream().filter(i->Objects.nonNull(i.getDoneDate())).map(i->DateUtil.formatDate(i.getDoneDate(),"yyyy-MM-dd")).collect(Collectors.toList());
+            for (String jobDate:jobDataList) {
+                //杩囨护褰撳ぉ鐨勬暟鎹�
+                List<PlatformJob> platformJobList = list.stream().
+                        filter(i->jobDate.equals(DateUtil.formatDate(i.getDoneDate(),"yyyy-MM-dd"))).collect(Collectors.toList());
+                if(CollectionUtils.isNotEmpty(platformJobList)){
+                    //鑾峰彇浠婂ぉ鐨�
+                    r = r.add(this.getDayTotalRata(getSumTotalByList(platformJobList,type,null),jobDate));
+                }
+            }
+        }
+        return r;
+    }
+
+
+    private BigDecimal getDayTotalRata(BigDecimal totalAmount,String today) {
+        BigDecimal r = new BigDecimal(0);
+        //鏌ヨ浠婃棩鏈�鏃�/鏈�鏅氱殑浣滀笟鏁版嵁
+        List<PlatformLog> platformLogList = platformLogMapper.selectList(new QueryWrapper<PlatformLog>()
+                .lambda()
+                .apply(" ( to_days(param1) =  '"+today+"' or to_days(param2) =  '"+today+"' ) ")
+        );
+        if(totalAmount.compareTo(BigDecimal.ZERO)==0||CollectionUtils.isEmpty(platformLogList)){
+            return BigDecimal.ZERO;
+        }
+        if(platformLogList!=null && platformLogList.size()>0){
+            return this.getWorkTime(totalAmount,platformLogList);
+        }
+        return r;
+    }
+
+    /**
+     * 鏌ヨ浣滀笟鏃堕暱锛堝皬鏃讹級
+     * @param totalAmount
+     * @param platformLogList
+     * @return
+     */
+    public BigDecimal getWorkTime(BigDecimal totalAmount,List<PlatformLog> platformLogList){
+        if(CollectionUtils.isEmpty(platformLogList)){
+            return BigDecimal.ZERO;
+        }
+        //鑾峰彇寮�濮嬫椂闂�
+        List<Long> startTimeList = platformLogList.stream().filter(i->Objects.nonNull(i.getParam1())).map(i->DateUtil.fromStringToDate("yyyy-MM-dd HH:mm:ss",i.getParam1()).getTime()).collect(Collectors.toList());
+        Long startTime  = Collections.min(startTimeList);
+        //鑾峰彇缁撴潫鏃堕棿
+        List<Long> endTimeList = platformLogList.stream().filter(i->Objects.nonNull(i.getParam2())).map(i->DateUtil.fromStringToDate("yyyy-MM-dd HH:mm:ss",i.getParam2()).getTime()).collect(Collectors.toList());
+        Long endTime = Collections.max(endTimeList);
+        if(Objects.isNull(startTime)
+            || Objects.isNull(endTime) || (startTime>=endTime)){
+            return BigDecimal.ZERO;
+        }
+        return   totalAmount.divide(new BigDecimal(( endTime - startTime )+"").divide(new BigDecimal("3600000"),2,BigDecimal.ROUND_HALF_UP),2,BigDecimal.ROUND_HALF_UP) ;
+    }
+
+
+
+
+
+
+
+
+
+
     private BigDecimal  getSumTotalByList(List<PlatformJob> list,Integer type,Integer status) {
         BigDecimal r = new BigDecimal(0);
         if(list==null || list.size() == 0){

--
Gitblit v1.9.3