From eb49564ab17c6695d8928d5a63a57c58b3cfd79c Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期三, 11 十二月 2024 18:21:30 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/thrid/BoardServiceImpl.java |  171 ++++++++++++++++++++++++++++++++++++++++++++++----------
 1 files changed, 139 insertions(+), 32 deletions(-)

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 554c9fe..482c392 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
@@ -1,40 +1,38 @@
 package com.doumee.service.business.impl.thrid;
 
-import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.doumee.biz.system.SystemDictDataBiz;
 import com.doumee.core.constants.ResponseStatus;
 import com.doumee.core.exception.BusinessException;
 import com.doumee.core.haikang.model.HKConstants;
 import com.doumee.core.haikang.model.cars.response.CarsDeviceDetaisResponse;
+import com.doumee.core.haikang.model.param.BaseListPageRequest;
 import com.doumee.core.haikang.model.param.BaseListPageResponse;
 import com.doumee.core.haikang.model.param.BaseResponse;
-import com.doumee.core.haikang.model.param.BaseListPageRequest;
 import com.doumee.core.haikang.model.param.request.*;
 import com.doumee.core.haikang.model.param.respose.*;
 import com.doumee.core.haikang.service.HKCarOpenService;
 import com.doumee.core.haikang.service.HKService;
-import com.doumee.core.model.ApiResponse;
 import com.doumee.core.model.PageData;
 import com.doumee.core.model.PageWrap;
 import com.doumee.core.utils.Constants;
 import com.doumee.core.utils.DateUtil;
 import com.doumee.core.utils.Utils;
+import com.doumee.core.wms.model.response.WmsBaseResponse;
+import com.doumee.core.wms.model.response.WmsInventoryDataResponse;
+import com.doumee.core.wms.model.response.WmsInventoryJsonResponse;
 import com.doumee.dao.business.*;
 import com.doumee.dao.business.join.VisitsJoinMapper;
 import com.doumee.dao.business.model.*;
-import com.doumee.dao.system.model.SystemDictData;
 import com.doumee.dao.web.reqeust.CarsJobAndContractDTO;
-import com.doumee.dao.web.reqeust.SavePlatformWarnEventDTO;
 import com.doumee.dao.web.response.platformReport.*;
 import com.doumee.service.business.impl.PlatformJobServiceImpl;
 import com.doumee.service.business.impl.VisitsServiceImpl;
 import com.doumee.service.business.third.BoardService;
+import com.doumee.service.business.third.WmsService;
 import com.github.yulichang.wrapper.MPJLambdaWrapper;
 import lombok.extern.slf4j.Slf4j;
-import org.apache.commons.lang3.ObjectUtils;
 import org.apache.commons.lang3.StringUtils;
