k94314517
2024-05-24 df59cad917c6db1db3b36a23f4b3e7be510e9ed0
server/service/src/main/java/com/doumee/service/business/impl/SolutionsServiceImpl.java
@@ -71,7 +71,11 @@
        )>Constants.ZERO){
            throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"保险方案名称已存在");
        }
        solutions.setCanAdd(Constants.formatIntegerNum(solutions.getCanAdd()));
        solutions.setCanReduce(Constants.formatIntegerNum(solutions.getCanReduce()));
        solutions.setCanChangeUnit(Constants.formatIntegerNum(solutions.getCanChangeUnit()));
        solutions.setAddValidDays(Constants.formatIntegerNum(solutions.getAddValidDays()));
        solutions.setDelValidDays(Constants.formatIntegerNum(solutions.getDelValidDays()));
        solutions.setIsdeleted(Constants.ZERO);
        solutions.setCreator(user.getId());
        solutions.setCreateDate(new Date());
@@ -373,8 +377,9 @@
        QueryWrapper<Solutions> wrapper = new QueryWrapper<>(solutions);
        if(Constants.equalsObject(user.getType(),Constants.TWO)){
            //如果是删除
            wrapper.lambda().exists("select c.id from company_solution c left join solutions d on c.solution_id=d.id where c.isdeleted=0 and d.base_id=solutions.base_id and c.shop_id="+user.getCompanyId());//设置无效访问
//                wrapper.lambda().exists("select c.id from company_solution c left join solutions d on c.solution_id=d.id where c.isdeleted=0 and d.base_id=solutions.base_id and c.shop_id="+user.getCompanyId());//设置无效访问
                wrapper.apply("((solutions.type=0 and exists(select cs.id from company_solution cs left join solutions s on cs.solution_id=s.id where cs.isdeleted=0 and s.base_id=solutions.base_id and cs.shop_id="+user.getCompanyId()+")) or (" +
                        "solutions.type=1 and solutions.shop_id="+user.getCompanyId()+"))") ;
        }
        return solutionsMapper.selectList(wrapper);
    }
@@ -483,13 +488,14 @@
        if (pageWrap.getModel().getBaseId() != null) {
            queryWrapper.eq(Solutions::getBaseId, pageWrap.getModel().getBaseId());
        }
        for(PageWrap.SortData sortData: pageWrap.getSorts()) {
            if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) {
                queryWrapper.orderByDesc(sortData.getProperty());
            } else {
                queryWrapper.orderByAsc(sortData.getProperty());
            }
        }
        queryWrapper.orderByDesc(Solutions::getCreateDate);
//        for(PageWrap.SortData sortData: pageWrap.getSorts()) {
//            if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) {
//                queryWrapper.orderByDesc(sortData.getProperty());
//            } else {
//                queryWrapper.orderByAsc(sortData.getProperty());
//            }
//        }
        PageData<Solutions> pageData = PageData.from(solutionsJoinMapper.selectJoinPage(page,Solutions.class, queryWrapper));
        return pageData;
@@ -541,7 +547,7 @@
                .eq(Company::getStatus,Constants.ZERO)
                .eq(Insurance::getIsdeleted,Constants.ZERO)
                .eq(Insurance::getStatus,Constants.ZERO)
                .orderByAsc(Solutions::getSortnum)
                .orderByDesc(Solutions::getCreateDate)
        );
        return solutionsList;
    }
@@ -580,5 +586,18 @@
    }
    @Override
    public BigDecimal testSolutionAddMoney(Integer id, BigDecimal fee, Date start,Date end,Date newDate,Date newEndTime){
        return Constants.addFee(solutionsMapper.selectById(id),fee,start,end,newDate,newEndTime);
    }
    @Override
    public BigDecimal testSolutionReduceMoney(Integer id, BigDecimal fee, Date start,Date end,Date reduceStartTime,Date reduceEndTime){
        return Constants.reduceFee(solutionsMapper.selectById(id),fee,start,end,reduceStartTime,reduceEndTime);
    }
    @Override
    public BigDecimal testSolutionProduceMoney(Integer id, BigDecimal fee, Date start,Date end,Date produceStart){
        return Constants.produceFee(solutionsMapper.selectById(id),fee,start,end,produceStart);
    }
}