|
|
|
@ -2,12 +2,21 @@ package com.chanko.yunxi.mes.module.biz.dal.mysql.customerfeedback;
|
|
|
|
|
|
|
|
|
|
import java.util.*;
|
|
|
|
|
|
|
|
|
|
import cn.hutool.core.collection.CollUtil;
|
|
|
|
|
import com.chanko.yunxi.mes.framework.common.pojo.PageResult;
|
|
|
|
|
import com.chanko.yunxi.mes.framework.mybatis.core.query.LambdaQueryWrapperX;
|
|
|
|
|
import com.chanko.yunxi.mes.framework.mybatis.core.mapper.BaseMapperX;
|
|
|
|
|
import com.chanko.yunxi.mes.module.biz.dal.dataobject.customer.CustomerDO;
|
|
|
|
|
import com.chanko.yunxi.mes.module.biz.dal.dataobject.customerfeedback.CustomerFeedbackDO;
|
|
|
|
|
import com.chanko.yunxi.mes.module.biz.dal.dataobject.material.MaterialDO;
|
|
|
|
|
import com.chanko.yunxi.mes.module.biz.dal.dataobject.projectorder.ProjectOrderDO;
|
|
|
|
|
import com.chanko.yunxi.mes.module.biz.dal.dataobject.projectorder.ProjectOrderSubDO;
|
|
|
|
|
import com.chanko.yunxi.mes.module.system.dal.dataobject.dept.DeptDO;
|
|
|
|
|
import com.chanko.yunxi.mes.module.system.dal.dataobject.user.AdminUserDO;
|
|
|
|
|
import com.github.yulichang.wrapper.MPJLambdaWrapper;
|
|
|
|
|
import org.apache.ibatis.annotations.Mapper;
|
|
|
|
|
import com.chanko.yunxi.mes.module.biz.controller.admin.customerfeedback.vo.*;
|
|
|
|
|
import org.springframework.util.StringUtils;
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 客户反馈质量申请 Mapper
|
|
|
|
@ -18,23 +27,53 @@ import com.chanko.yunxi.mes.module.biz.controller.admin.customerfeedback.vo.*;
|
|
|
|
|
public interface CustomerFeedbackMapper extends BaseMapperX<CustomerFeedbackDO> {
|
|
|
|
|
|
|
|
|
|
default PageResult<CustomerFeedbackDO> selectPage(CustomerFeedbackPageReqVO reqVO) {
|
|
|
|
|
return selectPage(reqVO, new LambdaQueryWrapperX<CustomerFeedbackDO>()
|
|
|
|
|
.eqIfPresent(CustomerFeedbackDO::getId, reqVO.getId())
|
|
|
|
|
.eqIfPresent(CustomerFeedbackDO::getCustomerId, reqVO.getCustomerId())
|
|
|
|
|
.eqIfPresent(CustomerFeedbackDO::getMaterialId, reqVO.getMaterialId())
|
|
|
|
|
.eqIfPresent(CustomerFeedbackDO::getStatus, reqVO.getStatus())
|
|
|
|
|
.eqIfPresent(CustomerFeedbackDO::getFeedbackPerson, reqVO.getFeedbackPerson())
|
|
|
|
|
.eqIfPresent(CustomerFeedbackDO::getTelephone, reqVO.getTelephone())
|
|
|
|
|
.eqIfPresent(CustomerFeedbackDO::getFeedbackNum, reqVO.getFeedbackNum())
|
|
|
|
|
.eqIfPresent(CustomerFeedbackDO::getReduceMoney, reqVO.getReduceMoney())
|
|
|
|
|
.eqIfPresent(CustomerFeedbackDO::getReduceReason, reqVO.getReduceReason())
|
|
|
|
|
.eqIfPresent(CustomerFeedbackDO::getSubmitter, reqVO.getSubmitter())
|
|
|
|
|
.betweenIfPresent(CustomerFeedbackDO::getSubmitTime, reqVO.getSubmitTime())
|
|
|
|
|
.eqIfPresent(CustomerFeedbackDO::getAuditor, reqVO.getAuditor())
|
|
|
|
|
.betweenIfPresent(CustomerFeedbackDO::getAuditorTime, reqVO.getAuditorTime())
|
|
|
|
|
.eqIfPresent(CustomerFeedbackDO::getCreator, reqVO.getCreator())
|
|
|
|
|
.betweenIfPresent(CustomerFeedbackDO::getCreateTime, reqVO.getCreateTime())
|
|
|
|
|
.orderByDesc(CustomerFeedbackDO::getId));
|
|
|
|
|
|
|
|
|
|
MPJLambdaWrapper<CustomerFeedbackDO> query = new MPJLambdaWrapper<>();
|
|
|
|
|
|
|
|
|
|
query.selectAll(CustomerFeedbackDO.class)
|
|
|
|
|
.select("a.name as customerName", "m.name as projectSubName", "m.code as projectSubCode")
|
|
|
|
|
.select("c.nickname as creatorName")
|
|
|
|
|
.select("c.nickname as submitterName")
|
|
|
|
|
.select("c.nickname as auditorName")
|
|
|
|
|
.leftJoin(CustomerDO.class, "a", CustomerDO::getId, CustomerFeedbackDO::getCustomerId)
|
|
|
|
|
.leftJoin(ProjectOrderSubDO.class,"b",ProjectOrderSubDO::getId,CustomerFeedbackDO::getMaterialId)
|
|
|
|
|
.leftJoin(MaterialDO.class,"m",MaterialDO::getId,ProjectOrderSubDO::getMaterialId)
|
|
|
|
|
.leftJoin(AdminUserDO.class, "c", AdminUserDO::getId, CustomerFeedbackDO::getCreator)
|
|
|
|
|
.leftJoin(AdminUserDO.class, "d", AdminUserDO::getId, CustomerFeedbackDO::getSubmitter)
|
|
|
|
|
.leftJoin(AdminUserDO.class, "e", AdminUserDO::getId, CustomerFeedbackDO::getAuditor)
|
|
|
|
|
.disableSubLogicDel()
|
|
|
|
|
.orderByDesc(CustomerFeedbackDO::getId);
|
|
|
|
|
|
|
|
|
|
query.like(!StringUtils.isEmpty(reqVO.getCustomerName()), CustomerDO::getName, reqVO.getCustomerName())
|
|
|
|
|
.like(!StringUtils.isEmpty(reqVO.getProjectSubCode()), MaterialDO::getCode, reqVO.getProjectSubCode())
|
|
|
|
|
.like(!StringUtils.isEmpty(reqVO.getProjectSubName()), MaterialDO::getName, reqVO.getProjectSubName())
|
|
|
|
|
.like(!StringUtils.isEmpty(reqVO.getSpec()), MaterialDO::getSpec, reqVO.getSpec())
|
|
|
|
|
.like(!StringUtils.isEmpty(reqVO.getFeedbackPerson()), CustomerFeedbackDO::getFeedbackPerson, reqVO.getFeedbackPerson())
|
|
|
|
|
.like(!StringUtils.isEmpty(reqVO.getTelephone()), CustomerFeedbackDO::getTelephone, reqVO.getTelephone())
|
|
|
|
|
.like(!StringUtils.isEmpty(reqVO.getCreatorName()), "c.nickname", reqVO.getCreatorName())
|
|
|
|
|
.like(!StringUtils.isEmpty(reqVO.getSubmitterName()), "d.nickname", reqVO.getSubmitterName())
|
|
|
|
|
.like(!StringUtils.isEmpty(reqVO.getAuditorName()), "e.nickname", reqVO.getAuditorName())
|
|
|
|
|
|
|
|
|
|
;
|
|
|
|
|
return selectPage(reqVO, query);
|
|
|
|
|
|
|
|
|
|
// return selectPage(reqVO, new LambdaQueryWrapperX<CustomerFeedbackDO>()
|
|
|
|
|
// .eqIfPresent(CustomerFeedbackDO::getId, reqVO.getId())
|
|
|
|
|
// .eqIfPresent(CustomerFeedbackDO::getCustomerId, reqVO.getCustomerId())
|
|
|
|
|
// .eqIfPresent(CustomerFeedbackDO::getMaterialId, reqVO.getMaterialId())
|
|
|
|
|
// .eqIfPresent(CustomerFeedbackDO::getStatus, reqVO.getStatus())
|
|
|
|
|
// .eqIfPresent(CustomerFeedbackDO::getFeedbackPerson, reqVO.getFeedbackPerson())
|
|
|
|
|
// .eqIfPresent(CustomerFeedbackDO::getTelephone, reqVO.getTelephone())
|
|
|
|
|
// .eqIfPresent(CustomerFeedbackDO::getFeedbackNum, reqVO.getFeedbackNum())
|
|
|
|
|
// .eqIfPresent(CustomerFeedbackDO::getReduceMoney, reqVO.getReduceMoney())
|
|
|
|
|
// .eqIfPresent(CustomerFeedbackDO::getReduceReason, reqVO.getReduceReason())
|
|
|
|
|
// .eqIfPresent(CustomerFeedbackDO::getSubmitter, reqVO.getSubmitter())
|
|
|
|
|
// .betweenIfPresent(CustomerFeedbackDO::getSubmitTime, reqVO.getSubmitTime())
|
|
|
|
|
// .eqIfPresent(CustomerFeedbackDO::getAuditor, reqVO.getAuditor())
|
|
|
|
|
// .betweenIfPresent(CustomerFeedbackDO::getAuditorTime, reqVO.getAuditorTime())
|
|
|
|
|
// .eqIfPresent(CustomerFeedbackDO::getCreator, reqVO.getCreator())
|
|
|
|
|
// .betweenIfPresent(CustomerFeedbackDO::getCreateTime, reqVO.getCreateTime())
|
|
|
|
|
// .orderByDesc(CustomerFeedbackDO::getId));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|