-import org.checkerframework.checker.units.qual.C;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -53,6 +51,8 @@
 public class BoardServiceImpl implements BoardService {
     @Autowired
     private PlatformLogMapper platformLogMapper;
+    @Autowired
+    private WmsService wmsService;
     @Autowired
     private HiddenDangerMapper hiddenDangerMapper;
     @Autowired
@@ -75,6 +75,44 @@
     private RetentionMapper retentionMapper;
     @Autowired
     private PlatformGroupMapper platformGroupMapper;
+    /**
+     * 鑾峰彇鍖哄煙鏍戝舰缁撴瀯鏁版嵁
+     * @return
+     */
+    @Override
+    public BoardStockListVO stockList( ){
+        BoardStockListVO data = new BoardStockListVO();
+        double toatalNum = 1d;
+        BigDecimal num = new BigDecimal(0);
+        List<GeneralVO> list = new ArrayList<>();
+        try {
+            toatalNum =Double.parseDouble(systemDictDataBiz.queryByCode(Constants.WMS_PARAM,Constants.WMS_TOTAL_STOCK_NUM).getCode()) ;
+        }catch (Exception e){
+
+        }
+        WmsBaseResponse<WmsInventoryDataResponse> response =  wmsService.getInventoryList();
+        if(response!=null && response.getData()!=null && response.getData().size()>=0){
+            List<WmsInventoryJsonResponse> t= response.getData().get(0).getJson();
+            if(t!=null &&t.size()>0){
+                for(WmsInventoryJsonResponse j :t){
+                    num = num.add (Constants.formatBigdecimal( j.getQty()));
+                    GeneralVO d = new GeneralVO();
+                    d.setNum(Constants.formatBigdecimal(j.getQty()));
+                    d.setName(j.getItem_name());
+                    list.add(d);
+                }
+            }
+        }
+        data.setStockList(list);
+        data.setNum(num);
+        if(toatalNum<=0){
+            toatalNum =1;
+        }
+        data.setTotalNum(new BigDecimal(toatalNum));
+        data.setUseRate(data.getTotalNum().divide(data.getNum(),2,BigDecimal.ROUND_UP));
+        return data;
+
+    }
     /**
      * 鑾峰彇鍖哄煙鏍戝舰缁撴瀯鏁版嵁
      * @return
@@ -364,6 +402,11 @@
         file.setFieldName("event_type");
         file.setFieldValue("131588");//瀹夐槻鍛婅
         file.setType("in");
+        if(type == 1){
+
+        }else  if(type ==2){
+
+        }
         request.getFiledOptions().add(file);
         SortRequest sort = new SortRequest();
         sort.setSortField("happen_time");
@@ -540,20 +583,53 @@
     public  List<TransportMeasureVO> transportMeasure(Integer queryType){
         List<TransportMeasureVO> list = new ArrayList<>();
         Random random = new Random();
-        List<String> dayList = DateUtil.getBeforDays(new Date(),7);
+        List<Date> dayList = DateUtil.getDateListBeforDays(new Date(),7);//杩�7澶�
         if(Constants.equalsInteger(queryType,Constants.ONE)){
-            dayList = DateUtil.getBeforDays(new Date(),30);
+            dayList = DateUtil.getThisMonthDateList();//鏈湀澶╂暟
         }else if(Constants.equalsInteger(queryType,Constants.TWO)){
-            dayList = DateUtil.getBeforMonth(new Date(),12);
+            dayList = DateUtil.getThisYearMonthList();//鏈勾鏈堜唤
         }
-
-
-        for (String str:dayList) {
+        List<PlatformJob>  dataList = platformJobMapper.selectJoinList(PlatformJob.class,
+                new MPJLambdaWrapper<PlatformJob>()
+                        .selectAs(PlatformJob::getId,PlatformJob::getId)
+                        .selectAs(PlatformJob::getTotalNum,PlatformJob::getTotalNum)
+//                        .select("select sum(io_qty) from platform_wms_details a where a.isdeleted=0 and a.job_id=t.id",create_date)
+                        .eq(PlatformJob::getIsdeleted,Constants.ZERO)
+                        .apply(queryType==0,"to_days(create_date) >= to_days(now()) -7")
+                        .apply(queryType==1,"year(create_date) = year(now()) and month(create_date) = month(now())")
+                        .apply(queryType==2,"year(create_date) = year(now())"));
+        for (Date date : dayList) {
             TransportMeasureVO data = new TransportMeasureVO();
-            data.setPlanDate(str);
-            data.setPlanTimes(random.nextInt(200));
-            data.setPlanTaskNum(new BigDecimal(random.nextInt(1000)));
-            data.setFinishTaskNum(new BigDecimal(data.getPlanTaskNum().intValue()));
+            data.setPlanDate(date);
+            data.setPlanTimes(0);
+            data.setPlanTaskNum(new BigDecimal(random.nextInt(0)));
+            data.setFinishTaskNum(new BigDecimal(0));
+            for(PlatformJob job :dataList){
+                if(queryType == 2){
+                    if(DateUtil.formatDate(date,"yyyy-MM").equals(DateUtil.formatDate(job.getCreateDate(),"yyyy-MM"))){
+                        data.setPlanTimes( data.getPlanTimes() +1);
+                        data.setPlanTaskNum( data.getPlanTaskNum().add(Constants.formatBigdecimal(job.getTotalNum())));
+                        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())){
+                            //瀹屾垚鏁�
+                            data.setFinishTaskNum( data.getFinishTaskNum().add(Constants.formatBigdecimal(job.getTotalNum())));
+                        }
+                    }
+                }else{
+                    if(DateUtil.formatDate(date,"yyyy-MM-dd").equals(DateUtil.formatDate(job.getCreateDate(),"yyyy-MM-dd"))){
+                        data.setPlanTimes( data.getPlanTimes() +1);
+                        data.setPlanTaskNum( data.getPlanTaskNum().add(Constants.formatBigdecimal(job.getTotalNum())));
+                        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())){
+                            //瀹屾垚鏁�
+                            data.setFinishTaskNum( data.getFinishTaskNum().add(Constants.formatBigdecimal(job.getTotalNum())));
+                        }
+                    }
+                }
+            }
+
             list.add(data);
         }
         return list;
@@ -696,7 +772,7 @@
                 new MPJLambdaWrapper<PlatformJob>()
                 .selectAs(PlatformJob::getId,PlatformJob::getId)
                 .select(PlatformJob::getTotalNum,PlatformJob::getTotalNum)
-                .select("select sum(io_qty) from platform_wms_details a where a.isdeleted=0 and a.job_id=t.id",PlatformJob::getIoQty)
+//                .select("select sum(io_qty) from platform_wms_details a where a.isdeleted=0 and a.job_id=t.id",create_date)
                         .eq(PlatformJob::getIsdeleted,Constants.ZERO)
 //                        .in(PlatformJob::getType,Constants.ONE,Constants.THREE)
                         .in(PlatformJob::getStatus,Constants.PlatformJobStatus.DONE.getKey(),Constants.PlatformJobStatus.LEAVED.getKey(),Constants.PlatformJobStatus.AUTHED_LEAVE.getKey())
@@ -704,7 +780,7 @@
         List<PlatformJob>  monthLastNum = platformJobMapper.selectJoinList(PlatformJob.class,
                 new MPJLambdaWrapper<PlatformJob>()
                         .selectAs(PlatformJob::getId,PlatformJob::getId)
-                        .select("select sum(io_qty) from platform_wms_details a where a.isdeleted=0 and a.job_id=t.id",PlatformJob::getIoQty)
+//                        .select("select sum(io_qty) from platform_wms_details a where a.isdeleted=0 and a.job_id=t.id",create_date)
                         .eq(PlatformJob::getIsdeleted,Constants.ZERO)
                         .in(PlatformJob::getType,Constants.ONE,Constants.THREE)
                         .in(PlatformJob::getStatus,Constants.PlatformJobStatus.DONE.getKey(),Constants.PlatformJobStatus.LEAVED.getKey(),Constants.PlatformJobStatus.AUTHED_LEAVE.getKey())
@@ -714,7 +790,7 @@
                         .selectAs(PlatformJob::getId,PlatformJob::getId)
                         .select(PlatformJob::getTotalNum,PlatformJob::getTotalNum)
                         .selectCount(PlatformJob::getPlatformId,PlatformJob::getCountum)
-                        .select("select sum(io_qty) from platform_wms_details a where a.isdeleted=0 and a.job_id=t.id",PlatformJob::getIoQty)
+//                        .select("select sum(io_qty) from platform_wms_details a where a.isdeleted=0 and a.job_id=t.id",create_date)
                         .eq(PlatformJob::getIsdeleted,Constants.ZERO)
                         .in(PlatformJob::getType,Constants.ONE,Constants.THREE)
                         .in(PlatformJob::getStatus,Constants.PlatformJobStatus.DONE.getKey(),Constants.PlatformJobStatus.LEAVED.getKey(),Constants.PlatformJobStatus.AUTHED_LEAVE.getKey())
@@ -723,7 +799,7 @@
                 new MPJLambdaWrapper<PlatformJob>()
                         .selectAs(PlatformJob::getId,PlatformJob::getId)
                         .select(PlatformJob::getTotalNum,PlatformJob::getTotalNum)
-                        .select("select sum(io_qty) from platform_wms_details a where a.isdeleted=0 and a.job_id=t.id",PlatformJob::getIoQty)
+//                        .select("select sum(io_qty) from platform_wms_details a where a.isdeleted=0 and a.job_id=t.id",create_date)
                         .eq(PlatformJob::getIsdeleted,Constants.ZERO)
                         .in(PlatformJob::getType,Constants.ONE,Constants.THREE)
                         .in(PlatformJob::getStatus,Constants.PlatformJobStatus.DONE.getKey(),Constants.PlatformJobStatus.LEAVED.getKey(),Constants.PlatformJobStatus.AUTHED_LEAVE.getKey())
@@ -743,7 +819,7 @@
                         .selectAs(PlatformJob::getStatus,PlatformJob::getStatus)
                         .selectAs(PlatformJob::getType,PlatformJob::getType)
                         .select(PlatformJob::getTotalNum,PlatformJob::getTotalNum)
-                        .select("select sum(io_qty) from platform_wms_details a where a.isdeleted=0 and a.job_id=t.id",PlatformJob::getIoQty)
+//                        .select("select sum(io_qty) from platform_wms_details a where a.isdeleted=0 and a.job_id=t.id",create_date)
                         .eq(PlatformJob::getIsdeleted,Constants.ZERO)
                         .notIn(PlatformJob::getStatus,Constants.PlatformJobStatus.DONE.getKey(),Constants.PlatformJobStatus.LEAVED.getKey(),Constants.PlatformJobStatus.AUTHED_LEAVE.getKey(),Constants.PlatformJobStatus.CALLED.getKey())
                         .apply(" and to_days(create_date) <to_days(now())"));
@@ -755,7 +831,7 @@
                         .selectAs(PlatformJob::getStatus,PlatformJob::getStatus)
                         .selectAs(PlatformJob::getType,PlatformJob::getType)
                         .select(PlatformJob::getTotalNum,PlatformJob::getTotalNum)
-                        .select("select sum(io_qty) from platform_wms_details a where a.isdeleted=0 and a.job_id=t.id",PlatformJob::getIoQty)
+//                        .select("select sum(io_qty) from platform_wms_details a where a.isdeleted=0 and a.job_id=t.id",create_date)
                         .eq(PlatformJob::getIsdeleted,Constants.ZERO)
                         .notIn(PlatformJob::getStatus,Constants.PlatformJobStatus.CALLED.getKey())
                         .apply("year(create_date) = year("+DateUtil.getPlusTime2(lastYear)+")  and to_days(create_date)<= "+DateUtil.getPlusTime2(lastYear)));
@@ -858,11 +934,11 @@
                     ||Constants.equalsInteger(job.getStatus(),Constants.PlatformJobStatus.AUTHED_LEAVE.getKey()))){
                 continue;
             }
-            if(Constants.formatBigdecimal(job.getIoQty()).compareTo(new BigDecimal(0)) >0){
-                r.add( job.getIoQty());
-            }else{
+//            if(Constants.formatBigdecimal(job.getIoQty()).compareTo(new BigDecimal(0)) >0){
+//                r.add( job.getIoQty());
+//            }else{
                 r.add(Constants.formatBigdecimal(job.getTotalNum()));
-            }
+//            }
         }
         return Constants.formatBigdecimal0Float(r);
     }
@@ -1249,14 +1325,17 @@
         VisitDataVO result = new VisitDataVO();
         result.setWaitVisitNum(visitsJoinMapper.selectCount(new MPJLambdaWrapper<Visits>()
                 .eq(Visits::getIsdeleted,Constants.ZERO)
+                .apply("to_days(create_date)=to_days(now()")
                 .in(Visits::getStatus,Constants.VisitStatus.pass,Constants.VisitStatus.xfSuccess )));//寰呰闂�
         result.setWaitVisitNum(visitsJoinMapper.selectCount(new MPJLambdaWrapper<Visits>()
                 .eq(Visits::getIsdeleted,Constants.ZERO)
+                .apply("to_days(create_date)=to_days(now()")
                 .in(Visits::getStatus,Constants.VisitStatus.signout,Constants.VisitStatus.signin )));//宸茬櫥璁�
         result.setWaitVisitNum(visitsJoinMapper.selectCount(new MPJLambdaWrapper<Visits>()
                 .eq(Visits::getIsdeleted,Constants.ZERO)
+                .apply("to_days(create_date)=to_days(now()")
                 .in(Visits::getStatus,Constants.VisitStatus.signout )));//宸茬绂�
-        PageWrap<Visits> pageWrap = new PageWrap<>();
+        /*PageWrap<Visits> pageWrap = new PageWrap<>();
         pageWrap.setCapacity(10);
         pageWrap.setPage(1);
         pageWrap.setModel(new Visits());
@@ -1273,14 +1352,38 @@
                 list.add(data);
             }
             result.setRetentionNum(visitsPageData.getTotal());
+        }*/
+
+        String code= systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.TIMEOUT_WARNING).getCode();
+        MPJLambdaWrapper<Visits> queryWrapper = new MPJLambdaWrapper<>();
+        queryWrapper.selectAll(Visits.class);
+        queryWrapper.selectAs(Member::getName,Visits::getReceptMemberName);
+        queryWrapper.select("TIMESTAMPDIFF( MINUTE, NOW(), t.OUT_DATE) AS timeOut");
+        queryWrapper.selectAs(Company::getName,Visits::getReceptMemberDepartment);
+        queryWrapper.leftJoin(Member.class,Member::getId,Visits::getReceptMemberId);
+        queryWrapper.leftJoin(Company.class,Company::getId,Member::getCompanyId);
+        queryWrapper.leftJoin(" member m on m.id= t.MEMBER_ID");
+        queryWrapper.eq(Visits::getStatus,Constants.VisitStatus.signin);
+        queryWrapper.apply(" TIMESTAMPDIFF( MINUTE, NOW(), t.OUT_DATE) <= "+code+"  ");
+        queryWrapper.ne("m.type ",Constants.TWO);
+        queryWrapper.eq(Visits::getIsdeleted,Constants.ZERO);
+        queryWrapper.orderByDesc(Visits::getEditDate);
+        List<Visits> vr = visitsJoinMapper.selectList(queryWrapper);
+        result.setVisitRetentionDataList(new ArrayList<>());//璁垮婊炵暀鏁版嵁闆嗗悎
+        if(vr!=null&&vr!=null){
+            vr.stream().forEach(s ->{
+                VisitRetentionDataVO t = new VisitRetentionDataVO();
+                t.setName(s.getName());
+                t.setCompanyName(s.getCompanyName());
+                t.setTimeOutMinute(s.getTimeOut());
+                result.getVisitRetentionDataList().add(t);
+            });
         }
