k94314517
2024-09-25 67ff8bd1223a488542f2504db84f68d17846d149
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ApproveServiceImpl.java
@@ -7,6 +7,8 @@
import com.doumee.core.haikang.model.HKConstants;
import com.doumee.core.haikang.model.param.BaseResponse;
import com.doumee.core.haikang.model.param.request.CarChargeAddRequest;
import com.doumee.core.haikang.model.param.request.ParkReservationAddRequest;
import com.doumee.core.haikang.model.param.respose.ParkReservationAddResponse;
import com.doumee.core.haikang.service.HKService;
import com.doumee.core.model.PageData;
import com.doumee.core.model.PageWrap;
@@ -111,6 +113,9 @@
    @Autowired
    private ParkBookMapper parkBookMapper;
    @Autowired
    private VisitParkMapper visitParkMapper;
    @Override
@@ -340,6 +345,7 @@
            internalHomeVO.setNoticeCopyNum(
                    noticesList.stream().filter(i->Constants.equalsInteger(i.getUserId(),noticesDTO.getMemberId())
                            &&Constants.equalsInteger(i.getSendacopy(),Constants.ONE)
                            &&Constants.equalsInteger(i.getReaded(),Constants.ZERO)
                    ).count()
            );
        }
@@ -870,7 +876,8 @@
                if(Constants.equalsInteger(level.getStatus(),Constants.approveStatus.pass)){
                    waitModel.setStatus(level.getStatus());
                    waitModel.setType(Constants.ONE);
                    waitModel.setTitle("审批人(抄送或签审批人)");
                    waitModel.setCheckDate(level.getCheckDate());
                    waitModel.setTitle(StringUtils.defaultString(level.getTitle(),"审批人"));
                }else{
                    waitModel.setStatus(level.getStatus());
                    waitModel.setType(Constants.ZERO);
@@ -1450,47 +1457,53 @@
                        .lambda()
                        .isNotNull(Parks::getHkId)
                        .eq(Parks::getIsdeleted,Constants.ZERO));
                List<ParkBook> parkBookList = new ArrayList<>();
                List<VisitPark> parkBookList = new ArrayList<>();
                if(CollectionUtils.isNotEmpty(parksList)){
                    for (Parks parks:parksList) {
                        ParkBook parkBook = new ParkBook();
                        parkBook.setIsdeleted(Constants.ZERO);
                        parkBook.setCreateDate(new Date());
                        parkBook.setVisitId(visits.getId());
                        parkBook.setCarCode(visits.getCarNos());
                        parkBook.setParkId(parks.getId());
                        parkBook.setOrigin(Constants.TWO);
                        parkBook.setStartTime(visits.getStarttime());
                        parkBook.setEndTime(visits.getEndtime());
                        parkBook.setMemberId( visits.getMemberId());
                        parkBook.setTimeType(Constants.ONE);
                        parkBook.setParkHkId(parks.getHkId());
                        VisitPark visitPark = new VisitPark();
                        visitPark.setIsdeleted(Constants.ZERO);
                        visitPark.setCreateDate(new Date());
                        visitPark.setVisitApplyId(visits.getId().toString());
                        visitPark.setCarCode(visits.getCarNos());
                        visitPark.setParkId(parks.getId().toString());
                        visitPark.setStartTime(visits.getStarttime());
                        visitPark.setEndTime(visits.getEndtime());
                        visitPark.setParkHkId(parks.getHkId());
                        visitPark.setObjType(Constants.ZERO);
                        CarChargeAddRequest param = new CarChargeAddRequest();
                        param.setPlateNo(parkBook.getCarCode());
                        param.setParkSyscode(parkBook.getParkHkId());
                        param.setStartTime(Objects.isNull(parkBook.getStartTime())?DateUtil.getDate(new Date(),"yyyy-MM-dd"):DateUtil.getShortTimeToNull(parkBook.getStartTime()));
                        param.setEndTime(Objects.isNull(parkBook.getEndTime())?"2999-12-31":DateUtil.getShortTimeToNull(parkBook.getEndTime()));
                        BaseResponse response = HKService.carChargeAddtion(param);
                        parkBook.setHkDate(new Date());
                        ParkReservationAddRequest request = new ParkReservationAddRequest();
                        request.setPlateNo(visitPark.getCarCode());
                        request.setParkSyscode(visitPark.getParkHkId());
                        request.setPhoneNo(visits.getPhone());
                        request.setOwner(visits.getName());
                        request.setAllowTimes(Constants.ONE+"");
                        request.setIsCharge(Constants.ONE+"");
                        request.setStartTime(Objects.isNull(visitPark.getStartTime())?DateUtil.getISO8601Timestamp2(new Date()):DateUtil.getISO8601Timestamp2(visitPark.getStartTime()));
                        request.setEndTime(Objects.isNull(visitPark.getEndTime())?"2999-12-31T00:00:00+08:00":DateUtil.getISO8601Timestamp2(visitPark.getEndTime()));
                        BaseResponse response =  HKService.parkReservationAddition(request);
                        visitPark.setHkDate(new Date());
                        if(response!=null
                                && StringUtils.equals(response.getCode(), HKConstants.RESPONSE_SUCCEE)){
                            parkBook.setHkStatus(Constants.ONE);
                            parkBook.setRemark("包期成功");
                            ParkReservationAddResponse parkReservationAddResponse = (ParkReservationAddResponse) response.getData();
                            visitPark.setHkId(parkReservationAddResponse.getReserveOrderNo());
                            visitPark.setHkStatus(Constants.ONE);
                            visitPark.setRemark("包期成功");
                        }else{
                            parkBook.setHkStatus(Constants.TWO);
                            parkBook.setRemark("包期失败~");
                            visitPark.setHkStatus(Constants.TWO);
                            visitPark.setRemark("包期失败~");
                            //下发失败  标记主业务状态为下发失败
                            sendStatus = false;
                        }
                        parkBookList.add(parkBook);
                        parkBookList.add(visitPark);
                    }
                    parkBookMapper.insert(parkBookList);
                    visitParkMapper.insert(parkBookList);
                }
                if(sendStatus){
                    visits.setStatus(Constants.VisitStatus.xfFail);
                }else{
                    visits.setStatus(Constants.VisitStatus.xfSuccess);
                }else{
                    visits.setStatus(Constants.VisitStatus.xfFail);
                }
            }