|
@@ -8,6 +8,7 @@ import com.qunzhixinxi.hnqz.admin.api.entity.SysDept;
|
|
|
import com.qunzhixinxi.hnqz.admin.api.entity.WmTaskSubmissionPercentRule;
|
|
|
import com.qunzhixinxi.hnqz.admin.api.entity.WmTaskSubmissionRule;
|
|
|
import com.qunzhixinxi.hnqz.admin.enums.DelEnum;
|
|
|
+import com.qunzhixinxi.hnqz.admin.mapper.WmTaskMapper;
|
|
|
import com.qunzhixinxi.hnqz.admin.service.SysDeptService;
|
|
|
import com.qunzhixinxi.hnqz.admin.service.WmTaskSubmissionPercentRuleService;
|
|
|
import com.qunzhixinxi.hnqz.admin.service.WmTaskSubmissionRuleService;
|
|
@@ -19,11 +20,13 @@ import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.boot.test.context.SpringBootTest;
|
|
|
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
|
|
|
|
|
|
+import java.time.LocalDate;
|
|
|
import java.time.LocalDateTime;
|
|
|
import java.util.ArrayList;
|
|
|
import java.util.Comparator;
|
|
|
import java.util.HashSet;
|
|
|
import java.util.List;
|
|
|
+import java.util.Map;
|
|
|
import java.util.Set;
|
|
|
import java.util.stream.Collectors;
|
|
|
import java.util.stream.Stream;
|
|
@@ -43,6 +46,8 @@ public class WmTaskSubmissionRuleServiceTest {
|
|
|
private WmTaskSubmissionRuleService taskSubmissionRuleService;
|
|
|
@Autowired
|
|
|
private SysDeptService deptService;
|
|
|
+ @Autowired
|
|
|
+ private WmTaskMapper wmTaskMapper;
|
|
|
|
|
|
/**
|
|
|
* 初始化企业的特定任务规则
|
|
@@ -111,12 +116,12 @@ public class WmTaskSubmissionRuleServiceTest {
|
|
|
/**
|
|
|
* 增量更新企业的任务类型配置数据
|
|
|
*/
|
|
|
-// @Test
|
|
|
+ @Test
|
|
|
public void initNewTaskTypeConfig() {
|
|
|
|
|
|
// 平台新增的任务类型
|
|
|
Set<String> taskTypeIds = new HashSet<>();
|
|
|
- taskTypeIds.add("64");
|
|
|
+ taskTypeIds.add("73");
|
|
|
|
|
|
// 查询待修改企业的规则
|
|
|
List<WmTaskSubmissionPercentRule> queryRules = taskSubmissionPercentRuleService.list(Wrappers.<WmTaskSubmissionPercentRule>lambdaQuery()
|
|
@@ -139,4 +144,34 @@ public class WmTaskSubmissionRuleServiceTest {
|
|
|
});
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 月度积分限制校验
|
|
|
+ */
|
|
|
+// @Test
|
|
|
+ public void checkMonthScoreLimit() {
|
|
|
+ Integer entId = 1611890565;
|
|
|
+ // 月度积分限制
|
|
|
+ String monthLimitValue;
|
|
|
+ List<WmTaskSubmissionRule> monthScoreLimitRuleList = taskSubmissionRuleService.list(Wrappers.<WmTaskSubmissionRule>lambdaQuery()
|
|
|
+ .in(WmTaskSubmissionRule::getDeptId, CollUtil.newHashSet("entId", 1))
|
|
|
+ .eq(WmTaskSubmissionRule::getOptFlag, CommonFlag.OptFlag.OK)
|
|
|
+ .eq(WmTaskSubmissionRule::getSubCategory, UpmsType.TaskSubCategory.MONTH_SCORE_LIMIT));
|
|
|
+ if (CollUtil.isNotEmpty(monthScoreLimitRuleList)) {
|
|
|
+ Map<Integer, WmTaskSubmissionRule.SubmissionRule> submissionRuleMap = monthScoreLimitRuleList.stream()
|
|
|
+ .collect(Collectors.toMap(WmTaskSubmissionRule::getDeptId, rules ->
|
|
|
+ BeanUtil.toBean(rules.getRule().get(0), WmTaskSubmissionRule.SubmissionRule.class)));
|
|
|
+ WmTaskSubmissionRule.SubmissionRule submissionRule = submissionRuleMap.containsKey(entId) ? submissionRuleMap.get(entId) : submissionRuleMap.get(1);
|
|
|
+ monthLimitValue = String.valueOf(submissionRule.getFrequency().get(0).get("quantity"));
|
|
|
+ } else {
|
|
|
+ monthLimitValue = "300000";
|
|
|
+ }
|
|
|
+
|
|
|
+ LocalDate localDate = LocalDate.now();
|
|
|
+ LocalDateTime startOfMonth = localDate.withDayOfMonth(1).atStartOfDay();
|
|
|
+ LocalDateTime startOfNextMonth = localDate.plusMonths(1).withDayOfMonth(1).atStartOfDay();
|
|
|
+ int total = wmTaskMapper.getUserTaskSubScore("4714", startOfMonth, startOfNextMonth);
|
|
|
+
|
|
|
+ System.out.println("total=" + total + " limit=" + monthLimitValue);
|
|
|
+ }
|
|
|
}
|