提交 c9d4d5d9 authored 作者: 000516's avatar 000516

AP执行-陈列计划

上级 1761dd21
package com.sfa.operation.controller.sales.query; package com.sfa.operation.controller.sales.query;
import com.sfa.common.core.context.UserRoles;
import com.sfa.common.core.web.domain.PageInfo; import com.sfa.common.core.web.domain.PageInfo;
import com.sfa.common.security.annotation.RequiresPermissions;
import com.sfa.common.security.utils.SecurityUtils;
import com.sfa.operation.pojo.sales.request.SalesApRequest; import com.sfa.operation.pojo.sales.request.SalesApRequest;
import com.sfa.operation.service.sales.IApDisplayQueryService; import com.sfa.operation.service.sales.IApDisplayQueryService;
import com.sfa.system.api.model.LoginUser;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import java.util.Set;
/** /**
* @author : liqiulin * @author : liqiulin
* @date : 2025-09-08 13 * @date : 2025-09-08 13
...@@ -23,8 +29,20 @@ public class ApDisplayQueryController { ...@@ -23,8 +29,20 @@ public class ApDisplayQueryController {
* 查询条件:经销商dealer_code、计划月份sales_month、城市经理city_manager、 * 查询条件:经销商dealer_code、计划月份sales_month、城市经理city_manager、
* @return * @return
*/ */
@RequiresPermissions("promotion:display_schedule:list")
@GetMapping("/page") @GetMapping("/page")
public PageInfo page(SalesApRequest salesApRequest){ public PageInfo page(SalesApRequest salesApRequest){
// 判断登录人权限
LoginUser loginUser = SecurityUtils.getLoginUser();
Set<String> roles = loginUser.getRoles();
// 促销AP管理角色,可查看所有数据
if (!roles.contains(UserRoles.PROMOTION_AP_MANAGER)) {
// 查询当前人员部门、姓名
String deptName = loginUser.getSysUser().getDept().getDeptName();
String nickname = loginUser.getNickName();
salesApRequest.setDeptName(deptName)
.setNickName(nickname);
}
return apDisplayQueryService.page(salesApRequest); return apDisplayQueryService.page(salesApRequest);
} }
} }
package com.sfa.operation.controller.sales.query; package com.sfa.operation.controller.sales.query;
import com.sfa.common.core.context.UserRoles;
import com.sfa.common.core.web.domain.PageInfo; import com.sfa.common.core.web.domain.PageInfo;
import com.sfa.common.security.annotation.RequiresPermissions;
import com.sfa.common.security.utils.SecurityUtils;
import com.sfa.operation.pojo.sales.request.SalesApRequest; import com.sfa.operation.pojo.sales.request.SalesApRequest;
import com.sfa.operation.service.sales.IApPromotionQueryService; import com.sfa.operation.service.sales.IApPromotionQueryService;
import com.sfa.system.api.model.LoginUser;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import java.util.Set;
/** /**
* @author : liqiulin * @author : liqiulin
* @date : 2025-09-17 15 * @date : 2025-09-17 15
...@@ -19,8 +25,20 @@ public class ApPromotionQueryController { ...@@ -19,8 +25,20 @@ public class ApPromotionQueryController {
@Autowired @Autowired
private IApPromotionQueryService apPromotionQueryService; private IApPromotionQueryService apPromotionQueryService;
@RequiresPermissions("promotion:display_schedule:list")
@GetMapping("/page") @GetMapping("/page")
public PageInfo page(SalesApRequest salesApRequest){ public PageInfo page(SalesApRequest salesApRequest){
// 判断登录人权限
LoginUser loginUser = SecurityUtils.getLoginUser();
Set<String> roles = loginUser.getRoles();
// 促销AP管理角色,可查看所有数据
if (!roles.contains(UserRoles.PROMOTION_AP_MANAGER)) {
// 查询当前人员部门、姓名
String deptName = loginUser.getSysUser().getDept().getDeptName();
String nickname = loginUser.getNickName();
salesApRequest.setDeptName(deptName)
.setNickName(nickname);
}
return apPromotionQueryService.page(salesApRequest); return apPromotionQueryService.page(salesApRequest);
} }
......
...@@ -54,6 +54,22 @@ public class SalesApDisplayDaoImpl implements ISalesApDisplayDao { ...@@ -54,6 +54,22 @@ public class SalesApDisplayDaoImpl implements ISalesApDisplayDao {
if (Objects.nonNull(salesApWq.getSalesMonth())){ if (Objects.nonNull(salesApWq.getSalesMonth())){
qw.eq(SalesApDisplay::getSalesMonth, salesApWq.getSalesMonth()); qw.eq(SalesApDisplay::getSalesMonth, salesApWq.getSalesMonth());
} }
if (StringUtils.isNotBlank(salesApWq.getDeptName())){
qw.and(
wrapper -> wrapper.eq(SalesApDisplay::getRegionName, salesApWq.getDeptName())
.or()
.eq(SalesApDisplay::getDistrictName, salesApWq.getDeptName())
);
}
if (StringUtils.isNotBlank(salesApWq.getNickName())){
qw.and(
wrapper -> wrapper.eq(SalesApDisplay::getRegionManager, salesApWq.getNickName())
.or()
.eq(SalesApDisplay::getDistrictManager, salesApWq.getNickName())
.or()
.eq(SalesApDisplay::getCityManager, salesApWq.getNickName())
);
}
return qw; return qw;
} }
} }
...@@ -10,6 +10,7 @@ import com.sfa.common.core.utils.StringUtils; ...@@ -10,6 +10,7 @@ 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;
...@@ -79,6 +80,22 @@ public class SalesApPromotionImplDao implements ISalesApPromotionDao { ...@@ -79,6 +80,22 @@ public class SalesApPromotionImplDao implements ISalesApPromotionDao {
if (Objects.nonNull(salesApWq.getSalesMonth())){ if (Objects.nonNull(salesApWq.getSalesMonth())){
qw.eq(SalesApPromotion::getSalesMonth, salesApWq.getSalesMonth()); qw.eq(SalesApPromotion::getSalesMonth, salesApWq.getSalesMonth());
} }
if (StringUtils.isNotBlank(salesApWq.getDeptName())){
qw.and(
wrapper -> wrapper.eq(SalesApPromotion::getRegionName, salesApWq.getDeptName())
.or()
.eq(SalesApPromotion::getDistrictName, salesApWq.getDeptName())
);
}
if (StringUtils.isNotBlank(salesApWq.getNickName())){
qw.and(
wrapper -> wrapper.eq(SalesApPromotion::getRegionManager, salesApWq.getNickName())
.or()
.eq(SalesApPromotion::getDistrictManager, salesApWq.getNickName())
.or()
.eq(SalesApPromotion::getCityManager, salesApWq.getNickName())
);
}
return qw; return qw;
} }
} }
...@@ -14,4 +14,6 @@ public class SalesApWq { ...@@ -14,4 +14,6 @@ public class SalesApWq {
private String dealerCode; private String dealerCode;
private Date salesMonth; private Date salesMonth;
private String cityManager; private String cityManager;
private String deptName;
private String nickName;
} }
package com.sfa.operation.pojo.sales.request; package com.sfa.operation.pojo.sales.request;
import cn.hutool.core.date.DatePattern; import cn.hutool.core.date.DatePattern;
import lombok.Builder; import lombok.*;
import lombok.Data; import lombok.experimental.Accessors;
import lombok.Value;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.text.ParseException; import java.text.ParseException;
...@@ -14,6 +13,7 @@ import java.util.Date; ...@@ -14,6 +13,7 @@ import java.util.Date;
* @date : 2025-09-16 14 * @date : 2025-09-16 14
* @describe : * @describe :
*/ */
@Accessors(chain = true)
@Data @Data
public class SalesApRequest { public class SalesApRequest {
private String dealerCode; private String dealerCode;
...@@ -26,6 +26,10 @@ public class SalesApRequest { ...@@ -26,6 +26,10 @@ public class SalesApRequest {
private Display display; private Display display;
private Promotion promotion; private Promotion promotion;
private String deptName;
private String nickName;
@Data @Data
public static class Display{ public static class Display{
/** /**
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论