提交 90afa6f7 authored 作者: 000516's avatar 000516

店内执行,登录人所属大区/战区与搜索条件中战区/大区,区分查询

上级 4170021d
...@@ -114,13 +114,11 @@ public class ApDisplayQueryController { ...@@ -114,13 +114,11 @@ public class ApDisplayQueryController {
String empNo = loginUser.getUsername(); String empNo = loginUser.getUsername();
Optional<SysRole> first = roles.stream().filter(role -> RoleConstants.DISTRICT_AP_MANAGER.equals(role.getRoleKey())).findFirst(); Optional<SysRole> first = roles.stream().filter(role -> RoleConstants.DISTRICT_AP_MANAGER.equals(role.getRoleKey())).findFirst();
if (first.isPresent()) { if (first.isPresent()) {
String deptName = loginUser.getSysUser().getDept().getDeptName(); ArrayList<String> deptNames = new ArrayList<>();
salesApRequest.setDeptNames("000889".equals(empNo) ? new ArrayList<String>() { deptNames.add(loginUser.getSysUser().getDept().getDeptName());
{ if ("000889".equals(empNo)){
add(deptName); deptNames.add("北京特区");
add("北京特区"); }
}
} : Arrays.asList(deptName));
return; return;
} }
// 不是大区TM,判断是否是销售人员(人客关系) // 不是大区TM,判断是否是销售人员(人客关系)
......
...@@ -88,6 +88,13 @@ public class SalesApDisplayDaoImpl implements ISalesApDisplayDao { ...@@ -88,6 +88,13 @@ public class SalesApDisplayDaoImpl implements ISalesApDisplayDao {
.in(SalesApDisplay::getDistrictName, salesApWq.getDeptNames()) .in(SalesApDisplay::getDistrictName, salesApWq.getDeptNames())
); );
} }
if (StringUtils.isNotBlank(salesApWq.getDeptName())){
qw.and(
wrapper -> wrapper.like(SalesApDisplay::getRegionName, salesApWq.getDeptName())
.or()
.like(SalesApDisplay::getDistrictName, salesApWq.getDeptName())
);
}
if (StringUtils.isNotBlank(salesApWq.getNickName())){ if (StringUtils.isNotBlank(salesApWq.getNickName())){
qw.and( qw.and(
wrapper -> wrapper.eq(SalesApDisplay::getRegionManager, salesApWq.getNickName()) wrapper -> wrapper.eq(SalesApDisplay::getRegionManager, salesApWq.getNickName())
......
...@@ -71,6 +71,13 @@ public class SalesApDisplayJDaoImpl implements ISalesApDisplayJDao { ...@@ -71,6 +71,13 @@ public class SalesApDisplayJDaoImpl implements ISalesApDisplayJDao {
.in(SalesApDisplayJ::getDistrictName, salesApWq.getDeptNames()) .in(SalesApDisplayJ::getDistrictName, salesApWq.getDeptNames())
); );
} }
if (StringUtils.isNotBlank(salesApWq.getDeptName())) {
qw.and(
wrapper -> wrapper.like(SalesApDisplayJ::getRegionName, salesApWq.getDeptName())
.or()
.like(SalesApDisplayJ::getDistrictName, salesApWq.getDeptName())
);
}
if (StringUtils.isNotBlank(salesApWq.getNickName())){ if (StringUtils.isNotBlank(salesApWq.getNickName())){
qw.and( qw.and(
wrapper -> wrapper.eq(SalesApDisplayJ::getRegionManager, salesApWq.getNickName()) wrapper -> wrapper.eq(SalesApDisplayJ::getRegionManager, salesApWq.getNickName())
......
...@@ -70,6 +70,13 @@ public class SalesApDisplaySDaoImpl implements ISalesApDisplaySDao { ...@@ -70,6 +70,13 @@ public class SalesApDisplaySDaoImpl implements ISalesApDisplaySDao {
.in(SalesApDisplayS::getDistrictName, salesApWq.getDeptNames()) .in(SalesApDisplayS::getDistrictName, salesApWq.getDeptNames())
); );
} }
if (StringUtils.isNotBlank(salesApWq.getDeptName())) {
qw.and(
wrapper -> wrapper.like(SalesApDisplayS::getRegionName, salesApWq.getDeptName())
.or()
.like(SalesApDisplayS::getDistrictName, salesApWq.getDeptName())
);
}
if (StringUtils.isNotBlank(salesApWq.getNickName())){ if (StringUtils.isNotBlank(salesApWq.getNickName())){
qw.and( qw.and(
wrapper -> wrapper.eq(SalesApDisplayS::getRegionManager, salesApWq.getNickName()) wrapper -> wrapper.eq(SalesApDisplayS::getRegionManager, salesApWq.getNickName())
......
...@@ -32,6 +32,7 @@ import java.util.Objects; ...@@ -32,6 +32,7 @@ import java.util.Objects;
public class SalesApPromotionDisplayDaoImpl implements ISalesApPromotionDisplayDao { public class SalesApPromotionDisplayDaoImpl implements ISalesApPromotionDisplayDao {
@Autowired @Autowired
private SalesApPromotionDisplayMapper salesApPromotionDisplayMapper; private SalesApPromotionDisplayMapper salesApPromotionDisplayMapper;
@Override @Override
public PageInfo page(SalesApWq salesApWq) { public PageInfo page(SalesApWq salesApWq) {
LambdaQueryWrapper<SalesApPromotionDisplay> qw = buildWq(salesApWq); LambdaQueryWrapper<SalesApPromotionDisplay> qw = buildWq(salesApWq);
...@@ -42,30 +43,37 @@ public class SalesApPromotionDisplayDaoImpl implements ISalesApPromotionDisplayD ...@@ -42,30 +43,37 @@ public class SalesApPromotionDisplayDaoImpl implements ISalesApPromotionDisplayD
@Override @Override
public void updateDetail(SalesApPromotionDisplayDto pdDto) { public void updateDetail(SalesApPromotionDisplayDto pdDto) {
SalesApPromotionDisplay salesApPromotionDisplay = salesApPromotionDisplayMapper.selectById(pdDto.getSapdId()); SalesApPromotionDisplay salesApPromotionDisplay = salesApPromotionDisplayMapper.selectById(pdDto.getSapdId());
if (!DateUtils.isSameYearMonth(salesApPromotionDisplay.getSalesMonth(),new Date())){ if (!DateUtils.isSameYearMonth(salesApPromotionDisplay.getSalesMonth(), new Date())) {
throw new CheckedException(ECode.SALES_AP_UPDATE_ERROR); throw new CheckedException(ECode.SALES_AP_UPDATE_ERROR);
} }
SalesApPromotionDisplay pd = new SalesApPromotionDisplay(); SalesApPromotionDisplay pd = new SalesApPromotionDisplay();
BeanUtils.copyProperties(pdDto,pd); BeanUtils.copyProperties(pdDto, pd);
salesApPromotionDisplayMapper.updateById(pd); salesApPromotionDisplayMapper.updateById(pd);
} }
private LambdaQueryWrapper<SalesApPromotionDisplay> buildWq(SalesApWq salesApWq) { private LambdaQueryWrapper<SalesApPromotionDisplay> buildWq(SalesApWq salesApWq) {
LambdaQueryWrapper<SalesApPromotionDisplay> qw = new LambdaQueryWrapper<>(); LambdaQueryWrapper<SalesApPromotionDisplay> qw = new LambdaQueryWrapper<>();
if (Objects.nonNull(salesApWq.getSalesMonth())){ if (Objects.nonNull(salesApWq.getSalesMonth())) {
qw.eq(SalesApPromotionDisplay::getSalesMonth, salesApWq.getSalesMonth()); qw.eq(SalesApPromotionDisplay::getSalesMonth, salesApWq.getSalesMonth());
} }
if (!CollectionUtils.isEmpty(salesApWq.getDealerCodes())) { if (!CollectionUtils.isEmpty(salesApWq.getDealerCodes())) {
qw.in(SalesApPromotionDisplay::getDealerCode, salesApWq.getDealerCodes()); qw.in(SalesApPromotionDisplay::getDealerCode, salesApWq.getDealerCodes());
} }
if (!CollectionUtils.isEmpty(salesApWq.getDeptNames())){ if (!CollectionUtils.isEmpty(salesApWq.getDeptNames())) {
qw.and( qw.and(
wrapper -> wrapper.in(SalesApPromotionDisplay::getRegionName, salesApWq.getDeptNames()) wrapper -> wrapper.in(SalesApPromotionDisplay::getRegionName, salesApWq.getDeptNames())
.or() .or()
.in(SalesApPromotionDisplay::getDistrictName, salesApWq.getDeptNames()) .in(SalesApPromotionDisplay::getDistrictName, salesApWq.getDeptNames())
); );
} }
if (StringUtils.isNotBlank(salesApWq.getNickName())){ if (StringUtils.isNotBlank(salesApWq.getDeptName())) {
qw.and(
wrapper -> wrapper.like(SalesApPromotionDisplay::getRegionName, salesApWq.getDeptName())
.or()
.like(SalesApPromotionDisplay::getDistrictName, salesApWq.getDeptName())
);
}
if (StringUtils.isNotBlank(salesApWq.getNickName())) {
qw.and( qw.and(
wrapper -> wrapper.eq(SalesApPromotionDisplay::getRegionManager, salesApWq.getNickName()) wrapper -> wrapper.eq(SalesApPromotionDisplay::getRegionManager, salesApWq.getNickName())
.or() .or()
...@@ -74,24 +82,24 @@ public class SalesApPromotionDisplayDaoImpl implements ISalesApPromotionDisplayD ...@@ -74,24 +82,24 @@ public class SalesApPromotionDisplayDaoImpl implements ISalesApPromotionDisplayD
.eq(SalesApPromotionDisplay::getCityManager, salesApWq.getNickName()) .eq(SalesApPromotionDisplay::getCityManager, salesApWq.getNickName())
); );
} }
if (StringUtils.isNotBlank(salesApWq.getDealerCN())){ if (StringUtils.isNotBlank(salesApWq.getDealerCN())) {
qw.and( qw.and(
wrapper -> wrapper.like(SalesApPromotionDisplay::getDealerName, salesApWq.getDealerCN()) wrapper -> wrapper.like(SalesApPromotionDisplay::getDealerName, salesApWq.getDealerCN())
.or() .or()
.like(SalesApPromotionDisplay::getDealerCode, salesApWq.getDealerCN()) .like(SalesApPromotionDisplay::getDealerCode, salesApWq.getDealerCN())
); );
} }
if (StringUtils.isNotBlank(salesApWq.getStoreCN())){ if (StringUtils.isNotBlank(salesApWq.getStoreCN())) {
qw.and( qw.and(
wrapper -> wrapper.like(SalesApPromotionDisplay::getStoreName, salesApWq.getStoreCN()) wrapper -> wrapper.like(SalesApPromotionDisplay::getStoreName, salesApWq.getStoreCN())
.or() .or()
.like(SalesApPromotionDisplay::getStoreCode, salesApWq.getStoreCN()) .like(SalesApPromotionDisplay::getStoreCode, salesApWq.getStoreCN())
); );
} }
if (StringUtils.isNotBlank(salesApWq.getLineNameLike())){ if (StringUtils.isNotBlank(salesApWq.getLineNameLike())) {
qw.like(SalesApPromotionDisplay::getLineName, salesApWq.getLineNameLike()); qw.like(SalesApPromotionDisplay::getLineName, salesApWq.getLineNameLike());
} }
if (StringUtils.isNotBlank(salesApWq.getRqStatus())){ if (StringUtils.isNotBlank(salesApWq.getRqStatus())) {
qw.and( qw.and(
wrapper -> wrapper.eq(SalesApPromotionDisplay::getActualEndCapExecuted, salesApWq.getRqStatus()) wrapper -> wrapper.eq(SalesApPromotionDisplay::getActualEndCapExecuted, salesApWq.getRqStatus())
.or() .or()
......
...@@ -10,7 +10,6 @@ import com.sfa.common.core.utils.StringUtils; ...@@ -10,7 +10,6 @@ import com.sfa.common.core.utils.StringUtils;
import com.sfa.common.core.web.domain.PageInfo; import com.sfa.common.core.web.domain.PageInfo;
import com.sfa.common.core.web.page.TableSupport; import com.sfa.common.core.web.page.TableSupport;
import com.sfa.operation.domain.sales.dao.ISalesApPromotionDao; import com.sfa.operation.domain.sales.dao.ISalesApPromotionDao;
import com.sfa.operation.domain.sales.entity.SalesApDisplay;
import com.sfa.operation.domain.sales.entity.SalesApPromotion; import com.sfa.operation.domain.sales.entity.SalesApPromotion;
import com.sfa.operation.domain.sales.mapper.SalesApPromotionMapper; import com.sfa.operation.domain.sales.mapper.SalesApPromotionMapper;
import com.sfa.operation.domain.sales.wq.SalesApWq; import com.sfa.operation.domain.sales.wq.SalesApWq;
...@@ -20,8 +19,6 @@ import org.springframework.beans.factory.annotation.Autowired; ...@@ -20,8 +19,6 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils; import org.springframework.util.CollectionUtils;
import java.util.Collection;
import java.util.Collections;
import java.util.Date; import java.util.Date;
import java.util.Objects; import java.util.Objects;
...@@ -93,6 +90,13 @@ public class SalesApPromotionImplDao implements ISalesApPromotionDao { ...@@ -93,6 +90,13 @@ public class SalesApPromotionImplDao implements ISalesApPromotionDao {
.in(SalesApPromotion::getDistrictName, salesApWq.getDeptNames()) .in(SalesApPromotion::getDistrictName, salesApWq.getDeptNames())
); );
} }
if (StringUtils.isNotBlank(salesApWq.getDeptName())) {
qw.and(
wrapper -> wrapper.like(SalesApPromotion::getRegionName, salesApWq.getDeptName())
.or()
.like(SalesApPromotion::getDistrictName, salesApWq.getDeptName())
);
}
if (StringUtils.isNotBlank(salesApWq.getNickName())){ if (StringUtils.isNotBlank(salesApWq.getNickName())){
qw.and( qw.and(
wrapper -> wrapper.eq(SalesApPromotion::getRegionManager, salesApWq.getNickName()) wrapper -> wrapper.eq(SalesApPromotion::getRegionManager, salesApWq.getNickName())
......
...@@ -68,6 +68,13 @@ public class SalesApSnacksDisplayDaoImpl implements ISalesApSnacksDisplayDao { ...@@ -68,6 +68,13 @@ public class SalesApSnacksDisplayDaoImpl implements ISalesApSnacksDisplayDao {
.in(SalesApSnacksDisplay::getDistrictName, salesApWq.getDeptNames()) .in(SalesApSnacksDisplay::getDistrictName, salesApWq.getDeptNames())
); );
} }
if (StringUtils.isNotBlank(salesApWq.getDeptName())) {
qw.and(
wrapper -> wrapper.like(SalesApSnacksDisplay::getRegionName, salesApWq.getDeptName())
.or()
.like(SalesApSnacksDisplay::getDistrictName, salesApWq.getDeptName())
);
}
if (StringUtils.isNotBlank(salesApWq.getNickName())){ if (StringUtils.isNotBlank(salesApWq.getNickName())){
qw.and( qw.and(
wrapper -> wrapper.eq(SalesApSnacksDisplay::getRegionManager, salesApWq.getNickName()) wrapper -> wrapper.eq(SalesApSnacksDisplay::getRegionManager, salesApWq.getNickName())
......
...@@ -16,9 +16,13 @@ public class SalesApWq { ...@@ -16,9 +16,13 @@ public class SalesApWq {
private Date salesMonth; private Date salesMonth;
private String cityManager; private String cityManager;
/** /**
* 大区/战区 * 前端搜索条件:大区/战区
*/ */
private String deptName; private String deptName;
/**
* 根据登录人,默认重置大区/战区信息
* 与deptName,不冲突
*/
private List<String> deptNames; private List<String> deptNames;
private String nickName; private String nickName;
private List<String> dealerCodes; private List<String> dealerCodes;
......
...@@ -83,12 +83,12 @@ public class ApDisplayQueryServiceImpl implements IApDisplayQueryService { ...@@ -83,12 +83,12 @@ public class ApDisplayQueryServiceImpl implements IApDisplayQueryService {
SalesApWq salesApWq = new SalesApWq(); SalesApWq salesApWq = new SalesApWq();
BeanUtils.copyProperties(salesApRequest,salesApWq); BeanUtils.copyProperties(salesApRequest,salesApWq);
salesApWq.setSalesMonth(salesApRequest.getSalesMonth() != null ? DateUtil.parse(salesApRequest.getSalesMonth() + "-01", DatePattern.NORM_DATE_PATTERN) : null); salesApWq.setSalesMonth(salesApRequest.getSalesMonth() != null ? DateUtil.parse(salesApRequest.getSalesMonth() + "-01", DatePattern.NORM_DATE_PATTERN) : null);
// departmentName 部门名称
if (StringUtils.isNotBlank(salesApRequest.getDeptName())){ // if (StringUtils.isNotBlank(salesApRequest.getDeptName())){
List<String> deptNames = CollectionUtils.isEmpty(salesApWq.getDeptNames()) ? new ArrayList<>() : salesApWq.getDeptNames(); // List<String> deptNames = CollectionUtils.isEmpty(salesApWq.getDeptNames()) ? new ArrayList<>() : salesApWq.getDeptNames();
deptNames.add(salesApRequest.getDeptName()); // deptNames.add(salesApRequest.getDeptName());
salesApWq.setDeptNames(deptNames); // salesApWq.setDeptNames(deptNames);
} // }
return salesApWq; return salesApWq;
} }
} }
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论