|
@@ -19,6 +19,7 @@ import com.qunzhixinxi.hnqz.admin.entity.WmDeptTaskTypeConfig;
|
|
|
import com.qunzhixinxi.hnqz.admin.entity.WmScorePackage;
|
|
|
import com.qunzhixinxi.hnqz.admin.entity.WmTask;
|
|
|
import com.qunzhixinxi.hnqz.admin.entity.WmTaskType;
|
|
|
+import com.qunzhixinxi.hnqz.admin.entity.WmTeam;
|
|
|
import com.qunzhixinxi.hnqz.admin.entity.dto.WmDeptTaskTypeConfigDTO;
|
|
|
import com.qunzhixinxi.hnqz.admin.entity.dto.WmDeptTaskTypeConfigJsonDTO;
|
|
|
import com.qunzhixinxi.hnqz.admin.enums.DelEnum;
|
|
@@ -32,6 +33,7 @@ import com.qunzhixinxi.hnqz.admin.mapper.WmDaAgentMapper;
|
|
|
import com.qunzhixinxi.hnqz.admin.mapper.WmDaDrugEntMapper;
|
|
|
import com.qunzhixinxi.hnqz.admin.mapper.WmDeptTaskTypeConfigMapper;
|
|
|
import com.qunzhixinxi.hnqz.admin.mapper.WmTaskMapper;
|
|
|
+import com.qunzhixinxi.hnqz.admin.mapper.WmTeamMapper;
|
|
|
import com.qunzhixinxi.hnqz.admin.service.WmDeptTaskTypeConfigService;
|
|
|
import com.qunzhixinxi.hnqz.admin.service.WmScorePackageService;
|
|
|
import com.qunzhixinxi.hnqz.admin.service.WmTaskTypeService;
|
|
@@ -74,6 +76,8 @@ public class WmDeptTaskTypeConfigServiceImpl extends ServiceImpl<WmDeptTaskTypeC
|
|
|
|
|
|
private final WmDaAgentMapper wmDaAgentMapper;
|
|
|
|
|
|
+ private final WmTeamMapper wmTeamMapper;
|
|
|
+
|
|
|
/**
|
|
|
* 兼职学术专员启用的任务类型
|
|
|
*/
|
|
@@ -356,6 +360,7 @@ public class WmDeptTaskTypeConfigServiceImpl extends ServiceImpl<WmDeptTaskTypeC
|
|
|
@Override
|
|
|
public IPage<WmTask> listTaskByConfig(Page<WmTask> page, String taskTypeName, String[] taskStatus) {
|
|
|
Integer deptId = SecurityUtils.getUser().getDeptId();
|
|
|
+ Integer userId = SecurityUtils.getUser().getId();
|
|
|
// 本级dept对应任务类型配置
|
|
|
WmDeptTaskTypeConfig deptTaskTypeConfig = this.getOne(Wrappers.<WmDeptTaskTypeConfig>lambdaQuery()
|
|
|
.eq(WmDeptTaskTypeConfig::getDeptId, deptId));
|
|
@@ -459,6 +464,17 @@ public class WmDeptTaskTypeConfigServiceImpl extends ServiceImpl<WmDeptTaskTypeC
|
|
|
taskWrapper.eq("t.del_flag", DelEnum.NOT_DEL.val());
|
|
|
taskWrapper.eq("t.real_flag", "0");
|
|
|
taskWrapper.in("t.task_status", taskStatus);
|
|
|
+ // 如果是个人承接-按积分值,判断当前用户是否配置了团队负责人
|
|
|
+ List<WmTeam> teamList = wmTeamMapper.selectList(Wrappers.<WmTeam>lambdaQuery()
|
|
|
+ .eq(WmTeam::getDeptId, deptId)
|
|
|
+ .eq(WmTeam::getEnableFlag, EnableEnum.ENABLE.val())
|
|
|
+ .eq(WmTeam::getDelFlag, DelEnum.NOT_DEL.val())
|
|
|
+ .apply("FIND_IN_SET({0}, leader)", String.valueOf(userId)));
|
|
|
+ if (CollectionUtil.isNotEmpty(teamList)) {
|
|
|
+ // 如果配置了,则只查询所在团队下发的积分包
|
|
|
+ List<String> teamIdList = teamList.stream().map(wmTeam -> String.valueOf(wmTeam.getId())).collect(Collectors.toList());
|
|
|
+ taskWrapper.in("p.package_user_scope", teamIdList);
|
|
|
+ }
|
|
|
taskWrapper.orderByDesc("t.lookinto_date");
|
|
|
return wmTaskMapper.listWmTaskByWrapper(page, taskWrapper);
|
|
|
}
|