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

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

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