lishuai
2023-12-26 2e7ba2bc0fbefa6ee0b44eaf1990a493795efe4a
server/dmvisit_service/src/main/java/com/doumee/service/business/impl/ProblemLogServiceImpl.java
@@ -16,6 +16,7 @@
import com.doumee.dao.business.model.Member;
import com.doumee.dao.business.model.ProblemLog;
import com.doumee.dao.business.model.Retention;
import com.doumee.dao.system.vo.ProblemLogVo;
import com.doumee.dao.web.reqeust.FinishAnswerDTO;
import com.doumee.service.business.ProblemLogService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
@@ -29,6 +30,7 @@
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Objects;
@@ -112,16 +114,54 @@
    @Override
    public PageData<ProblemLog> findPage(PageWrap<ProblemLog> pageWrap) {
        IPage<ProblemLog> problemLogIPage = dataInfo(pageWrap);
        return PageData.from(problemLogIPage);
    }
    private IPage<ProblemLog> dataInfo(PageWrap<ProblemLog> pageWrap) {
        IPage<ProblemLog> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
        MPJLambdaWrapper<ProblemLog> queryWrapper = new MPJLambdaWrapper<>();
        Utils.MP.blankToNull(pageWrap.getModel());
        queryWrapper.leftJoin(Member.class,Member::getOpenid,ProblemLog::getOpenid);
        queryWrapper.leftJoin(Member.class,Member::getId,ProblemLog::getUserId);
        queryWrapper.selectAll(ProblemLog.class)
                .selectAs(Member::getType,ProblemLog::getType);
                .selectAs(Member::getType,ProblemLog::getType)
                .like(StringUtils.isNotBlank(pageWrap.getModel().getName()), ProblemLog::getName, pageWrap.getModel().getName())
                .like(StringUtils.isNotBlank(pageWrap.getModel().getCompanyName()), ProblemLog::getCompanyName, pageWrap.getModel().getCompanyName())
                .eq(Objects.nonNull(pageWrap.getModel().getType()), Member::getType, pageWrap.getModel().getType());
        queryWrapper.orderByDesc(ProblemLog::getCreateDate);
        IPage<ProblemLog> problemLogIPage = problemLogJoinMapper.selectJoinPage(page, ProblemLog.class, queryWrapper);
        System.out.println(problemLogIPage);
        return PageData.from(problemLogJoinMapper.selectJoinPage(page, ProblemLog.class, queryWrapper));
        return problemLogIPage;
    }
    /**
     * 导出
     * @param pageWrap 分页对象
     */
    public List<ProblemLogVo> findPageExcel(PageWrap<ProblemLog> pageWrap) {
        IPage<ProblemLog> problemLogIPage = dataInfo(pageWrap);
        List<ProblemLogVo> voList = new ArrayList<>();
        if(null != problemLogIPage && problemLogIPage.getRecords().size() > 0) {
            for (ProblemLog obj:problemLogIPage.getRecords()) {
                ProblemLogVo vo = new ProblemLogVo();
                vo.setName(obj.getName());
                vo.setPhone(obj.getPhone());
                vo.setCompanyName(obj.getCompanyName());
                if(null != obj.getType()) {
                    if(Constants.ZERO == obj.getType()){
                        vo.setTypeName(Constants.Status.LW_FK.getDes());
                    }else if(Constants.ONE == obj.getType()) {
                        vo.setTypeName(Constants.Status.PT_FK.getDes());
                    }else {
                        vo.setTypeName(Constants.Status.NB_FK.getDes());
                    }
                }else {
                    vo.setTypeName("");
                }
                vo.setCreateDate(obj.getCreateDate());
                voList.add(vo);
            }
        }
        return voList;
    }
    @Override