|
@@ -6,6 +6,7 @@ import cn.hutool.extra.spring.SpringUtil;
|
|
|
import com.alibaba.fastjson2.JSONObject;
|
|
|
import com.alibaba.fastjson2.JSONWriter;
|
|
|
import com.baomidou.dynamic.datasource.annotation.DS;
|
|
|
+import com.baomidou.dynamic.datasource.toolkit.DynamicDataSourceContextHolder;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
|
import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
|
|
|
import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
|
|
@@ -54,8 +55,10 @@ import com.obs.services.internal.ServiceException;
|
|
|
import com.ruoyi.common.core.domain.BaseSelectDto;
|
|
|
import com.ruoyi.common.core.domain.entity.SysUser;
|
|
|
import com.ruoyi.common.utils.PageUtils;
|
|
|
+import com.ruoyi.common.utils.SecurityUtils;
|
|
|
import com.ruoyi.common.utils.StringUtils;
|
|
|
import com.ruoyi.common.utils.wrapper.IWrapper;
|
|
|
+import com.ruoyi.system.service.ISysRoleService;
|
|
|
import com.ruoyi.system.service.ISysUserService;
|
|
|
import org.apache.commons.collections4.MapUtils;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
@@ -65,6 +68,7 @@ import java.math.BigDecimal;
|
|
|
import java.util.ArrayList;
|
|
|
import java.util.List;
|
|
|
import java.util.Map;
|
|
|
+import java.util.Set;
|
|
|
import java.util.stream.Collectors;
|
|
|
|
|
|
|
|
@@ -122,6 +126,8 @@ public class PurchaseServiceImpl extends ServiceImpl<PurchaseMapper, Purchase>
|
|
|
private StockService stockService;
|
|
|
@Autowired
|
|
|
private PurchaseRefundRecordService purchaseRefundRecordService;
|
|
|
+ @Autowired
|
|
|
+ private ISysRoleService sysRoleService;
|
|
|
|
|
|
/**
|
|
|
* 列表
|
|
@@ -206,6 +212,16 @@ public class PurchaseServiceImpl extends ServiceImpl<PurchaseMapper, Purchase>
|
|
|
wrapper.ge(Purchase::getCreateTime, dto.getPurchaseStartTime());
|
|
|
wrapper.le(Purchase::getCreateTime, dto.getPurchaseEndTime());
|
|
|
|
|
|
+ //添加权限过滤
|
|
|
+ DynamicDataSourceContextHolder.push(SourceConstant.BASE);
|
|
|
+ Set<String> permissionList = sysRoleService.selectRolePermissionByUserId(SecurityUtils.getUserId());
|
|
|
+ DynamicDataSourceContextHolder.poll();
|
|
|
+ if (ObjectUtil.isNotEmpty(permissionList)) {
|
|
|
+ //if当前用户的角色 in [运营专员, 运营助理] 页面仅展示产品.管理部门 == 当前用户所在部门的相关数据
|
|
|
+ if (permissionList.contains("E-commerce operation") || permissionList.contains("Operation assistant")) {
|
|
|
+ wrapper.eq("json_unquote( pi.victoriatourist_json -> '$.deptId' )", SecurityUtils.getDeptId());
|
|
|
+ }
|
|
|
+ }
|
|
|
|
|
|
Page<PurchaseVo> page = this.baseMapper.getPage(dto.getPage(), wrapper);
|
|
|
List<PurchaseVo> list = page.getRecords();
|