-        result.setVisitRetentionDataList(list);//璁垮婊炵暀鏁版嵁闆嗗悎
         return result;
 
     }
     @Override
     public  SecurityBoardVO centerSecurityData(){
-
 
         SecurityBoardVO data = new SecurityBoardVO();
         getParkingCarsNum(data);//鑾峰彇杞︿綅鏁版嵁
@@ -1296,8 +1399,12 @@
                 (int) retentionList.stream().filter(i->!Constants.equalsInteger(i.getType(),Constants.THREE)).count()
         );
         //鍦ㄥ洯闀挎湡鐩稿叧鏂逛汉鏁�
-        data.setInternalTotal(
+        data.setRelatedTotal(
                 (int) retentionList.stream().filter(i->Constants.equalsInteger(i.getType(),Constants.TWO) && Constants.equalsInteger(i.getCompanyType(),Constants.ZERO)).count()
+        );
+        //鍦ㄥ洯鍐呴儴鍛樺伐浜烘暟
+        data.setInternalTotal(
+                (int) retentionList.stream().filter(i->Constants.equalsInteger(i.getType(),Constants.TWO) && Constants.equalsInteger(i.getCompanyType(),Constants.ONE)).count()
         );
         //鍦ㄥ洯璁垮鏁伴噺
         data.setVisitTotal(
@@ -1434,7 +1541,7 @@
         List<WorkEfficiencyVO> workEfficiencyVOList = new ArrayList<>();
         List<PlatformJob> jobList = platformJobMapper.selectJoinList(PlatformJob.class, new MPJLambdaWrapper<PlatformJob>()
                 .selectAll( PlatformJob.class)
-                .select("(select sum(ifnull(a.io_qty,0)) from platform_wms_detail a where a.isdeleted=0 and a.job_id =t.id )", PlatformJob::getIoQty)
+//                .select("(select sum(ifnull(a.io_qty,0)) from platform_wms_detail a where a.isdeleted=0 and a.job_id =t.id )", create_date)
                 .apply("to_days(t.create_date) = to_days(now())")
                 .eq(Platform::getIsdeleted, Constants.ZERO)
                 .in(PlatformJob::getStatus, Constants.PlatformJobStatus.DONE.getKey()

--
Gitblit v1.9.3