|
@@ -75,6 +75,7 @@ import java.util.HashMap;
|
|
|
import java.util.List;
|
|
|
import java.util.Map;
|
|
|
import java.util.Optional;
|
|
|
+import java.util.function.Function;
|
|
|
import java.util.stream.Collectors;
|
|
|
|
|
|
/**
|
|
@@ -163,13 +164,22 @@ public class WmTaskContentServiceImpl extends ServiceImpl<WmTaskContentMapper, W
|
|
|
if ("1".equals(pkgType)) {
|
|
|
String limitValue = "30000";
|
|
|
// 查询当前企业配置的积分限制
|
|
|
- WmTaskSubmissionRule scoreLimitRule = taskSubmissionRuleService.getOne(Wrappers.<WmTaskSubmissionRule>lambdaQuery()
|
|
|
- .eq(WmTaskSubmissionRule::getDeptId, deptId)
|
|
|
+ List<WmTaskSubmissionRule> scoreLimitRuleList = taskSubmissionRuleService.list(Wrappers.<WmTaskSubmissionRule>lambdaQuery()
|
|
|
+ .in(WmTaskSubmissionRule::getDeptId, CollUtil.newHashSet(deptId, 1))
|
|
|
.eq(WmTaskSubmissionRule::getSubCategory, UpmsType.TaskSubCategory.SCORE_LIMIT));
|
|
|
+
|
|
|
// 公共参数配置的
|
|
|
String userTaskSubScore = sysPublicParamService.getSysPublicParamKeyToValue("USER_TASK_SUB_SCORE");
|
|
|
- if (scoreLimitRule != null && CollUtil.isNotEmpty(scoreLimitRule.getRule())) {
|
|
|
- WmTaskSubmissionRule.SubmissionRule submissionRule = BeanUtil.toBean(scoreLimitRule.getRule().get(0), WmTaskSubmissionRule.SubmissionRule.class);
|
|
|
+
|
|
|
+ if (CollUtil.isNotEmpty(scoreLimitRuleList)) {
|
|
|
+ Map<Integer, Object> submissionRuleMap = scoreLimitRuleList.stream()
|
|
|
+ .collect(Collectors.toMap(WmTaskSubmissionRule::getDeptId, WmTaskSubmissionRule::getRule));
|
|
|
+ WmTaskSubmissionRule.SubmissionRule submissionRule = null;
|
|
|
+ if (submissionRuleMap.containsKey(deptId)) {
|
|
|
+ submissionRule = BeanUtil.toBean(submissionRuleMap.get(deptId), WmTaskSubmissionRule.SubmissionRule.class);
|
|
|
+ } else {
|
|
|
+ submissionRule = BeanUtil.toBean(submissionRuleMap.get(1), WmTaskSubmissionRule.SubmissionRule.class);
|
|
|
+ }
|
|
|
limitValue = String.valueOf(submissionRule.getFrequency().get(0).get("quantity"));
|
|
|
} else if (StrUtil.isNotBlank(userTaskSubScore)) {
|
|
|
limitValue = userTaskSubScore;
|