Explorar o código

fix: 创建企业初始化任务类型配置

lixuesong hai 1 ano
pai
achega
a00badacab

+ 9 - 0
hnqz-upms/hnqz-upms-biz/src/main/java/com/qunzhixinxi/hnqz/admin/service/WmTaskSubmissionPercentRuleService.java

@@ -5,6 +5,7 @@ import com.qunzhixinxi.hnqz.admin.api.entity.WmTaskSubmissionPercentRule;
 import com.qunzhixinxi.hnqz.admin.entity.WmScorePackage;
 import com.qunzhixinxi.hnqz.common.core.util.R;
 
+import java.util.Collection;
 import java.util.List;
 
 /**
@@ -15,6 +16,14 @@ import java.util.List;
  */
 public interface WmTaskSubmissionPercentRuleService extends IService<WmTaskSubmissionPercentRule> {
 
+	/**
+	 * 初始化企业的任务类型配置的信息
+	 *
+	 * @param deptIds 企业id集合
+	 * @return 初始化结果
+	 */
+	Boolean initTaskTypeConfigRule(Collection<Integer> deptIds);
+
 	/**
 	 * 校验任务百分比限制规则(达到要求的积分包,【任务配置】-【百分比限制】所选的任务总完成积分值不得大于积分包值*百分比)
 	 *

+ 5 - 0
hnqz-upms/hnqz-upms-biz/src/main/java/com/qunzhixinxi/hnqz/admin/service/impl/WmDaAgentServiceImpl.java

@@ -73,6 +73,7 @@ public class WmDaAgentServiceImpl extends ServiceImpl<WmDaAgentMapper, WmDaAgent
 	private final SysDeptMapper sysDeptMapper;
 	private final SysDeptSubMapper sysDeptSubMapper;
 	private final WmTaskSubmissionRuleService taskSubmissionRuleService;
+	private final WmTaskSubmissionPercentRuleService taskSubmissionPercentRuleService;
 
 	public String getDeptBuildName(String deptId) {
 		String buildName = "";
@@ -141,6 +142,8 @@ public class WmDaAgentServiceImpl extends ServiceImpl<WmDaAgentMapper, WmDaAgent
 
 				// 初始化企业限制信息
 				taskSubmissionRuleService.initDeptTaskSubmissionRule(Collections.singleton(Integer.valueOf(wmDaAgent.getDeptId())), deptId);
+				// 初始化企业的任务类型配置的信息
+				taskSubmissionPercentRuleService.initTaskTypeConfigRule(Collections.singleton(Integer.valueOf(wmDaAgent.getDeptId())));
 
 				List<SysDeptRelation> newList = new ArrayList<>();
 				SysDeptRelation sysDeptRelation = new SysDeptRelation();
@@ -419,6 +422,8 @@ public class WmDaAgentServiceImpl extends ServiceImpl<WmDaAgentMapper, WmDaAgent
 
 		// 初始化任务规则
 		taskSubmissionRuleService.initDeptTaskSubmissionRule(Collections.singleton(deptId));
+		// 初始化企业的任务类型配置的信息
+		taskSubmissionPercentRuleService.initTaskTypeConfigRule(Collections.singleton(Integer.valueOf(wmDaAgent.getDeptId())));
 
 		this.updateById(wmDaAgent);
 		List<WmRelation> newList = new ArrayList<>();

+ 4 - 0
hnqz-upms/hnqz-upms-biz/src/main/java/com/qunzhixinxi/hnqz/admin/service/impl/WmDaDrugEntServiceImpl.java

@@ -33,6 +33,7 @@ import com.qunzhixinxi.hnqz.admin.mapper.WmDaDrugEntMapper;
 import com.qunzhixinxi.hnqz.admin.service.SysDeptRelationService;
 import com.qunzhixinxi.hnqz.admin.service.SysDeptService;
 import com.qunzhixinxi.hnqz.admin.service.WmDaDrugEntService;
+import com.qunzhixinxi.hnqz.admin.service.WmTaskSubmissionPercentRuleService;
 import com.qunzhixinxi.hnqz.admin.service.WmTaskSubmissionRuleService;
 import com.qunzhixinxi.hnqz.common.data.datascope.DataScope;
 import com.qunzhixinxi.hnqz.common.security.util.SecurityUtils;
@@ -62,6 +63,7 @@ public class WmDaDrugEntServiceImpl extends ServiceImpl<WmDaDrugEntMapper, WmDaD
 	private final SysDeptRelationService sysDeptRelationService;
 	private final SysDeptSubMapper sysDeptSubMapper;
 	private final WmTaskSubmissionRuleService taskSubmissionRuleService;
+	private final WmTaskSubmissionPercentRuleService taskSubmissionPercentRuleService;
 
 	@Override
 	@Transactional
@@ -162,6 +164,8 @@ public class WmDaDrugEntServiceImpl extends ServiceImpl<WmDaDrugEntMapper, WmDaD
 
 			// 初始化任务规则
 			taskSubmissionRuleService.initDeptTaskSubmissionRule(Collections.singleton(sysDept.getDeptId()));
+			// 初始化企业的任务类型配置的信息
+			taskSubmissionPercentRuleService.initTaskTypeConfigRule(Collections.singleton(sysDept.getDeptId()));
 
 			// 创建结算渠道和通道
 //			if (CollUtil.isNotEmpty(entity.getSubjectTypeAndChannel())) {

+ 38 - 0
hnqz-upms/hnqz-upms-biz/src/main/java/com/qunzhixinxi/hnqz/admin/service/impl/WmTaskSubmissionPercentRuleServiceImpl.java

@@ -1,5 +1,6 @@
 package com.qunzhixinxi.hnqz.admin.service.impl;
 
+import cn.hutool.core.bean.BeanUtil;
 import cn.hutool.core.collection.CollUtil;
 import cn.hutool.core.collection.CollectionUtil;
 import cn.hutool.core.util.StrUtil;
@@ -16,6 +17,7 @@ import com.qunzhixinxi.hnqz.admin.mapper.WmTaskSubmissionPercentRuleMapper;
 import com.qunzhixinxi.hnqz.admin.service.WmTaskService;
 import com.qunzhixinxi.hnqz.admin.service.WmTaskSubmissionPercentRuleService;
 import com.qunzhixinxi.hnqz.admin.service.WmTaskTypeService;
+import com.qunzhixinxi.hnqz.common.core.constant.CommonConstants;
 import com.qunzhixinxi.hnqz.common.core.constant.enums.CommonFlag;
 import com.qunzhixinxi.hnqz.common.core.util.R;
 import lombok.AllArgsConstructor;
@@ -23,8 +25,10 @@ import lombok.extern.slf4j.Slf4j;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
+import java.time.LocalDateTime;
 import java.util.ArrayList;
 import java.util.Arrays;
+import java.util.Collection;
 import java.util.List;
 import java.util.Map;
 import java.util.concurrent.atomic.AtomicBoolean;
@@ -48,6 +52,40 @@ public class WmTaskSubmissionPercentRuleServiceImpl
 
 	private final WmTaskTypeService wmTaskTypeService;
 
+	/**
+	 * 初始化企业的任务类型配置的信息
+	 *
+	 * @param deptIds 企业id集合
+	 * @return 初始化结果
+	 */
+	@Override
+	@Transactional(rollbackFor = Exception.class)
+	public Boolean initTaskTypeConfigRule(Collection<Integer> deptIds) {
+		log.info("初始化企业的任务类型配置的信息deptIds={}", deptIds);
+
+		// 查询平台配置的任务类型配置的规则
+		List<WmTaskSubmissionPercentRule> percentRules = this.list(Wrappers.<WmTaskSubmissionPercentRule>lambdaQuery()
+				.eq(WmTaskSubmissionPercentRule::getDeptId, CommonConstants.TENANT_ID_1)
+				.eq(WmTaskSubmissionPercentRule::getSubCategory, UpmsType.TaskSubCategory2.TASK_TYPE_CONFIG)
+				.eq(WmTaskSubmissionPercentRule::getOptFlag, CommonFlag.OptFlag.OK));
+		if (CollUtil.isNotEmpty(percentRules)) {
+			WmTaskSubmissionPercentRule platformRule = percentRules.get(0);
+
+			LocalDateTime now = LocalDateTime.now();
+			List<WmTaskSubmissionPercentRule> insertRules = new ArrayList<>();
+			deptIds.forEach(deptId -> {
+				WmTaskSubmissionPercentRule insertRule = BeanUtil.copyProperties(platformRule, WmTaskSubmissionPercentRule.class);
+				insertRule.setRuleId(null);
+				insertRule.setCreateTime(now);
+				insertRules.add(insertRule);
+			});
+
+			this.saveBatch(insertRules);
+		}
+
+		return Boolean.TRUE;
+	}
+
 	/**
 	 * 校验任务百分比限制规则(达到要求的积分包,【任务配置】-【百分比限制】所选的任务总完成积分值不得大于积分包值*百分比)
 	 *

+ 2 - 0
hnqz-upms/hnqz-upms-biz/src/main/java/com/qunzhixinxi/hnqz/admin/service/impl/WmTaskSubmissionRuleServiceImpl.java

@@ -89,6 +89,8 @@ public class WmTaskSubmissionRuleServiceImpl extends ServiceImpl<WmTaskSubmissio
 	@Override
 	@Transactional(rollbackFor = Exception.class)
 	public Boolean initDeptTaskSubmissionRule(Collection<Integer> deptIds, Integer sourceDeptId) {
+		log.info("初始化企业限制信息deptIds={}, sourceDeptId={}", deptIds, sourceDeptId);
+
 		// 查询源数据企业的配置
 		List<WmTaskSubmissionRule> platformRules = this.list(Wrappers.<WmTaskSubmissionRule>lambdaQuery()
 				.eq(WmTaskSubmissionRule::getDeptId, sourceDeptId));