|
@@ -17,30 +17,35 @@
|
|
|
|
|
|
package com.qunzhixinxi.hnqz.admin.controller;
|
|
package com.qunzhixinxi.hnqz.admin.controller;
|
|
|
|
|
|
|
|
+import cn.hutool.core.collection.CollUtil;
|
|
import cn.hutool.core.collection.CollectionUtil;
|
|
import cn.hutool.core.collection.CollectionUtil;
|
|
|
|
+import cn.hutool.core.date.DatePattern;
|
|
|
|
+import cn.hutool.core.lang.Validator;
|
|
|
|
+import cn.hutool.core.util.IdUtil;
|
|
import cn.hutool.core.util.StrUtil;
|
|
import cn.hutool.core.util.StrUtil;
|
|
|
|
+import cn.hutool.json.JSONObject;
|
|
|
|
+import cn.hutool.json.JSONUtil;
|
|
import com.alibaba.csp.sentinel.util.StringUtil;
|
|
import com.alibaba.csp.sentinel.util.StringUtil;
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
-import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
|
|
import com.baomidou.mybatisplus.core.metadata.OrderItem;
|
|
import com.baomidou.mybatisplus.core.metadata.OrderItem;
|
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
-import com.google.common.collect.ImmutableMap;
|
|
|
|
|
|
+import com.google.common.collect.ArrayListMultimap;
|
|
import com.qunzhixinxi.hnqz.admin.api.constant.CacheConstants;
|
|
import com.qunzhixinxi.hnqz.admin.api.constant.CacheConstants;
|
|
-import com.qunzhixinxi.hnqz.admin.api.dto.UserDTO;
|
|
|
|
|
|
+import com.google.common.collect.Multimap;
|
|
|
|
+import com.pig4cloud.plugin.excel.annotation.RequestExcel;
|
|
import com.qunzhixinxi.hnqz.admin.api.entity.SysDept;
|
|
import com.qunzhixinxi.hnqz.admin.api.entity.SysDept;
|
|
import com.qunzhixinxi.hnqz.admin.api.entity.SysUser;
|
|
import com.qunzhixinxi.hnqz.admin.api.entity.SysUser;
|
|
-import com.qunzhixinxi.hnqz.admin.api.entity.WmReportOpt;
|
|
|
|
-import com.qunzhixinxi.hnqz.admin.api.vo.ErrorInfoVo;
|
|
|
|
-import com.qunzhixinxi.hnqz.admin.api.vo.UserVO;
|
|
|
|
|
|
+import com.qunzhixinxi.hnqz.admin.api.enums.TargetType;
|
|
import com.qunzhixinxi.hnqz.admin.api.vo.WmScorePackageVO;
|
|
import com.qunzhixinxi.hnqz.admin.api.vo.WmScorePackageVO;
|
|
import com.qunzhixinxi.hnqz.admin.entity.*;
|
|
import com.qunzhixinxi.hnqz.admin.entity.*;
|
|
|
|
+import com.qunzhixinxi.hnqz.admin.entity.model.excel.BatchPackageExcelModel;
|
|
import com.qunzhixinxi.hnqz.admin.enums.DelEnum;
|
|
import com.qunzhixinxi.hnqz.admin.enums.DelEnum;
|
|
import com.qunzhixinxi.hnqz.admin.enums.EnableEnum;
|
|
import com.qunzhixinxi.hnqz.admin.enums.EnableEnum;
|
|
-import com.qunzhixinxi.hnqz.admin.enums.WmScoreTaskTypeEnum;
|
|
|
|
import com.qunzhixinxi.hnqz.admin.mapper.*;
|
|
import com.qunzhixinxi.hnqz.admin.mapper.*;
|
|
import com.qunzhixinxi.hnqz.admin.service.*;
|
|
import com.qunzhixinxi.hnqz.admin.service.*;
|
|
|
|
+import com.qunzhixinxi.hnqz.common.core.constant.CommonConstants;
|
|
import com.qunzhixinxi.hnqz.common.core.util.R;
|
|
import com.qunzhixinxi.hnqz.common.core.util.R;
|
|
import com.qunzhixinxi.hnqz.common.log.annotation.SysLog;
|
|
import com.qunzhixinxi.hnqz.common.log.annotation.SysLog;
|
|
import com.qunzhixinxi.hnqz.common.security.service.HnqzUser;
|
|
import com.qunzhixinxi.hnqz.common.security.service.HnqzUser;
|
|
@@ -52,20 +57,11 @@ import lombok.extern.slf4j.Slf4j;
|
|
import org.apache.commons.collections4.CollectionUtils;
|
|
import org.apache.commons.collections4.CollectionUtils;
|
|
import org.apache.commons.lang.ArrayUtils;
|
|
import org.apache.commons.lang.ArrayUtils;
|
|
import org.apache.commons.lang.StringUtils;
|
|
import org.apache.commons.lang.StringUtils;
|
|
-import org.apache.poi.hssf.usermodel.HSSFWorkbook;
|
|
|
|
-import org.apache.poi.ss.usermodel.CellType;
|
|
|
|
-import org.apache.poi.ss.usermodel.Row;
|
|
|
|
-import org.apache.poi.ss.usermodel.Sheet;
|
|
|
|
-import org.apache.poi.ss.usermodel.Workbook;
|
|
|
|
-import org.apache.poi.xssf.usermodel.XSSFWorkbook;
|
|
|
|
import org.springframework.data.redis.core.StringRedisTemplate;
|
|
import org.springframework.data.redis.core.StringRedisTemplate;
|
|
-import org.springframework.data.redis.core.ValueOperations;
|
|
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
import org.springframework.web.bind.annotation.*;
|
|
import org.springframework.web.bind.annotation.*;
|
|
-import org.springframework.web.multipart.MultipartFile;
|
|
|
|
|
|
|
|
import javax.validation.Valid;
|
|
import javax.validation.Valid;
|
|
-import java.io.InputStream;
|
|
|
|
import java.math.BigDecimal;
|
|
import java.math.BigDecimal;
|
|
import java.text.SimpleDateFormat;
|
|
import java.text.SimpleDateFormat;
|
|
import java.time.LocalDate;
|
|
import java.time.LocalDate;
|
|
@@ -74,7 +70,6 @@ import java.time.format.DateTimeFormatter;
|
|
import java.util.*;
|
|
import java.util.*;
|
|
import java.util.concurrent.ExecutionException;
|
|
import java.util.concurrent.ExecutionException;
|
|
import java.util.concurrent.Future;
|
|
import java.util.concurrent.Future;
|
|
-import java.util.concurrent.TimeUnit;
|
|
|
|
import java.util.stream.Collectors;
|
|
import java.util.stream.Collectors;
|
|
|
|
|
|
|
|
|
|
@@ -107,7 +102,6 @@ public class WmScorePackageController {
|
|
private final WmScoreTaskTypeMapper wmScoreTaskTypeMapper;
|
|
private final WmScoreTaskTypeMapper wmScoreTaskTypeMapper;
|
|
private final WmDaDrugEntMapper wmDaDrugEntMapper;
|
|
private final WmDaDrugEntMapper wmDaDrugEntMapper;
|
|
private final WmDaAgentMapper wmDaAgentMapper;
|
|
private final WmDaAgentMapper wmDaAgentMapper;
|
|
- private final SysUserMapper sysUserMapper;
|
|
|
|
private final StringRedisTemplate redisTemplate;
|
|
private final StringRedisTemplate redisTemplate;
|
|
|
|
|
|
|
|
|
|
@@ -116,7 +110,7 @@ public class WmScorePackageController {
|
|
*
|
|
*
|
|
* @param page 分页对象
|
|
* @param page 分页对象
|
|
* @param wmScorePackage 积分包
|
|
* @param wmScorePackage 积分包
|
|
- * @return
|
|
|
|
|
|
+ * @return R
|
|
*/
|
|
*/
|
|
@ApiOperation(value = "分页查询", notes = "分页查询")
|
|
@ApiOperation(value = "分页查询", notes = "分页查询")
|
|
@GetMapping("/page")
|
|
@GetMapping("/page")
|
|
@@ -2525,6 +2519,8 @@ public class WmScorePackageController {
|
|
}
|
|
}
|
|
|
|
|
|
/**
|
|
/**
|
|
|
|
+ *
|
|
|
|
+ *
|
|
* 被领取的积分包 不能修改
|
|
* 被领取的积分包 不能修改
|
|
*/
|
|
*/
|
|
WmScorePackageStatus statusQuery = new WmScorePackageStatus();
|
|
WmScorePackageStatus statusQuery = new WmScorePackageStatus();
|
|
@@ -2602,691 +2598,283 @@ public class WmScorePackageController {
|
|
return wmScorePackageService.selectRelationScoreIdList(wmScorePackage);
|
|
return wmScorePackageService.selectRelationScoreIdList(wmScorePackage);
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ /**
|
|
|
|
+ * 获取当前部门的基于所有积分包的相关信息
|
|
|
|
+ *
|
|
|
|
+ * @return 积分包的相关信息
|
|
|
|
+ */
|
|
|
|
+ @ApiOperation(value = "获取当前部门的基于所有积分包的相关信息", notes = "获取当前部门的基于所有积分包的相关信息")
|
|
|
|
+ @GetMapping("/getDeptScorePackageInfo")
|
|
|
|
+ public R getDeptScorePackageInfo() {
|
|
|
|
+ Integer deptId = SecurityUtils.getUser().getDeptId();
|
|
|
|
+ Map<String, Object> result = wmScorePackageService.getDeptScorePackageInfo(deptId);
|
|
|
|
+ return R.ok(result);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ /**
|
|
|
|
+ * 获取积分包关联企业的药品列表
|
|
|
|
+ *
|
|
|
|
+ * @param page 分页信息
|
|
|
|
+ * @param packageId 积分包id
|
|
|
|
+ * @param drugName 药品名称
|
|
|
|
+ * @return 药品列表
|
|
|
|
+ */
|
|
|
|
+ @SysLog("获取积分包关联企业的药品列表")
|
|
|
|
+ @GetMapping(value = "/drugs")
|
|
|
|
+ public R listDrugsByPackageId(Page page, @RequestParam(value = "packageId") Integer packageId, @RequestParam(value = "name", required = false) String drugName) {
|
|
|
|
+ return R.ok(wmScorePackageService.listDrugsByPackageId(page, packageId, drugName.trim()));
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ // ~ 批量下发积分包 ===================================================================================================
|
|
|
|
+
|
|
|
|
+ /**
|
|
|
|
+ * 获取最近的记录
|
|
|
|
+ *
|
|
|
|
+ * @return 最近记录
|
|
|
|
+ */
|
|
|
|
+ @GetMapping(value = "/batch/history")
|
|
|
|
+ public R<?> getBatchHistory() {
|
|
|
|
+ HnqzUser user = SecurityUtils.getUser();
|
|
|
|
+
|
|
|
|
+ // 缓存记录key
|
|
|
|
+ String key = String.format(CacheConstants.BATCH_PACKAGE_HISTORY, user.getDeptId(), user.getId());
|
|
|
|
+
|
|
|
|
+ String result = redisTemplate.opsForValue().get(key);
|
|
|
|
+
|
|
|
|
+ if (StrUtil.isNotEmpty(result) && JSONUtil.isJson(result)) {
|
|
|
|
+ JSONObject jsonObject = JSONUtil.parseObj(result);
|
|
|
|
+ return R.ok(jsonObject);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ return R.ok();
|
|
|
|
+ }
|
|
|
|
+
|
|
/**
|
|
/**
|
|
* 批量导入积分包
|
|
* 批量导入积分包
|
|
*
|
|
*
|
|
- * @param file 积分包信息文件
|
|
|
|
|
|
+ * @param batchPackageExcelModels 积分包信息文件
|
|
|
|
+ * @param scorePackage 积分包创建信息
|
|
* @return success/false
|
|
* @return success/false
|
|
*/
|
|
*/
|
|
@SysLog("批量导入积分包")
|
|
@SysLog("批量导入积分包")
|
|
- @PostMapping(value = "/batch")
|
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
@Transactional(rollbackFor = Exception.class)
|
|
- public R batchScorePackage(@RequestPart("file") MultipartFile file) {
|
|
|
|
|
|
+ @PostMapping(value = "/batch")
|
|
|
|
+ public R<?> batchCreatePackage(@RequestExcel(fileName = "excel", ignoreEmptyRow = true) List<BatchPackageExcelModel> batchPackageExcelModels,
|
|
|
|
+ @RequestPart(value = "history") WmScorePackage scorePackage) {
|
|
|
|
|
|
- // 获取操作员和操作员所在的结算主体
|
|
|
|
- HnqzUser operator = SecurityUtils.getUser();
|
|
|
|
- SysDept sysDept = sysDeptService.getById(operator.getDeptId());
|
|
|
|
- Map<String, Object> result = new HashMap<>(2);
|
|
|
|
|
|
+ HnqzUser user = SecurityUtils.getUser();
|
|
|
|
|
|
- // 读取excel
|
|
|
|
- try {
|
|
|
|
- String fileName = file.getOriginalFilename().toLowerCase();
|
|
|
|
- InputStream inputStream = file.getInputStream();
|
|
|
|
-
|
|
|
|
- // 校验文件信息
|
|
|
|
- Workbook wbs = null;
|
|
|
|
- if (fileName.endsWith("xls")) {
|
|
|
|
- //2003
|
|
|
|
- wbs = new HSSFWorkbook(inputStream);
|
|
|
|
- } else if (fileName.endsWith("xlsx")) {
|
|
|
|
- //2007
|
|
|
|
- wbs = new XSSFWorkbook(inputStream);
|
|
|
|
- } else {
|
|
|
|
- return R.failed("上传文件格式错误!");
|
|
|
|
- }
|
|
|
|
- if (wbs.isSheetHidden(0)) {
|
|
|
|
- return R.failed("导入表中有隐藏列");
|
|
|
|
- }
|
|
|
|
|
|
+ // 加锁防止多处理
|
|
|
|
|
|
- // 校验页
|
|
|
|
- Sheet sheet = wbs.getSheetAt(1);
|
|
|
|
|
|
+ String lock = "lock:package:batch:" + user.getDeptId();
|
|
|
|
|
|
- // 校验模板
|
|
|
|
- Row row0 = sheet.getRow(0);
|
|
|
|
- if (row0 == null) {
|
|
|
|
- return R.failed("导入模版错误!");
|
|
|
|
- }
|
|
|
|
|
|
+ if (!redisTemplate.opsForValue().setIfAbsent(lock, IdUtil.fastUUID())) {
|
|
|
|
+ return R.failed("有在途的操作,请稍后");
|
|
|
|
+ }
|
|
|
|
|
|
- // 校验记录数
|
|
|
|
- int rowNum = sheet.getLastRowNum();
|
|
|
|
- if (rowNum < 1) {
|
|
|
|
- return R.failed("导入表中缺少数据!");
|
|
|
|
- } else if (rowNum > 1000) {
|
|
|
|
- return R.failed("单次批量导入最大支持1000行数据!");
|
|
|
|
- }
|
|
|
|
|
|
+ try {
|
|
|
|
+ log.warn("==========================================批量导入积分包-插入redis:开始=====================================================");
|
|
|
|
+ // 获取操作人
|
|
|
|
+ // 记录历史信息
|
|
|
|
+ // 缓存记录key
|
|
|
|
+ String key = String.format(CacheConstants.BATCH_PACKAGE_HISTORY, user.getDeptId(), user.getId());
|
|
|
|
+ Map<String, Object> history = new HashMap<>(2);
|
|
|
|
+ scorePackage.setCreateTime(null);
|
|
|
|
+ scorePackage.setUpdateTime(null);
|
|
|
|
+ JSONObject jsonObject = JSONUtil.parseObj(scorePackage);
|
|
|
|
+ jsonObject.set("relatedService", Integer.parseInt(scorePackage.getRelatedService()));
|
|
|
|
+ history.put("history", jsonObject);
|
|
|
|
+ history.put("timestamp", DateTimeFormatter.ofPattern(DatePattern.CHINESE_DATE_TIME_PATTERN).format(LocalDateTime.now()));
|
|
|
|
+ redisTemplate.opsForValue().set(key, JSONUtil.toJsonStr(history));
|
|
|
|
+
|
|
|
|
+ log.warn("==========================================批量导入积分包-插入redis:结束=====================================================");
|
|
|
|
+
|
|
|
|
+ log.warn("==========================================批量导入积分包:开始=====================================================");
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ Multimap<String, Object> errorMap = ArrayListMultimap.create();
|
|
|
|
+
|
|
|
|
+ TargetType targetType = null;
|
|
|
|
+
|
|
|
|
+ // 全职
|
|
|
|
+ if (StrUtil.equals("3", scorePackage.getTypeid())) {
|
|
|
|
+ targetType = TargetType.FULL_TIME;
|
|
|
|
+ }
|
|
|
|
+ // 兼职
|
|
|
|
+ else if (StrUtil.equals("4", scorePackage.getTypeid())) {
|
|
|
|
+ targetType = TargetType.PART_TIME;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ // 重复的模型
|
|
|
|
+ Map<String, List<BatchPackageExcelModel>> dupNameModel = batchPackageExcelModels.stream()
|
|
|
|
+ .collect(Collectors.groupingBy(BatchPackageExcelModel::getScorePackageName));
|
|
|
|
+ List<String> names = batchPackageExcelModels.stream().map(BatchPackageExcelModel::getScorePackageName).collect(Collectors.toList());
|
|
|
|
+
|
|
|
|
+ for (Map.Entry<String, List<BatchPackageExcelModel>> entry : dupNameModel.entrySet()) {
|
|
|
|
+ String name = entry.getKey();
|
|
|
|
+ int size = entry.getValue().size();
|
|
|
|
+ if (size > 1) {
|
|
|
|
+ List<Integer> index = new ArrayList<>(size);
|
|
|
|
+ List<String> temp = new ArrayList<>(names);
|
|
|
|
+ Iterator<String> iterator = temp.iterator();
|
|
|
|
+ while (iterator.hasNext()) {
|
|
|
|
+ int idx = temp.lastIndexOf(name);
|
|
|
|
+ if (idx != -1) {
|
|
|
|
+ index.add(idx + 1);
|
|
|
|
+ temp.remove(idx);
|
|
|
|
+ }
|
|
|
|
|
|
- // 校验列信息
|
|
|
|
- String scorePackageName = row0.getCell(0).getStringCellValue();
|
|
|
|
- if (!"积分包名称".equals(scorePackageName)) {
|
|
|
|
- return R.failed("导入模版第一列错误!");
|
|
|
|
- }
|
|
|
|
- String typeid = row0.getCell(1).getStringCellValue();
|
|
|
|
- if (!"接单对象类型".equals(typeid)) {
|
|
|
|
- return R.failed("导入模版第二列错误!");
|
|
|
|
- }
|
|
|
|
- String user = row0.getCell(2).getStringCellValue();
|
|
|
|
- if (!"接单对象".equals(user)) {
|
|
|
|
- return R.failed("导入模版第三列错误!");
|
|
|
|
- }
|
|
|
|
- String relatedService = row0.getCell(3).getStringCellValue();
|
|
|
|
- if (!"积分包值".equals(relatedService)) {
|
|
|
|
- return R.failed("导入模版第四列错误!");
|
|
|
|
- }
|
|
|
|
- String relationScoreId = row0.getCell(4).getStringCellValue();
|
|
|
|
- if (!"关联服务企业".equals(relationScoreId)) {
|
|
|
|
- return R.failed("导入模版第五列错误!");
|
|
|
|
- }
|
|
|
|
- String score = row0.getCell(5).getStringCellValue();
|
|
|
|
- if (!"关联任务积分包".equals(score)) {
|
|
|
|
- return R.failed("导入模版第六列错误!");
|
|
|
|
- }
|
|
|
|
- String packageUserScope = row0.getCell(6).getStringCellValue();
|
|
|
|
- if (!"接单对象范围".equals(packageUserScope)) {
|
|
|
|
- return R.failed("导入模版第七列错误!");
|
|
|
|
- }
|
|
|
|
- String taskTypes = row0.getCell(7).getStringCellValue();
|
|
|
|
- if (!"有效任务类型".equals(taskTypes)) {
|
|
|
|
- return R.failed("导入模版第八列错误!");
|
|
|
|
- }
|
|
|
|
- String description = row0.getCell(8).getStringCellValue();
|
|
|
|
- if (!"描述".equals(description)) {
|
|
|
|
- return R.failed("导入模版第九列错误!");
|
|
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ errorMap.put("模板内积分包名称重复", index.stream().sorted().collect(Collectors.toList()));
|
|
|
|
+ }
|
|
}
|
|
}
|
|
|
|
|
|
- //数据
|
|
|
|
- List<WmScorePackage> wmScorePackageList = new ArrayList<>();
|
|
|
|
- List<ErrorInfoVo> errorList = new ArrayList<>();
|
|
|
|
- List mapList = new ArrayList<>();
|
|
|
|
- Map<String, Object> map = new HashMap<>();
|
|
|
|
- log.info(">>> 通过excel批量创建用户开始 <<<");
|
|
|
|
- // 行数据
|
|
|
|
- for (int i = 1; i <= rowNum; i++) {
|
|
|
|
|
|
+ // 业务校验
|
|
|
|
+ for (int i = 0, batchScoreTotal = 0, rows = batchPackageExcelModels.size(); i < rows; i++) {
|
|
|
|
|
|
- // 行编号
|
|
|
|
- int rNum = i;
|
|
|
|
- Row row = sheet.getRow(i);
|
|
|
|
- log.info(">>>当前导入第{}行<<<", i);
|
|
|
|
|
|
+ batchScoreTotal += checkColumn(batchPackageExcelModels.get(i), targetType, errorMap, i + 1, user.getDeptId());
|
|
|
|
|
|
- if (row == null) {
|
|
|
|
- ErrorInfoVo errorInfoVo = new ErrorInfoVo();
|
|
|
|
- errorInfoVo.setRowNum(rNum);
|
|
|
|
- errorInfoVo.setColumnName(null);
|
|
|
|
- errorInfoVo.setContent(null);
|
|
|
|
- errorInfoVo.setReason("当前行没有数据信息");
|
|
|
|
- errorList.add(errorInfoVo);
|
|
|
|
- continue;
|
|
|
|
|
|
+ // 额外校验可分配积分包
|
|
|
|
+ if (!"-1".equals(scorePackage.getRelationScoreId()) && batchScoreTotal > (scorePackage.getKfpjf() == null ? 0 : scorePackage.getKfpjf())) {
|
|
|
|
+ errorMap.put("批量下发总值大于可分配值", i + 1);
|
|
}
|
|
}
|
|
|
|
|
|
- int colNum = row.getLastCellNum();
|
|
|
|
- WmScorePackage wmScorePackage = new WmScorePackage();
|
|
|
|
|
|
+ }
|
|
|
|
|
|
- wmScorePackage.setDeptId(String.valueOf(sysDept.getDeptId()));
|
|
|
|
- wmScorePackage.setCreateTime(LocalDateTime.now());
|
|
|
|
|
|
+ // 存在错误全表打回
|
|
|
|
+ if (!errorMap.isEmpty()) {
|
|
|
|
|
|
- for (int j = 0; j < colNum; j++) {//列数据
|
|
|
|
|
|
+ List<Map<String, Object>> resultList = new ArrayList<>(errorMap.size());
|
|
|
|
+ Map<String, Collection<Object>> asMap = errorMap.asMap();
|
|
|
|
|
|
- // 获取列名称
|
|
|
|
- String columnName = row0.getCell(j).getStringCellValue();
|
|
|
|
- int columnNum = j + 1;
|
|
|
|
|
|
+ for (Map.Entry<String, Collection<Object>> entry : asMap.entrySet()) {
|
|
|
|
|
|
- if (null == row.getCell(j)) {
|
|
|
|
- ErrorInfoVo errorInfoVo = new ErrorInfoVo();
|
|
|
|
- errorInfoVo.setRowNum(rNum);
|
|
|
|
- errorInfoVo.setColumnNum(columnNum);
|
|
|
|
- errorInfoVo.setColumnName(columnName);
|
|
|
|
- errorInfoVo.setContent(null);
|
|
|
|
- errorInfoVo.setReason("列数据为空");
|
|
|
|
- errorList.add(errorInfoVo);
|
|
|
|
- continue;
|
|
|
|
- }
|
|
|
|
- // 格式化字符串
|
|
|
|
- row.getCell(j).setCellType(CellType.STRING);
|
|
|
|
- String value = row.getCell(j).getStringCellValue()
|
|
|
|
- .replaceAll(" ", "")
|
|
|
|
- .replaceAll(",", "")
|
|
|
|
- .replaceAll("\\u00A0", "")
|
|
|
|
- .replaceAll((char) 12288 + "", "")
|
|
|
|
- .replace("+", "·");
|
|
|
|
-
|
|
|
|
- // 校验value
|
|
|
|
- if (!columnName.equals("有效任务类型") && !columnName.equals("接单对象") && !columnName.equals("描述")) {
|
|
|
|
- if (StringUtil.isEmpty(value)) {
|
|
|
|
- ErrorInfoVo errorInfoVo = new ErrorInfoVo();
|
|
|
|
- errorInfoVo.setRowNum(rNum);
|
|
|
|
- errorInfoVo.setColumnNum(columnNum);
|
|
|
|
- errorInfoVo.setColumnName(columnName);
|
|
|
|
- errorInfoVo.setContent(value);
|
|
|
|
- errorInfoVo.setReason("未填写数据");
|
|
|
|
- errorList.add(errorInfoVo);
|
|
|
|
- continue;
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
|
|
+ Map<String, Object> m = new HashMap<>(2);
|
|
|
|
|
|
- if (j == 0) {
|
|
|
|
- //判单 积分包名称是否已被占用
|
|
|
|
- WmScorePackage wmScorePackage1 = new WmScorePackage();
|
|
|
|
- wmScorePackage1.setScorePackageName(value);
|
|
|
|
- wmScorePackage1.setDeptId(String.valueOf(SecurityUtils.getUser().getDeptId()));
|
|
|
|
- WmScorePackage wmScorePackage2 = wmScorePackageMapper.selectByName(wmScorePackage1);
|
|
|
|
- if (wmScorePackage2 != null) {
|
|
|
|
- ErrorInfoVo errorInfoVo = new ErrorInfoVo();
|
|
|
|
- errorInfoVo.setRowNum(rNum);
|
|
|
|
- errorInfoVo.setColumnNum(columnNum);
|
|
|
|
- errorInfoVo.setColumnName(columnName);
|
|
|
|
- errorInfoVo.setContent(value);
|
|
|
|
- errorInfoVo.setReason(String.format("{%s }已被占用", value));
|
|
|
|
- errorList.add(errorInfoVo);
|
|
|
|
- continue;
|
|
|
|
- } else {
|
|
|
|
- wmScorePackage.setScorePackageName(value);
|
|
|
|
- }
|
|
|
|
- } else if (j == 1) {
|
|
|
|
- if ("兼职学术信息沟通专员".equals(value)) {
|
|
|
|
- wmScorePackage.setTypeid("4");
|
|
|
|
- wmScorePackage.setScorePackageStatus(1 + "");
|
|
|
|
- } else if ("全职学术信息沟通专员".equals(value)) {
|
|
|
|
- wmScorePackage.setTypeid("3");
|
|
|
|
- wmScorePackage.setScorePackageStatus(3 + "");
|
|
|
|
- } else {
|
|
|
|
- ErrorInfoVo errorInfoVo = new ErrorInfoVo();
|
|
|
|
- errorInfoVo.setRowNum(rNum);
|
|
|
|
- errorInfoVo.setColumnNum(columnNum);
|
|
|
|
- errorInfoVo.setColumnName(columnName);
|
|
|
|
- errorInfoVo.setContent(value);
|
|
|
|
- errorInfoVo.setReason("接单对象类型错误");
|
|
|
|
- errorList.add(errorInfoVo);
|
|
|
|
- continue;
|
|
|
|
- }
|
|
|
|
- } else if (j == 2) {
|
|
|
|
- if (wmScorePackage.getTypeid().equals("3")) {
|
|
|
|
- if (!value.equals("") && !value.equals(null)) {
|
|
|
|
- List list = new ArrayList();
|
|
|
|
- UserDTO userDTO = new UserDTO();
|
|
|
|
- userDTO.setDeptId(SecurityUtils.getUser().getDeptId());
|
|
|
|
- List<UserVO> userList = sysUserMapper.selectByDeptId(userDTO);
|
|
|
|
-// List<Stream<SysRole>> ids = userList.stream().filter(p->p.getRoleList().stream().filter(k->k.getRoleId().equals(5))).collect(Collectors.toList());
|
|
|
|
- List<UserVO> list1 = userList.stream()
|
|
|
|
- .filter(p -> CollectionUtils.isNotEmpty(p.getRoleList()
|
|
|
|
- .stream()
|
|
|
|
- .filter(k -> k.getRoleId().equals(5))
|
|
|
|
- .collect(Collectors.toList())))
|
|
|
|
- .collect(Collectors.toList());
|
|
|
|
- if (CollectionUtils.isNotEmpty(list1)) {
|
|
|
|
- List<String> list2 = list1.stream()
|
|
|
|
- .map(p -> p.getUsername())
|
|
|
|
- .collect(Collectors.toList());
|
|
|
|
- if (list2.contains(value)) {
|
|
|
|
- list.add(value);
|
|
|
|
- wmScorePackage.setUserList(list);
|
|
|
|
- }
|
|
|
|
- } else {
|
|
|
|
- ErrorInfoVo errorInfoVo = new ErrorInfoVo();
|
|
|
|
- errorInfoVo.setRowNum(rNum);
|
|
|
|
- errorInfoVo.setColumnNum(columnNum);
|
|
|
|
- errorInfoVo.setColumnName(columnName);
|
|
|
|
- errorInfoVo.setContent(value);
|
|
|
|
- errorInfoVo.setReason("接单对象未在系统中");
|
|
|
|
- errorList.add(errorInfoVo);
|
|
|
|
- continue;
|
|
|
|
- }
|
|
|
|
- } else {
|
|
|
|
- ErrorInfoVo errorInfoVo = new ErrorInfoVo();
|
|
|
|
- errorInfoVo.setRowNum(rNum);
|
|
|
|
- errorInfoVo.setColumnNum(columnNum);
|
|
|
|
- errorInfoVo.setColumnName(columnName);
|
|
|
|
- errorInfoVo.setContent(value);
|
|
|
|
- errorInfoVo.setReason("接单对象错误");
|
|
|
|
- errorList.add(errorInfoVo);
|
|
|
|
- continue;
|
|
|
|
- }
|
|
|
|
- } else {
|
|
|
|
- wmScorePackage.setUserList(null);
|
|
|
|
- wmScorePackage.setScorePackageStatus("1");
|
|
|
|
- }
|
|
|
|
- } else if (j == 3) {
|
|
|
|
- wmScorePackage.setScore(Integer.parseInt(value));
|
|
|
|
- } else if (j == 4) {
|
|
|
|
- SysDept sysDept2 = new SysDept();
|
|
|
|
- sysDept2.setDeptId(SecurityUtils.getUser().getDeptId());
|
|
|
|
- List<SysDept> list = sysDeptService.getAllParentDept(sysDept2);
|
|
|
|
- boolean b = list.parallelStream().noneMatch(SysDept -> value.equals(SysDept.getName()));
|
|
|
|
-// List<String> name = list.stream().map(p->p.getName()).collect(Collectors.toList());
|
|
|
|
- if (!b) {
|
|
|
|
- List<SysDept> sysDept3 = sysDeptService.selectByName(value);
|
|
|
|
- wmScorePackage.setRelatedService(String.valueOf(sysDept3.get(0).getDeptId()));
|
|
|
|
- } else {
|
|
|
|
- ErrorInfoVo errorInfoVo = new ErrorInfoVo();
|
|
|
|
- errorInfoVo.setRowNum(rNum);
|
|
|
|
- errorInfoVo.setColumnNum(columnNum);
|
|
|
|
- errorInfoVo.setColumnName(columnName);
|
|
|
|
- errorInfoVo.setContent(value);
|
|
|
|
- errorInfoVo.setReason("关联服务企业错误");
|
|
|
|
- errorList.add(errorInfoVo);
|
|
|
|
- continue;
|
|
|
|
- }
|
|
|
|
- } else if (j == 5) {
|
|
|
|
- WmScorePackage wmScorePackage1 = new WmScorePackage();
|
|
|
|
- wmScorePackage1.setScorePackageName(value);
|
|
|
|
- wmScorePackage1.setDeptId(String.valueOf(SecurityUtils.getUser().getDeptId()));
|
|
|
|
- WmScorePackage wmScorePackage2 = wmScorePackageMapper.selectByName(wmScorePackage1);
|
|
|
|
- if (!wmScorePackage1.getScorePackageName().equals("无") && wmScorePackage2 != null) {
|
|
|
|
- wmScorePackage.setRelationScoreId(wmScorePackage2.getId());
|
|
|
|
- if (i != 1) {
|
|
|
|
- map.put("id1", wmScorePackage.getRelationScoreId());
|
|
|
|
- mapList.add(map.get("id1"));
|
|
|
|
- map.put(wmScorePackage.getRelationScoreId(), wmScorePackage.getScore());
|
|
|
|
- }
|
|
|
|
- if (map.get("id") != null) {
|
|
|
|
- if (mapList.contains(wmScorePackage.getRelationScoreId())) {
|
|
|
|
- map.put(wmScorePackage.getRelationScoreId(), wmScorePackage.getScore() + (Integer) map
|
|
|
|
- .get(wmScorePackage.getRelationScoreId()));
|
|
|
|
- } else {
|
|
|
|
- map.put(wmScorePackage.getRelationScoreId(), wmScorePackage.getScore());
|
|
|
|
- }
|
|
|
|
- } else {
|
|
|
|
- map.put("id", wmScorePackage.getRelationScoreId());
|
|
|
|
- mapList.add(map.get("id"));
|
|
|
|
- map.put(wmScorePackage.getRelationScoreId(), wmScorePackage.getScore());
|
|
|
|
- }
|
|
|
|
- List<WmScoreTaskType> taskTypelist = wmScoreTaskTypeMapper.getScoreTaskTypeByScoreId(wmScorePackage2
|
|
|
|
- .getId());
|
|
|
|
- wmScorePackage.setTaskTypeList1(taskTypelist);
|
|
|
|
- } else if (wmScorePackage1.getScorePackageName().equals("无")) {
|
|
|
|
- wmScorePackage.setRelationScoreId(null);
|
|
|
|
- } else {
|
|
|
|
- ErrorInfoVo errorInfoVo = new ErrorInfoVo();
|
|
|
|
- errorInfoVo.setRowNum(rNum);
|
|
|
|
- errorInfoVo.setColumnNum(columnNum);
|
|
|
|
- errorInfoVo.setColumnName(columnName);
|
|
|
|
- errorInfoVo.setContent(value);
|
|
|
|
- errorInfoVo.setReason("关联任务积分包错误");
|
|
|
|
- errorList.add(errorInfoVo);
|
|
|
|
- continue;
|
|
|
|
- }
|
|
|
|
- } else if (j == 6) {
|
|
|
|
- if ("仅内部可见".equals(value)) {
|
|
|
|
- wmScorePackage.setPackageUserScope("1");
|
|
|
|
- } else if ("全部可见".equals(value)) {
|
|
|
|
- wmScorePackage.setPackageUserScope("2");
|
|
|
|
- } else {
|
|
|
|
- ErrorInfoVo errorInfoVo = new ErrorInfoVo();
|
|
|
|
- errorInfoVo.setRowNum(rNum);
|
|
|
|
- errorInfoVo.setColumnNum(columnNum);
|
|
|
|
- errorInfoVo.setColumnName(columnName);
|
|
|
|
- errorInfoVo.setContent(value);
|
|
|
|
- errorInfoVo.setReason("接单对象范围错误");
|
|
|
|
- errorList.add(errorInfoVo);
|
|
|
|
- continue;
|
|
|
|
- }
|
|
|
|
- } else if (j == 7) {
|
|
|
|
- String types = value;
|
|
|
|
- if (types.contains("&")) {
|
|
|
|
- String[] strs = types.split("&");
|
|
|
|
- Arrays.asList(strs);
|
|
|
|
- List<WmTaskTypeTree> list2 = new ArrayList();
|
|
|
|
- for (int k = 0; k < strs.length; k++) {
|
|
|
|
- WmTaskTypeTree wmTaskTypeTree = new WmTaskTypeTree();
|
|
|
|
- wmTaskTypeTree.setTaskTypeName(strs[k]);
|
|
|
|
- list2.add(wmTaskTypeTree);
|
|
|
|
- }
|
|
|
|
- wmScorePackage.setTaskTypeList(list2);
|
|
|
|
- } else {
|
|
|
|
- List<WmTaskTypeTree> list2 = new ArrayList();
|
|
|
|
- WmTaskTypeTree wmTaskTypeTree = new WmTaskTypeTree();
|
|
|
|
- wmTaskTypeTree.setTaskTypeName(value);
|
|
|
|
- list2.add(wmTaskTypeTree);
|
|
|
|
- wmScorePackage.setTaskTypeList(list2);
|
|
|
|
- }
|
|
|
|
|
|
+ m.put("reason", entry.getKey());
|
|
|
|
|
|
- } else if (j == 8) {
|
|
|
|
- wmScorePackage.setDescription(value);
|
|
|
|
- }
|
|
|
|
- wmScorePackage.setPackageType1("1");
|
|
|
|
- wmScorePackage.setPackageType2("1");
|
|
|
|
- wmScorePackage.setBelongDate(LocalDateTime.now()
|
|
|
|
- .format(DateTimeFormatter.ofPattern("yyyy-MM")) + "");
|
|
|
|
|
|
+ m.put("line", entry.getValue());
|
|
|
|
+ resultList.add(m);
|
|
}
|
|
}
|
|
|
|
|
|
- wmScorePackageList.add(wmScorePackage);
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- // 判断是否有错误的数据行,如果没有,执行入库操作
|
|
|
|
- if (CollectionUtils.isEmpty(errorList)) {
|
|
|
|
- for (WmScorePackage wmScorePackage : wmScorePackageList) {
|
|
|
|
- if (wmScorePackage.getRelationScoreId() != null) {
|
|
|
|
- if (mapList.contains(wmScorePackage.getRelationScoreId())) {
|
|
|
|
- Map<String, Object> map1 = new HashMap<>();
|
|
|
|
- map1.put("type", wmScorePackage.getTypeid());
|
|
|
|
- String deptId = String.valueOf(SecurityUtils.getUser().getDeptId());
|
|
|
|
- wmScorePackage.setDeptId(deptId);
|
|
|
|
- wmScorePackage.setTypeid("0,1,2");
|
|
|
|
- wmScorePackage.setSendPackageDeptId(wmScorePackage.getRelatedService());
|
|
|
|
- List<WmScorePackage> packageList = wmScorePackageMapper.getScorePackagekfpjf(wmScorePackage);
|
|
|
|
- wmScorePackage.setTypeid(String.valueOf(map1.get("type")));
|
|
|
|
- wmScorePackage.setSendPackageDeptId(String.valueOf(SecurityUtils.getUser().getDeptId()));
|
|
|
|
- List<String> list = packageList.stream().map(p -> p.getId()).collect(Collectors.toList());
|
|
|
|
- for (String id : list) {
|
|
|
|
- if (wmScorePackage.getRelationScoreId().equals(id)) {
|
|
|
|
- WmScorePackage wmScorePackage1 = wmScorePackageService.getById(id);
|
|
|
|
- if (wmScorePackage1.getKfpjf() < (Integer) map.get(wmScorePackage.getRelationScoreId())) {
|
|
|
|
- ErrorInfoVo errorInfoVo = new ErrorInfoVo();
|
|
|
|
- errorInfoVo.setReason("填写积分值总值大于关联积分包可分配积分值");
|
|
|
|
- errorList.add(errorInfoVo);
|
|
|
|
- return R.ok(errorList);
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
|
|
+ return R.ok(resultList);
|
|
|
|
+ }
|
|
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
- wmScorePackageService.saveBatch(wmScorePackageList);
|
|
|
|
- for (WmScorePackage wmScorePackage : wmScorePackageList) {
|
|
|
|
-
|
|
|
|
- if (wmScorePackage.getUserList() != null && wmScorePackage.getUserList().size() > 0) {
|
|
|
|
- WmScorePackageStatus wmScorePackageStatus = new WmScorePackageStatus();
|
|
|
|
- SysUser sysUser = new SysUser();
|
|
|
|
- sysUser.setUsername(wmScorePackage.getUserList().get(0));
|
|
|
|
- sysUser.setDeptId(SecurityUtils.getUser().getDeptId());
|
|
|
|
- SysUser sysUser1 = sysUserMapper.selectUserByName(sysUser);
|
|
|
|
- wmScorePackageStatus.setUserId(sysUser1.getUserId() + "");
|
|
|
|
- wmScorePackageStatus.setStatus("2");
|
|
|
|
- wmScorePackageStatus.setPackageId(wmScorePackage.getId());
|
|
|
|
- wmScorePackageStatus.setDeptId(SecurityUtils.getUser().getDeptId() + "");
|
|
|
|
- wmScorePackageStatus.setUserScore(wmScorePackage.getScore() + "");
|
|
|
|
- wmScorePackageStatus.setEnableFlag("0");
|
|
|
|
- wmScorePackageStatus.setDelFlag("0");
|
|
|
|
- wmScorePackageStatus.setCreateTime(LocalDateTime.now());
|
|
|
|
- wmScorePackageStatus.setCreateUser(SecurityUtils.getUser().getId());
|
|
|
|
- wmScorePackageStatusService.save(wmScorePackageStatus);
|
|
|
|
- }
|
|
|
|
|
|
+ for (BatchPackageExcelModel model : batchPackageExcelModels) {
|
|
|
|
|
|
- if (wmScorePackage.getRelationScoreId() != null) {
|
|
|
|
- if (wmScorePackage.getRelationScoreId().equals(map.get("id"))) {
|
|
|
|
- WmScorePackage wmScorePackage1 = wmScorePackageService.getById(wmScorePackage.getRelationScoreId());
|
|
|
|
- wmScorePackage1.setKfpjf(wmScorePackage1.getKfpjf() - (Integer) map.get(wmScorePackage.getRelationScoreId()));
|
|
|
|
- wmScorePackageService.updateById(wmScorePackage1);
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
|
|
+ scorePackage.setScore(Integer.parseInt(model.getScore()));
|
|
|
|
+ scorePackage.setScorePackageName(model.getScorePackageName());
|
|
|
|
+ scorePackage.setDescription(model.getDescription());
|
|
|
|
+ scorePackage.setUserList(StrUtil.isEmpty(model.getTargetId()) ? new ArrayList<>(1) :
|
|
|
|
+ Collections.singletonList(model.getTargetId()));
|
|
|
|
|
|
- if (wmScorePackage.getRelationScoreId() != null && wmScorePackage.getRelationScoreId() != null) {
|
|
|
|
- List<String> list = wmScorePackage.getTaskTypeList1()
|
|
|
|
- .stream()
|
|
|
|
- .map(p -> p.getTaskTypeId())
|
|
|
|
- .collect(Collectors.toList());
|
|
|
|
- for (String id : list) {
|
|
|
|
- WmScoreTaskType wmScoreTaskType = new WmScoreTaskType();
|
|
|
|
- wmScoreTaskType.setScoreId(wmScorePackage.getId());
|
|
|
|
- wmScoreTaskType.setTaskTypeId(id);
|
|
|
|
- wmScoreTaskTypeMapper.insert(wmScoreTaskType);
|
|
|
|
- }
|
|
|
|
- } else if (wmScorePackage.getTaskTypeList()
|
|
|
|
- .get(0)
|
|
|
|
- .getTaskTypeName()
|
|
|
|
- .equals("全部") && wmScorePackage.getRelationScoreId() == null) {
|
|
|
|
- WmScoreTaskType wmScoreTaskType = new WmScoreTaskType();
|
|
|
|
- wmScoreTaskType.setScoreId(wmScorePackage.getId());
|
|
|
|
- wmScoreTaskType.setTaskTypeId(WmScoreTaskTypeEnum.TASK_TYPE_ENUM1.getType());
|
|
|
|
- wmScoreTaskTypeMapper.insert(wmScoreTaskType);
|
|
|
|
- WmScoreTaskType wmScoreTaskType1 = new WmScoreTaskType();
|
|
|
|
- wmScoreTaskType1.setScoreId(wmScorePackage.getId());
|
|
|
|
- wmScoreTaskType1.setTaskTypeId(WmScoreTaskTypeEnum.TASK_TYPE_ENUM2.getType());
|
|
|
|
- wmScoreTaskTypeMapper.insert(wmScoreTaskType1);
|
|
|
|
- WmScoreTaskType wmScoreTaskType2 = new WmScoreTaskType();
|
|
|
|
- wmScoreTaskType2.setScoreId(wmScorePackage.getId());
|
|
|
|
- wmScoreTaskType2.setTaskTypeId(WmScoreTaskTypeEnum.TASK_TYPE_ENUM3.getType());
|
|
|
|
- wmScoreTaskTypeMapper.insert(wmScoreTaskType2);
|
|
|
|
- WmScoreTaskType wmScoreTaskType3 = new WmScoreTaskType();
|
|
|
|
- wmScoreTaskType3.setScoreId(wmScorePackage.getId());
|
|
|
|
- wmScoreTaskType3.setTaskTypeId(WmScoreTaskTypeEnum.TASK_TYPE_ENUM4.getType());
|
|
|
|
- wmScoreTaskTypeMapper.insert(wmScoreTaskType3);
|
|
|
|
- WmScoreTaskType wmScoreTaskType4 = new WmScoreTaskType();
|
|
|
|
- wmScoreTaskType4.setScoreId(wmScorePackage.getId());
|
|
|
|
- wmScoreTaskType4.setTaskTypeId(WmScoreTaskTypeEnum.TASK_TYPE_ENUM5.getType());
|
|
|
|
- wmScoreTaskTypeMapper.insert(wmScoreTaskType4);
|
|
|
|
- WmScoreTaskType wmScoreTaskType5 = new WmScoreTaskType();
|
|
|
|
- wmScoreTaskType5.setScoreId(wmScorePackage.getId());
|
|
|
|
- wmScoreTaskType5.setTaskTypeId(WmScoreTaskTypeEnum.TASK_TYPE_ENUM6.getType());
|
|
|
|
- wmScoreTaskTypeMapper.insert(wmScoreTaskType5);
|
|
|
|
- WmScoreTaskType wmScoreTaskType6 = new WmScoreTaskType();
|
|
|
|
- wmScoreTaskType6.setScoreId(wmScorePackage.getId());
|
|
|
|
- wmScoreTaskType6.setTaskTypeId(WmScoreTaskTypeEnum.TASK_TYPE_ENUM7.getType());
|
|
|
|
- wmScoreTaskTypeMapper.insert(wmScoreTaskType6);
|
|
|
|
- WmScoreTaskType wmScoreTaskType7 = new WmScoreTaskType();
|
|
|
|
- wmScoreTaskType7.setScoreId(wmScorePackage.getId());
|
|
|
|
- wmScoreTaskType7.setTaskTypeId(WmScoreTaskTypeEnum.TASK_TYPE_ENUM8.getType());
|
|
|
|
- wmScoreTaskTypeMapper.insert(wmScoreTaskType7);
|
|
|
|
- WmScoreTaskType wmScoreTaskType8 = new WmScoreTaskType();
|
|
|
|
- wmScoreTaskType8.setScoreId(wmScorePackage.getId());
|
|
|
|
- wmScoreTaskType8.setTaskTypeId(WmScoreTaskTypeEnum.TASK_TYPE_ENUM9.getType());
|
|
|
|
- wmScoreTaskTypeMapper.insert(wmScoreTaskType8);
|
|
|
|
- WmScoreTaskType wmScoreTaskType9 = new WmScoreTaskType();
|
|
|
|
- wmScoreTaskType9.setScoreId(wmScorePackage.getId());
|
|
|
|
- wmScoreTaskType9.setTaskTypeId(WmScoreTaskTypeEnum.TASK_TYPE_ENUM10.getType());
|
|
|
|
- wmScoreTaskTypeMapper.insert(wmScoreTaskType9);
|
|
|
|
- WmScoreTaskType wmScoreTaskType10 = new WmScoreTaskType();
|
|
|
|
- wmScoreTaskType10.setScoreId(wmScorePackage.getId());
|
|
|
|
- wmScoreTaskType10.setTaskTypeId(WmScoreTaskTypeEnum.TASK_TYPE_ENUM11.getType());
|
|
|
|
- wmScoreTaskTypeMapper.insert(wmScoreTaskType10);
|
|
|
|
- WmScoreTaskType wmScoreTaskType11 = new WmScoreTaskType();
|
|
|
|
- wmScoreTaskType11.setScoreId(wmScorePackage.getId());
|
|
|
|
- wmScoreTaskType11.setTaskTypeId(WmScoreTaskTypeEnum.TASK_TYPE_ENUM12.getType());
|
|
|
|
- wmScoreTaskTypeMapper.insert(wmScoreTaskType11);
|
|
|
|
- WmScoreTaskType wmScoreTaskType12 = new WmScoreTaskType();
|
|
|
|
- wmScoreTaskType12.setScoreId(wmScorePackage.getId());
|
|
|
|
- wmScoreTaskType12.setTaskTypeId(WmScoreTaskTypeEnum.TASK_TYPE_ENUM13.getType());
|
|
|
|
- wmScoreTaskTypeMapper.insert(wmScoreTaskType12);
|
|
|
|
- WmScoreTaskType wmScoreTaskType13 = new WmScoreTaskType();
|
|
|
|
- wmScoreTaskType13.setScoreId(wmScorePackage.getId());
|
|
|
|
- wmScoreTaskType13.setTaskTypeId(WmScoreTaskTypeEnum.TASK_TYPE_ENUM14.getType());
|
|
|
|
- wmScoreTaskTypeMapper.insert(wmScoreTaskType13);
|
|
|
|
- WmScoreTaskType wmScoreTaskType14 = new WmScoreTaskType();
|
|
|
|
- wmScoreTaskType14.setScoreId(wmScorePackage.getId());
|
|
|
|
- wmScoreTaskType14.setTaskTypeId(WmScoreTaskTypeEnum.TASK_TYPE_ENUM15.getType());
|
|
|
|
- wmScoreTaskTypeMapper.insert(wmScoreTaskType14);
|
|
|
|
- WmScoreTaskType wmScoreTaskType15 = new WmScoreTaskType();
|
|
|
|
- wmScoreTaskType15.setScoreId(wmScorePackage.getId());
|
|
|
|
- wmScoreTaskType15.setTaskTypeId(WmScoreTaskTypeEnum.TASK_TYPE_ENUM16.getType());
|
|
|
|
- wmScoreTaskTypeMapper.insert(wmScoreTaskType15);
|
|
|
|
- WmScoreTaskType wmScoreTaskType16 = new WmScoreTaskType();
|
|
|
|
- wmScoreTaskType16.setScoreId(wmScorePackage.getId());
|
|
|
|
- wmScoreTaskType16.setTaskTypeId(WmScoreTaskTypeEnum.TASK_TYPE_ENUM19.getType());
|
|
|
|
- wmScoreTaskTypeMapper.insert(wmScoreTaskType16);
|
|
|
|
- WmScoreTaskType wmScoreTaskType17 = new WmScoreTaskType();
|
|
|
|
- wmScoreTaskType17.setScoreId(wmScorePackage.getId());
|
|
|
|
- wmScoreTaskType17.setTaskTypeId(WmScoreTaskTypeEnum.TASK_TYPE_ENUM17.getType());
|
|
|
|
- wmScoreTaskTypeMapper.insert(wmScoreTaskType17);
|
|
|
|
- WmScoreTaskType wmScoreTaskType18 = new WmScoreTaskType();
|
|
|
|
- wmScoreTaskType18.setScoreId(wmScorePackage.getId());
|
|
|
|
- wmScoreTaskType18.setTaskTypeId(WmScoreTaskTypeEnum.TASK_TYPE_ENUM18.getType());
|
|
|
|
- wmScoreTaskTypeMapper.insert(wmScoreTaskType18);
|
|
|
|
- WmScoreTaskType wmScoreTaskType19 = new WmScoreTaskType();
|
|
|
|
- wmScoreTaskType19.setScoreId(wmScorePackage.getId());
|
|
|
|
- wmScoreTaskType19.setTaskTypeId(WmScoreTaskTypeEnum.TASK_TYPE_ENUM20.getType());
|
|
|
|
- wmScoreTaskTypeMapper.insert(wmScoreTaskType19);
|
|
|
|
- WmScoreTaskType wmScoreTaskType20 = new WmScoreTaskType();
|
|
|
|
- wmScoreTaskType20.setScoreId(wmScorePackage.getId());
|
|
|
|
- wmScoreTaskType20.setTaskTypeId(WmScoreTaskTypeEnum.TASK_TYPE_ENUM21.getType());
|
|
|
|
- wmScoreTaskTypeMapper.insert(wmScoreTaskType20);
|
|
|
|
- WmScoreTaskType wmScoreTaskType21 = new WmScoreTaskType();
|
|
|
|
- wmScoreTaskType21.setScoreId(wmScorePackage.getId());
|
|
|
|
- wmScoreTaskType21.setTaskTypeId(WmScoreTaskTypeEnum.TASK_TYPE_ENUM22.getType());
|
|
|
|
- wmScoreTaskTypeMapper.insert(wmScoreTaskType21);
|
|
|
|
- } else if (wmScorePackage.getRelationScoreId() == null && wmScorePackage.getTaskTypeList()
|
|
|
|
- .size() > 0) {
|
|
|
|
- List<String> stringList = wmScorePackage.getTaskTypeList()
|
|
|
|
- .stream()
|
|
|
|
- .map(p -> p.getTaskTypeName())
|
|
|
|
- .collect(Collectors.toList());
|
|
|
|
- for (String name : stringList) {
|
|
|
|
- if (name.equals(WmScoreTaskTypeEnum.TASK_TYPE_ENUM1.getDescription())) {
|
|
|
|
- WmScoreTaskType wmScoreTaskType = new WmScoreTaskType();
|
|
|
|
- wmScoreTaskType.setScoreId(wmScorePackage.getId());
|
|
|
|
- wmScoreTaskType.setTaskTypeId(WmScoreTaskTypeEnum.TASK_TYPE_ENUM1.getType());
|
|
|
|
- wmScoreTaskTypeMapper.insert(wmScoreTaskType);
|
|
|
|
- }
|
|
|
|
- if (name.equals(WmScoreTaskTypeEnum.TASK_TYPE_ENUM2.getDescription())) {
|
|
|
|
- WmScoreTaskType wmScoreTaskType = new WmScoreTaskType();
|
|
|
|
- wmScoreTaskType.setScoreId(wmScorePackage.getId());
|
|
|
|
- wmScoreTaskType.setTaskTypeId(WmScoreTaskTypeEnum.TASK_TYPE_ENUM2.getType());
|
|
|
|
- wmScoreTaskTypeMapper.insert(wmScoreTaskType);
|
|
|
|
- }
|
|
|
|
- if (name.equals(WmScoreTaskTypeEnum.TASK_TYPE_ENUM3.getDescription())) {
|
|
|
|
- WmScoreTaskType wmScoreTaskType = new WmScoreTaskType();
|
|
|
|
- wmScoreTaskType.setScoreId(wmScorePackage.getId());
|
|
|
|
- wmScoreTaskType.setTaskTypeId(WmScoreTaskTypeEnum.TASK_TYPE_ENUM3.getType());
|
|
|
|
- wmScoreTaskTypeMapper.insert(wmScoreTaskType);
|
|
|
|
- }
|
|
|
|
- if (name.equals(WmScoreTaskTypeEnum.TASK_TYPE_ENUM4.getDescription())) {
|
|
|
|
- WmScoreTaskType wmScoreTaskType = new WmScoreTaskType();
|
|
|
|
- wmScoreTaskType.setScoreId(wmScorePackage.getId());
|
|
|
|
- wmScoreTaskType.setTaskTypeId(WmScoreTaskTypeEnum.TASK_TYPE_ENUM4.getType());
|
|
|
|
- wmScoreTaskTypeMapper.insert(wmScoreTaskType);
|
|
|
|
- }
|
|
|
|
- if (name.equals(WmScoreTaskTypeEnum.TASK_TYPE_ENUM5.getDescription())) {
|
|
|
|
- WmScoreTaskType wmScoreTaskType = new WmScoreTaskType();
|
|
|
|
- wmScoreTaskType.setScoreId(wmScorePackage.getId());
|
|
|
|
- wmScoreTaskType.setTaskTypeId(WmScoreTaskTypeEnum.TASK_TYPE_ENUM5.getType());
|
|
|
|
- wmScoreTaskTypeMapper.insert(wmScoreTaskType);
|
|
|
|
- }
|
|
|
|
- if (name.equals(WmScoreTaskTypeEnum.TASK_TYPE_ENUM6.getDescription())) {
|
|
|
|
- WmScoreTaskType wmScoreTaskType = new WmScoreTaskType();
|
|
|
|
- wmScoreTaskType.setScoreId(wmScorePackage.getId());
|
|
|
|
- wmScoreTaskType.setTaskTypeId(WmScoreTaskTypeEnum.TASK_TYPE_ENUM6.getType());
|
|
|
|
- wmScoreTaskTypeMapper.insert(wmScoreTaskType);
|
|
|
|
- }
|
|
|
|
- if (name.equals(WmScoreTaskTypeEnum.TASK_TYPE_ENUM7.getDescription())) {
|
|
|
|
- WmScoreTaskType wmScoreTaskType = new WmScoreTaskType();
|
|
|
|
- wmScoreTaskType.setScoreId(wmScorePackage.getId());
|
|
|
|
- wmScoreTaskType.setTaskTypeId(WmScoreTaskTypeEnum.TASK_TYPE_ENUM7.getType());
|
|
|
|
- wmScoreTaskTypeMapper.insert(wmScoreTaskType);
|
|
|
|
- }
|
|
|
|
- if (name.equals(WmScoreTaskTypeEnum.TASK_TYPE_ENUM8.getDescription())) {
|
|
|
|
- WmScoreTaskType wmScoreTaskType = new WmScoreTaskType();
|
|
|
|
- wmScoreTaskType.setScoreId(wmScorePackage.getId());
|
|
|
|
- wmScoreTaskType.setTaskTypeId(WmScoreTaskTypeEnum.TASK_TYPE_ENUM8.getType());
|
|
|
|
- wmScoreTaskTypeMapper.insert(wmScoreTaskType);
|
|
|
|
- }
|
|
|
|
- if (name.equals(WmScoreTaskTypeEnum.TASK_TYPE_ENUM9.getDescription())) {
|
|
|
|
- WmScoreTaskType wmScoreTaskType = new WmScoreTaskType();
|
|
|
|
- wmScoreTaskType.setScoreId(wmScorePackage.getId());
|
|
|
|
- wmScoreTaskType.setTaskTypeId(WmScoreTaskTypeEnum.TASK_TYPE_ENUM9.getType());
|
|
|
|
- wmScoreTaskTypeMapper.insert(wmScoreTaskType);
|
|
|
|
- }
|
|
|
|
- if (name.equals(WmScoreTaskTypeEnum.TASK_TYPE_ENUM10.getDescription())) {
|
|
|
|
- WmScoreTaskType wmScoreTaskType = new WmScoreTaskType();
|
|
|
|
- wmScoreTaskType.setScoreId(wmScorePackage.getId());
|
|
|
|
- wmScoreTaskType.setTaskTypeId(WmScoreTaskTypeEnum.TASK_TYPE_ENUM10.getType());
|
|
|
|
- wmScoreTaskTypeMapper.insert(wmScoreTaskType);
|
|
|
|
- }
|
|
|
|
- if (name.equals(WmScoreTaskTypeEnum.TASK_TYPE_ENUM11.getDescription())) {
|
|
|
|
- WmScoreTaskType wmScoreTaskType = new WmScoreTaskType();
|
|
|
|
- wmScoreTaskType.setScoreId(wmScorePackage.getId());
|
|
|
|
- wmScoreTaskType.setTaskTypeId(WmScoreTaskTypeEnum.TASK_TYPE_ENUM11.getType());
|
|
|
|
- wmScoreTaskTypeMapper.insert(wmScoreTaskType);
|
|
|
|
- }
|
|
|
|
- if (name.equals(WmScoreTaskTypeEnum.TASK_TYPE_ENUM12.getDescription())) {
|
|
|
|
- WmScoreTaskType wmScoreTaskType = new WmScoreTaskType();
|
|
|
|
- wmScoreTaskType.setScoreId(wmScorePackage.getId());
|
|
|
|
- wmScoreTaskType.setTaskTypeId(WmScoreTaskTypeEnum.TASK_TYPE_ENUM12.getType());
|
|
|
|
- wmScoreTaskTypeMapper.insert(wmScoreTaskType);
|
|
|
|
- }
|
|
|
|
- if (name.equals(WmScoreTaskTypeEnum.TASK_TYPE_ENUM13.getDescription())) {
|
|
|
|
- WmScoreTaskType wmScoreTaskType = new WmScoreTaskType();
|
|
|
|
- wmScoreTaskType.setScoreId(wmScorePackage.getId());
|
|
|
|
- wmScoreTaskType.setTaskTypeId(WmScoreTaskTypeEnum.TASK_TYPE_ENUM13.getType());
|
|
|
|
- wmScoreTaskTypeMapper.insert(wmScoreTaskType);
|
|
|
|
- }
|
|
|
|
- if (name.equals(WmScoreTaskTypeEnum.TASK_TYPE_ENUM14.getDescription())) {
|
|
|
|
- WmScoreTaskType wmScoreTaskType = new WmScoreTaskType();
|
|
|
|
- wmScoreTaskType.setScoreId(wmScorePackage.getId());
|
|
|
|
- wmScoreTaskType.setTaskTypeId(WmScoreTaskTypeEnum.TASK_TYPE_ENUM14.getType());
|
|
|
|
- wmScoreTaskTypeMapper.insert(wmScoreTaskType);
|
|
|
|
- }
|
|
|
|
- if (name.equals(WmScoreTaskTypeEnum.TASK_TYPE_ENUM15.getDescription())) {
|
|
|
|
- WmScoreTaskType wmScoreTaskType = new WmScoreTaskType();
|
|
|
|
- wmScoreTaskType.setScoreId(wmScorePackage.getId());
|
|
|
|
- wmScoreTaskType.setTaskTypeId(WmScoreTaskTypeEnum.TASK_TYPE_ENUM15.getType());
|
|
|
|
- wmScoreTaskTypeMapper.insert(wmScoreTaskType);
|
|
|
|
- }
|
|
|
|
- if (name.equals(WmScoreTaskTypeEnum.TASK_TYPE_ENUM16.getDescription())) {
|
|
|
|
- WmScoreTaskType wmScoreTaskType = new WmScoreTaskType();
|
|
|
|
- wmScoreTaskType.setScoreId(wmScorePackage.getId());
|
|
|
|
- wmScoreTaskType.setTaskTypeId(WmScoreTaskTypeEnum.TASK_TYPE_ENUM16.getType());
|
|
|
|
- wmScoreTaskTypeMapper.insert(wmScoreTaskType);
|
|
|
|
- }
|
|
|
|
- if (name.equals(WmScoreTaskTypeEnum.TASK_TYPE_ENUM19.getDescription())) {
|
|
|
|
- WmScoreTaskType wmScoreTaskType = new WmScoreTaskType();
|
|
|
|
- wmScoreTaskType.setScoreId(wmScorePackage.getId());
|
|
|
|
- wmScoreTaskType.setTaskTypeId(WmScoreTaskTypeEnum.TASK_TYPE_ENUM19.getType());
|
|
|
|
- wmScoreTaskTypeMapper.insert(wmScoreTaskType);
|
|
|
|
- }
|
|
|
|
- if (name.equals(WmScoreTaskTypeEnum.TASK_TYPE_ENUM17.getDescription())) {
|
|
|
|
- WmScoreTaskType wmScoreTaskType = new WmScoreTaskType();
|
|
|
|
- wmScoreTaskType.setScoreId(wmScorePackage.getId());
|
|
|
|
- wmScoreTaskType.setTaskTypeId(WmScoreTaskTypeEnum.TASK_TYPE_ENUM17.getType());
|
|
|
|
- wmScoreTaskTypeMapper.insert(wmScoreTaskType);
|
|
|
|
- }
|
|
|
|
- if (name.equals(WmScoreTaskTypeEnum.TASK_TYPE_ENUM18.getDescription())) {
|
|
|
|
- WmScoreTaskType wmScoreTaskType = new WmScoreTaskType();
|
|
|
|
- wmScoreTaskType.setScoreId(wmScorePackage.getId());
|
|
|
|
- wmScoreTaskType.setTaskTypeId(WmScoreTaskTypeEnum.TASK_TYPE_ENUM18.getType());
|
|
|
|
- wmScoreTaskTypeMapper.insert(wmScoreTaskType);
|
|
|
|
- }
|
|
|
|
- if (name.equals(WmScoreTaskTypeEnum.TASK_TYPE_ENUM20.getDescription())) {
|
|
|
|
- WmScoreTaskType wmScoreTaskType = new WmScoreTaskType();
|
|
|
|
- wmScoreTaskType.setScoreId(wmScorePackage.getId());
|
|
|
|
- wmScoreTaskType.setTaskTypeId(WmScoreTaskTypeEnum.TASK_TYPE_ENUM20.getType());
|
|
|
|
- wmScoreTaskTypeMapper.insert(wmScoreTaskType);
|
|
|
|
- }
|
|
|
|
- if (name.equals(WmScoreTaskTypeEnum.TASK_TYPE_ENUM21.getDescription())) {
|
|
|
|
- WmScoreTaskType wmScoreTaskType = new WmScoreTaskType();
|
|
|
|
- wmScoreTaskType.setScoreId(wmScorePackage.getId());
|
|
|
|
- wmScoreTaskType.setTaskTypeId(WmScoreTaskTypeEnum.TASK_TYPE_ENUM21.getType());
|
|
|
|
- wmScoreTaskTypeMapper.insert(wmScoreTaskType);
|
|
|
|
- }
|
|
|
|
- if (name.equals(WmScoreTaskTypeEnum.TASK_TYPE_ENUM22.getDescription())) {
|
|
|
|
- WmScoreTaskType wmScoreTaskType = new WmScoreTaskType();
|
|
|
|
- wmScoreTaskType.setScoreId(wmScorePackage.getId());
|
|
|
|
- wmScoreTaskType.setTaskTypeId(WmScoreTaskTypeEnum.TASK_TYPE_ENUM22.getType());
|
|
|
|
- wmScoreTaskTypeMapper.insert(wmScoreTaskType);
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
- return R.ok(errorList);
|
|
|
|
|
|
+ wmScorePackageService.addWmScorePackage(scorePackage);
|
|
|
|
|
|
- } catch (Exception e) {
|
|
|
|
- return R.failed("批量创建积分包失败");
|
|
|
|
|
|
+
|
|
|
|
+ }
|
|
|
|
+ } finally {
|
|
|
|
+ log.warn("==========================================批量导入积分包:结束=====================================================");
|
|
|
|
+ redisTemplate.delete(lock);
|
|
}
|
|
}
|
|
|
|
+ return R.ok();
|
|
}
|
|
}
|
|
|
|
|
|
- /**
|
|
|
|
- * 获取当前部门的基于所有积分包的相关信息
|
|
|
|
- *
|
|
|
|
- * @return 积分包的相关信息
|
|
|
|
- */
|
|
|
|
- @ApiOperation(value = "获取当前部门的基于所有积分包的相关信息", notes = "获取当前部门的基于所有积分包的相关信息")
|
|
|
|
- @GetMapping("/getDeptScorePackageInfo")
|
|
|
|
- public R getDeptScorePackageInfo() {
|
|
|
|
- Integer deptId = SecurityUtils.getUser().getDeptId();
|
|
|
|
- Map<String, Object> result = wmScorePackageService.getDeptScorePackageInfo(deptId);
|
|
|
|
- return R.ok(result);
|
|
|
|
- }
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
- * 获取积分包关联企业的药品列表
|
|
|
|
|
|
+ * 校验model
|
|
*
|
|
*
|
|
- * @param page 分页信息
|
|
|
|
- * @param packageId 积分包id
|
|
|
|
- * @param drugName 药品名称
|
|
|
|
- * @return 药品列表
|
|
|
|
|
|
+ * @param model model
|
|
|
|
+ * @param targetType 接包人类型
|
|
|
|
+ * @param errorMap 收集错误map
|
|
|
|
+ * @param row 所在行
|
|
|
|
+ * @param deptId 所属企业
|
|
*/
|
|
*/
|
|
- @SysLog("获取积分包关联企业的药品列表")
|
|
|
|
- @GetMapping(value = "/drugs")
|
|
|
|
- public R listDrugsByPackageId(Page page, @RequestParam(value = "packageId") Integer packageId, @RequestParam(value = "name", required = false) String drugName) {
|
|
|
|
- return R.ok(wmScorePackageService.listDrugsByPackageId(page, packageId, drugName.trim()));
|
|
|
|
|
|
+ private Integer checkColumn(BatchPackageExcelModel model, TargetType targetType,
|
|
|
|
+ Multimap<String, Object> errorMap, Integer row, Integer deptId) {
|
|
|
|
+
|
|
|
|
+ log.warn("==========================================校验批量下发积分包model:开始=====================================================");
|
|
|
|
+
|
|
|
|
+ // 校验类型
|
|
|
|
+ log.info("[{}]", model.getTargetType());
|
|
|
|
+ if (!targetType.getDesc().equals(model.getTargetType())) {
|
|
|
|
+ errorMap.put("接单对象类型不匹配", row);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ // 校验是否同名
|
|
|
|
+ log.info("[{}]", model.getScorePackageName());
|
|
|
|
+ if (StrUtil.isNotEmpty(model.getScorePackageName())) {
|
|
|
|
+ int count = wmScorePackageService.count(Wrappers.<WmScorePackage>lambdaQuery()
|
|
|
|
+ .eq(WmScorePackage::getScorePackageName, model.getScorePackageName()));
|
|
|
|
+
|
|
|
|
+ if (count != 0) {
|
|
|
|
+ errorMap.put("积分包重名了", row);
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ // 校验积分制是否为空
|
|
|
|
+ log.info("[{}]", model.getScore());
|
|
|
|
+ if (StrUtil.isEmpty(model.getScore())) {
|
|
|
|
+ errorMap.put("积分值未填", row);
|
|
|
|
+ } else {
|
|
|
|
+ // 校验是否是数字
|
|
|
|
+ if (!Validator.isNumber(model.getScore())) {
|
|
|
|
+ errorMap.put("积分值不是数字", row);
|
|
|
|
+ } else if (model.getScore().contains(StrUtil.DOT) || Integer.parseInt(model.getScore()) <= 0) {
|
|
|
|
+ errorMap.put("积分值必须是正整数", row);
|
|
|
|
+ model.setScore("0");
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ // 全职校验
|
|
|
|
+ if (TargetType.FULL_TIME.equals(targetType)) {
|
|
|
|
+
|
|
|
|
+ // 校验名称是否为空
|
|
|
|
+ log.info("[{}]", model.getTargetName());
|
|
|
|
+ if (StrUtil.isEmpty(model.getTargetName())) {
|
|
|
|
+ errorMap.put("接单人姓名未填", row);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ // 校验名称是否为空,是否是企业下的人
|
|
|
|
+ log.info("[{}]", model.getMobile());
|
|
|
|
+ if (StrUtil.isEmpty(model.getMobile())) {
|
|
|
|
+ errorMap.put("接单人手机号未填", row);
|
|
|
|
+ } else {
|
|
|
|
+ if (!Validator.isMobile(model.getMobile())) {
|
|
|
|
+ errorMap.put("手机号格式不争取", row);
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ // 校验是否是企业下的
|
|
|
|
+ List<SysUser> target = sysUserService.list(Wrappers.<SysUser>lambdaQuery()
|
|
|
|
+ .eq(SysUser::getRealname, model.getTargetName())
|
|
|
|
+ .eq(SysUser::getUsername, model.getMobile())
|
|
|
|
+ .eq(SysUser::getDeptId, deptId)
|
|
|
|
+ .eq(SysUser::getDelFlag, CommonConstants.STATUS_NORMAL)
|
|
|
|
+ .eq(SysUser::getLockFlag, CommonConstants.STATUS_NORMAL)
|
|
|
|
+ );
|
|
|
|
+
|
|
|
|
+ if (CollUtil.isEmpty(target) || target.size() > 1) {
|
|
|
|
+ errorMap.put("查无此人", row);
|
|
|
|
+ } else {
|
|
|
|
+ model.setTargetId(String.valueOf(target.get(0).getUserId()));
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ // 兼职校验
|
|
|
|
+ else {
|
|
|
|
+ // 校验名称是否为空
|
|
|
|
+ log.info("MOBILE: [{}], NAME: [{}]", model.getTargetName(), model.getTargetName());
|
|
|
|
+ if (StrUtil.isNotEmpty(model.getTargetName()) || StrUtil.isNotEmpty(model.getMobile())) {
|
|
|
|
+ errorMap.put("请勿使用全职模板", row);
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ log.warn("==========================================校验批量下发积分包model:开始=====================================================");
|
|
|
|
+ return Integer.parseInt(model.getScore());
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
}
|
|
}
|