111
k94314517
2024-02-05 15e588eb6a7549ecd2aaffb45e67f11e68354eb6
server/service/src/main/java/com/doumee/service/business/impl/SolutionsServiceImpl.java
@@ -14,6 +14,7 @@
import com.doumee.dao.business.join.SolutionWorktypeJoinMapper;
import com.doumee.dao.business.join.SolutionsJoinMapper;
import com.doumee.dao.business.model.*;
import com.doumee.service.business.CompanyService;
import com.doumee.service.business.SolutionsService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
@@ -185,11 +186,13 @@
        );
        solutionsMapper.update(null,new UpdateWrapper<Solutions>()
                .lambda()
                .ne(Solutions::getId,newModel.getId())
                .eq(Solutions::getBaseId,solutions.getId())
                .eq(Solutions::getDataType,Constants.TWO)
                .set(Solutions::getDataType,Constants.ONE)
                .set(StringUtils.isNotBlank(solutions.getSignKeyword()),Solutions::getSignKeyword,solutions.getSignKeyword())
        );
        //处理工作信息,新增最新的,同时产生历史版本
        //处理工种信息,新增最新的,同时产生历史版本
        dealWorkType(solutions,newModel,solutions.getWorktypeIdList(),false);
    }
@@ -259,7 +262,10 @@
    @Override
    public List<Solutions> findList(Solutions solutions) {
        solutions.setIsdeleted(Constants.ZERO);
        solutions.setDataType(Constants.TWO);
        solutions.setStatus(Constants.ZERO);
        if(solutions.getDataType() == null){
            solutions.setDataType(Constants.TWO);
        }
        QueryWrapper<Solutions> wrapper = new QueryWrapper<>(solutions);
        return solutionsMapper.selectList(wrapper);
    }
@@ -373,6 +379,7 @@
            }
        }
        PageData<Solutions> pageData = PageData.from(solutionsJoinMapper.selectJoinPage(page,Solutions.class, queryWrapper));
        return pageData;
    }
    @Override
@@ -404,6 +411,28 @@
        return PageData.from(solutionsMapper.selectPage(page, queryWrapper));
    }
    @Override
    public List<Solutions> findListForCompany() {
        LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
        List<Solutions> solutionsList = solutionsJoinMapper.selectJoinList(Solutions.class,new MPJLambdaWrapper<Solutions>()
                        .selectAll(Solutions.class)
                .leftJoin(CompanySolution.class,CompanySolution::getSolutionBaseId,Solutions::getId)
                .eq(Solutions::getIsdeleted,Constants.ZERO)
                .eq(Solutions::getDataType,Constants.TWO)
                .eq(CompanySolution::getIsdeleted,Constants.ZERO)
                .eq(CompanySolution::getCompanyId,user.getCompanyId())
                .orderByAsc(Solutions::getSortnum)
        );
        return solutionsList;
    }
    @Override
    public long count(Solutions solutions) {
        QueryWrapper<Solutions> wrapper = new QueryWrapper<>(solutions);