|
@@ -77,6 +77,7 @@ import java.util.concurrent.Future;
|
|
|
import java.util.concurrent.TimeUnit;
|
|
|
import java.util.function.Function;
|
|
|
import java.util.stream.Collectors;
|
|
|
+import java.util.stream.Stream;
|
|
|
|
|
|
|
|
|
/**
|
|
@@ -1385,17 +1386,113 @@ public class WmScorePackageController {
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
- * 分页查询积分管理信息 二期 业务平台
|
|
|
+ * 获取企业大包详细信息
|
|
|
+ *
|
|
|
+ * @param id 积分包id
|
|
|
+ * @return {@link R}<{@link ?}> 积分包详情
|
|
|
*/
|
|
|
- @GetMapping("/selectWmScorePackageLists")
|
|
|
- public R<?> selectWmScorePackageList(@RequestParam(value = "current") Integer current,
|
|
|
+ @GetMapping("/get-big-package-detail")
|
|
|
+ public R<?> getBigPackageDetail(String id) {
|
|
|
+ WmScorePackage wmScorePackage = wmScorePackageMapper.selectById(id);
|
|
|
+
|
|
|
+ // 关联积分包
|
|
|
+ if (StrUtil.isBlank(wmScorePackage.getRelationScoreId())) {
|
|
|
+ wmScorePackage.setRelationScoreId("-1");
|
|
|
+ wmScorePackage.setRelationScoreName("无");
|
|
|
+ } else {
|
|
|
+ WmScorePackage relationPackage = wmScorePackageMapper.selectById(wmScorePackage.getRelationScoreId());
|
|
|
+ if (relationPackage != null) {
|
|
|
+ wmScorePackage.setRelationScoreName(relationPackage.getScorePackageName());
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ // 关联服务企业
|
|
|
+ if (StrUtil.isNotBlank(wmScorePackage.getRelatedService())) {
|
|
|
+ SysDept serviceDept = sysDeptService.getById(wmScorePackage.getRelatedService());
|
|
|
+ if (serviceDept != null) {
|
|
|
+ wmScorePackage.setRelatedServiceName(serviceDept.getName());
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ // 接包对象
|
|
|
+ if (StrUtil.isNotBlank(wmScorePackage.getAcceptSug())) {
|
|
|
+ // 此处暂认为drugEnt和agent不会出现相同的id
|
|
|
+ WmDaAgent daAgent = wmDaAgentMapper.selectById(wmScorePackage.getAcceptSug());
|
|
|
+ if (daAgent == null) {
|
|
|
+ WmDaDrugEnt daDrugEnt = wmDaDrugEntMapper.selectById(wmScorePackage.getAcceptSug());
|
|
|
+ if (daDrugEnt != null) {
|
|
|
+ wmScorePackage.setAcceptSug(daDrugEnt.getEntname());
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ wmScorePackage.setAcceptSugName(daAgent.getGsmc());
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ // 可分配积分值
|
|
|
+ List<WmScorePackage> scorePackagekfpjf =
|
|
|
+ wmScorePackageService.getScorePackagekfpjf(
|
|
|
+ null,
|
|
|
+ null,
|
|
|
+ new String[]{"0", "1", "2"},
|
|
|
+ new String[]{id});
|
|
|
+ if (CollUtil.isNotEmpty(scorePackagekfpjf)) {
|
|
|
+ wmScorePackage.setKfpjf(scorePackagekfpjf.get(0).getKfpjf());
|
|
|
+ }
|
|
|
+
|
|
|
+ // 推广药品
|
|
|
+ if (ArrayUtil.isNotEmpty(wmScorePackage.getDrugtable())) {
|
|
|
+ List<WmDaDrugEntDrugtable> drugtables = wmDaDrugEntDrugtableService.listByIds(Stream.of(wmScorePackage.getDrugtable()).collect(Collectors.toSet()));
|
|
|
+ if (CollUtil.isNotEmpty(drugtables)) {
|
|
|
+ String[] drugtableNames = drugtables.stream().map(WmDaDrugEntDrugtable::getDrugname).toArray(String[]::new);
|
|
|
+ wmScorePackage.setDrugtableName(drugtableNames);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ // 积分包关联的有效任务类型
|
|
|
+ WmScoreTaskType wmScoreTaskType = new WmScoreTaskType();
|
|
|
+ wmScoreTaskType.setScoreId("-1".equals(wmScorePackage.getRelationScoreId()) ? wmScorePackage.getId() : wmScorePackage.getRelationScoreId());
|
|
|
+ List<WmScoreTaskType> taskTypeList = wmScoreTaskTypeMapper.listWmScoreTaskType(wmScoreTaskType);
|
|
|
+ Set<String> taskTypeSet = taskTypeList.stream().map(WmScoreTaskType::getTaskTypeId).collect(Collectors.toSet());
|
|
|
+ wmScorePackage.setTaskTypeSet(taskTypeSet);
|
|
|
+
|
|
|
+ // 查询关联的试卷
|
|
|
+ List<WmPkgQuizRelation> quizRelations = pkgQuizRelationService.listQuizRelationsByPkgIds(Collections.singletonList(Integer.parseInt(id)));
|
|
|
+
|
|
|
+ if (CollUtil.isNotEmpty(quizRelations)){
|
|
|
+ List<Integer> quizIds = quizRelations.stream().map(WmPkgQuizRelation::getQuizId).collect(Collectors.toList());
|
|
|
+ List<Integer> relIds = quizRelations.stream().map(WmPkgQuizRelation::getRelationId).collect(Collectors.toList());
|
|
|
+ wmScorePackage.setQuizIds(quizIds);
|
|
|
+ wmScorePackage.setQuizRelationIds(relIds);
|
|
|
+ wmScorePackage.setQuizNames(quizRelations.stream().map(WmPkgQuizRelation::getTitle).collect(Collectors.toList()));
|
|
|
+ }
|
|
|
+
|
|
|
+ wmScorePackage.setQuizRelations(quizRelations);
|
|
|
+
|
|
|
+ return R.ok(wmScorePackage);
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * BC-企业承接任务
|
|
|
+ *
|
|
|
+ * @param current 当前页
|
|
|
+ * @param size 每页大小
|
|
|
+ * @param deptId 部门ID
|
|
|
+ * @param scorePackageName 积分包名称
|
|
|
+ * @param acceptSug 接包对象
|
|
|
+ * @param allocationDate 分配日期
|
|
|
+ * @param endLabelDate 结束标签日期
|
|
|
+ * @return {@link R}<{@link ?}> 结果
|
|
|
+ */
|
|
|
+ @GetMapping("/selectWmScorePackageListsForBC")
|
|
|
+ public R<?> selectWmScorePackageListForBC(@RequestParam(value = "current") Integer current,
|
|
|
@RequestParam(value = "size") Integer size,
|
|
|
+ @RequestParam(value = "deptId") Integer deptId,
|
|
|
@RequestParam(value = "scorePackageName", required = false) String scorePackageName,
|
|
|
@RequestParam(value = "acceptSug", required = false) String acceptSug,
|
|
|
@RequestParam(value = "allocationDate", required = false) LocalDate allocationDate,
|
|
|
@RequestParam(value = "endLabelDate", required = false) LocalDate endLabelDate) {
|
|
|
|
|
|
- Page<WmScorePackage> pageAnswer = wmScorePackageService.selectWmScorePackageLists(new Page<>(current, size),
|
|
|
+ Page<WmScorePackage> pageAnswer = wmScorePackageService.selectWmScorePackageLists(new Page<>(current, size), deptId,
|
|
|
scorePackageName, acceptSug, allocationDate, endLabelDate);
|
|
|
|
|
|
//根据积分包id查询计算完成积分值 已付积分值
|
|
@@ -1442,6 +1539,21 @@ public class WmScorePackageController {
|
|
|
return R.ok(pageAnswer);
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ * 分页查询积分管理信息 二期 业务平台
|
|
|
+ */
|
|
|
+ @GetMapping("/selectWmScorePackageLists")
|
|
|
+ public R<?> selectWmScorePackageList(@RequestParam(value = "current") Integer current,
|
|
|
+ @RequestParam(value = "size") Integer size,
|
|
|
+ @RequestParam(value = "scorePackageName", required = false) String scorePackageName,
|
|
|
+ @RequestParam(value = "acceptSug", required = false) String acceptSug,
|
|
|
+ @RequestParam(value = "allocationDate", required = false) LocalDate allocationDate,
|
|
|
+ @RequestParam(value = "endLabelDate", required = false) LocalDate endLabelDate) {
|
|
|
+ Integer deptId = SecurityUtils.getUser().getDeptId();
|
|
|
+
|
|
|
+ return this.selectWmScorePackageListForBC(current, size, deptId, scorePackageName, acceptSug, allocationDate, endLabelDate);
|
|
|
+ }
|
|
|
+
|
|
|
/**
|
|
|
* 获取关联积分包名称 二期 业务平台
|
|
|
*
|
|
@@ -1449,21 +1561,26 @@ public class WmScorePackageController {
|
|
|
*/
|
|
|
@GetMapping("/lists")
|
|
|
public R<?> listWmScorePackages(WmScorePackage wmScorePackage) {
|
|
|
+ // 当前企业deptId
|
|
|
+ String deptId = wmScorePackage.getDeptId();
|
|
|
+ if (StrUtil.isBlank(deptId)) {
|
|
|
+ deptId = String.valueOf(SecurityUtils.getUser().getDeptId());
|
|
|
+ }
|
|
|
+
|
|
|
wmScorePackage.setDelFlag("0");
|
|
|
wmScorePackage.setEnableFlag("0");
|
|
|
+ wmScorePackage.setDeptId(deptId);
|
|
|
List<WmScorePackage> list = wmScorePackageService.list(Wrappers.query(wmScorePackage));
|
|
|
- SysDept wmId = sysDeptService.getById(SecurityUtils.getUser().getDeptId());
|
|
|
+
|
|
|
+ SysDept dept = sysDeptService.getById(deptId);
|
|
|
|
|
|
List<Map<String, Object>> answerList = new ArrayList<>();
|
|
|
- if (wmId.getLevel() == 3) {
|
|
|
- int deptId = SecurityUtils.getUser().getDeptId();
|
|
|
+ if (dept.getLevel() == 3) {
|
|
|
for (WmScorePackage wmScorePackage1 : list) {
|
|
|
Map<String, Object> map1 = new HashMap<>();
|
|
|
- if (StrUtil.isNotBlank(wmScorePackage1.getDeptId()) && deptId == Integer.parseInt(wmScorePackage1.getDeptId())) {
|
|
|
- map1.put("relationScoreId", wmScorePackage1.getId());
|
|
|
- map1.put("scorePackageName", wmScorePackage1.getScorePackageName());
|
|
|
- answerList.add(map1);
|
|
|
- }
|
|
|
+ map1.put("relationScoreId", wmScorePackage1.getId());
|
|
|
+ map1.put("scorePackageName", wmScorePackage1.getScorePackageName());
|
|
|
+ answerList.add(map1);
|
|
|
}
|
|
|
|
|
|
}
|
|
@@ -2519,9 +2636,11 @@ public class WmScorePackageController {
|
|
|
*
|
|
|
* @param acceptUser 接单对象,模糊查询
|
|
|
*/
|
|
|
- @GetMapping("/getScorePackagePage")
|
|
|
- public R<?> getScorePackagePage(@RequestParam(value = "current") Integer current,
|
|
|
+ @GetMapping("/getScorePackagePageForBC")
|
|
|
+ public R<?> getScorePackagePageForBC(@RequestParam(value = "current") Integer current,
|
|
|
@RequestParam(value = "size") Integer size,
|
|
|
+ @RequestParam(value = "deptId") Integer deptId,
|
|
|
+ Integer userId,
|
|
|
@RequestParam(value = "packageType1") Integer packageType1,
|
|
|
@RequestParam(value = "packageType2") Integer packageType2,
|
|
|
@RequestParam(value = "scorePackageName", required = false) String scorePackageName,
|
|
@@ -2532,11 +2651,10 @@ public class WmScorePackageController {
|
|
|
@RequestParam(value = "acceptUser", required = false) String acceptUser,
|
|
|
@RequestParam(value = "relationScoreId", required = false) String relationScoreId,
|
|
|
@RequestParam(value = "toApproval", required = false) Boolean toApproval,
|
|
|
- @RequestParam(value = "packageUserScope", required = false) String packageUserScope
|
|
|
+ @RequestParam(value = "packageUserScope", required = false) String packageUserScope,
|
|
|
+ String sourceType
|
|
|
) {
|
|
|
|
|
|
- Integer sendDeptId = SecurityUtils.getUser().getDeptId();
|
|
|
- Integer userId = SecurityUtils.getUser().getId();
|
|
|
|
|
|
LocalDateTime start = null;
|
|
|
LocalDateTime end = null;
|
|
@@ -2552,7 +2670,7 @@ public class WmScorePackageController {
|
|
|
.eq("p.package_type1", packageType1)
|
|
|
.eq("p.package_type2", packageType2)
|
|
|
.eq(scorePackageStatus != null, "p.score_package_status", scorePackageStatus)
|
|
|
- .eq("p.send_package_dept_id", sendDeptId)
|
|
|
+ .eq("p.send_package_dept_id", deptId)
|
|
|
.between(start != null && end != null, "p.create_time", start, end);
|
|
|
|
|
|
if (StrUtil.isNotBlank(scorePackageName)) {
|
|
@@ -2571,32 +2689,37 @@ public class WmScorePackageController {
|
|
|
queryWrapper.eq("p.package_user_scope", packageUserScope);
|
|
|
}
|
|
|
|
|
|
- boolean onePersonScorePackageFlag = PackageTypeEnum.TYPE1_SCOTE_PACKAGE.val().equals(String.valueOf(packageType1))
|
|
|
- && PackageTypeEnum.TYPE2_TASK_PACKAGE.val().equals(String.valueOf(packageType2));
|
|
|
- boolean multiPersonScorePackageFlag = PackageTypeEnum.TYPE1_SCORE_AND_TASK_PACKAGE.val().equals(String.valueOf(packageType1))
|
|
|
- && PackageTypeEnum.TYPE2_SETTLE_PACKAGE.val().equals(String.valueOf(packageType2));
|
|
|
- if (onePersonScorePackageFlag || multiPersonScorePackageFlag) {
|
|
|
- // 如果是个人承接-按积分值/多人承接-按积分值,判断当前用户是否配置了团队负责人
|
|
|
- List<WmTeam> teamList = wmTeamService.list(Wrappers.<WmTeam>lambdaQuery()
|
|
|
- .eq(WmTeam::getDeptId, sendDeptId)
|
|
|
- .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());
|
|
|
- queryWrapper.in("p.package_user_scope", teamIdList);
|
|
|
+ // 用于问问的系统来源
|
|
|
+ if (StrUtil.isNotBlank(sourceType)) {
|
|
|
+ queryWrapper.eq("p.source_type", sourceType);
|
|
|
+ }
|
|
|
+
|
|
|
+ if (userId != null) {
|
|
|
+ boolean onePersonScorePackageFlag = PackageTypeEnum.TYPE1_SCOTE_PACKAGE.val().equals(String.valueOf(packageType1))
|
|
|
+ && PackageTypeEnum.TYPE2_TASK_PACKAGE.val().equals(String.valueOf(packageType2));
|
|
|
+ boolean multiPersonScorePackageFlag = PackageTypeEnum.TYPE1_SCORE_AND_TASK_PACKAGE.val().equals(String.valueOf(packageType1))
|
|
|
+ && PackageTypeEnum.TYPE2_SETTLE_PACKAGE.val().equals(String.valueOf(packageType2));
|
|
|
+ if (onePersonScorePackageFlag || multiPersonScorePackageFlag) {
|
|
|
+ // 如果是个人承接-按积分值/多人承接-按积分值,判断当前用户是否配置了团队负责人
|
|
|
+ List<WmTeam> teamList = wmTeamService.list(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());
|
|
|
+ queryWrapper.in("p.package_user_scope", teamIdList);
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- long startMillis = System.currentTimeMillis();
|
|
|
Page<WmScorePackage> wmScorePackagePage = wmScorePackageMapper.listScorePackage(new Page<>(current, size),
|
|
|
queryWrapper.orderByDesc("p.create_time"), acceptUser, relationScoreId, toApproval);
|
|
|
|
|
|
List<WmScorePackage> pageRecords = wmScorePackagePage.getRecords();
|
|
|
|
|
|
if (CollUtil.isNotEmpty(pageRecords)) {
|
|
|
- long buildStartMillis = System.currentTimeMillis();
|
|
|
|
|
|
Set<String> packageIds = pageRecords.stream().map(WmScorePackage::getId).collect(Collectors.toSet());
|
|
|
|
|
@@ -2659,26 +2782,54 @@ public class WmScorePackageController {
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
- * 积分包列表-其他(用于MAH结算:药企查询下级提交的)
|
|
|
+ * 分配积分列表查询--派工平台
|
|
|
*
|
|
|
* @param acceptUser 接单对象,模糊查询
|
|
|
*/
|
|
|
- @GetMapping("/getScorePackagePageForMah")
|
|
|
- public R getScorePackagePageForMah(@RequestParam(value = "current") Integer current,
|
|
|
- @RequestParam(value = "size") Integer size,
|
|
|
- @RequestParam(value = "packageType1") Integer packageType1,
|
|
|
- @RequestParam(value = "packageType2") Integer packageType2,
|
|
|
- @RequestParam(value = "scorePackageName", required = false) String scorePackageName,
|
|
|
- @RequestParam(value = "scorePackageStatus", required = false) Integer scorePackageStatus,
|
|
|
- @RequestParam(value = "typeid", required = false) String typeId,
|
|
|
- @RequestParam(value = "monthStart", required = false) String monthStart,
|
|
|
- @RequestParam(value = "monthEnd", required = false) String monthEnd,
|
|
|
- @RequestParam(value = "acceptUser", required = false) String acceptUser,
|
|
|
- @RequestParam(value = "relationScoreId", required = false) String relationScoreId,
|
|
|
- @RequestParam(value = "toApproval", required = false) Boolean toApproval
|
|
|
+ @GetMapping("/getScorePackagePage")
|
|
|
+ public R<?> getScorePackagePage(@RequestParam(value = "current") Integer current,
|
|
|
+ @RequestParam(value = "size") Integer size,
|
|
|
+ @RequestParam(value = "packageType1") Integer packageType1,
|
|
|
+ @RequestParam(value = "packageType2") Integer packageType2,
|
|
|
+ @RequestParam(value = "scorePackageName", required = false) String scorePackageName,
|
|
|
+ @RequestParam(value = "scorePackageStatus", required = false) Integer scorePackageStatus,
|
|
|
+ @RequestParam(value = "typeid", required = false) String typeId,
|
|
|
+ @RequestParam(value = "monthStart", required = false) String monthStart,
|
|
|
+ @RequestParam(value = "monthEnd", required = false) String monthEnd,
|
|
|
+ @RequestParam(value = "acceptUser", required = false) String acceptUser,
|
|
|
+ @RequestParam(value = "relationScoreId", required = false) String relationScoreId,
|
|
|
+ @RequestParam(value = "toApproval", required = false) Boolean toApproval,
|
|
|
+ @RequestParam(value = "packageUserScope", required = false) String packageUserScope,
|
|
|
+ String sourceType
|
|
|
) {
|
|
|
|
|
|
Integer sendDeptId = SecurityUtils.getUser().getDeptId();
|
|
|
+ Integer userId = SecurityUtils.getUser().getId();
|
|
|
+
|
|
|
+ return this.getScorePackagePageForBC(current, size, sendDeptId, userId, packageType1, packageType2, scorePackageName, scorePackageStatus,
|
|
|
+ typeId, monthStart, monthEnd, acceptUser, relationScoreId, toApproval, packageUserScope, sourceType);
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 积分包列表-其他(用于MAH结算:药企查询下级提交的) 用于BC
|
|
|
+ *
|
|
|
+ * @param acceptUser 接单对象,模糊查询
|
|
|
+ */
|
|
|
+ @GetMapping("/getScorePackagePageForMahForBC")
|
|
|
+ public R getScorePackagePageForMahForBC(@RequestParam(value = "current") Integer current,
|
|
|
+ @RequestParam(value = "size") Integer size,
|
|
|
+ @RequestParam(value = "deptId") Integer deptId,
|
|
|
+ @RequestParam(value = "packageType1") Integer packageType1,
|
|
|
+ @RequestParam(value = "packageType2") Integer packageType2,
|
|
|
+ @RequestParam(value = "scorePackageName", required = false) String scorePackageName,
|
|
|
+ @RequestParam(value = "scorePackageStatus", required = false) Integer scorePackageStatus,
|
|
|
+ @RequestParam(value = "typeid", required = false) String typeId,
|
|
|
+ @RequestParam(value = "monthStart", required = false) String monthStart,
|
|
|
+ @RequestParam(value = "monthEnd", required = false) String monthEnd,
|
|
|
+ @RequestParam(value = "acceptUser", required = false) String acceptUser,
|
|
|
+ @RequestParam(value = "relationScoreId", required = false) String relationScoreId,
|
|
|
+ @RequestParam(value = "toApproval", required = false) Boolean toApproval
|
|
|
+ ) {
|
|
|
|
|
|
LocalDateTime start = null;
|
|
|
LocalDateTime end = null;
|
|
@@ -2694,7 +2845,7 @@ public class WmScorePackageController {
|
|
|
.eq("p.package_type1", packageType1)
|
|
|
.eq("p.package_type2", packageType2)
|
|
|
.eq(scorePackageStatus != null, "p.score_package_status", scorePackageStatus)
|
|
|
- .eq("p.mah_settle_dept_id", sendDeptId)
|
|
|
+ .eq("p.mah_settle_dept_id", deptId)
|
|
|
.in("p.mah_settle_step", UpmsType.MahSettleStep.BUSINESS.getType(), UpmsType.MahSettleStep.FINANCE.getType())
|
|
|
.between(start != null && end != null, "p.create_time", start, end);
|
|
|
|
|
@@ -2709,14 +2860,12 @@ public class WmScorePackageController {
|
|
|
queryWrapper.in("p.typeid", split);
|
|
|
}
|
|
|
|
|
|
- long startMillis = System.currentTimeMillis();
|
|
|
Page<WmScorePackage> wmScorePackagePage = wmScorePackageMapper.listScorePackage(new Page<>(current, size),
|
|
|
queryWrapper.orderByDesc("p.settlement_date"), acceptUser, relationScoreId, toApproval);
|
|
|
|
|
|
List<WmScorePackage> pageRecords = wmScorePackagePage.getRecords();
|
|
|
|
|
|
if (CollUtil.isNotEmpty(pageRecords)) {
|
|
|
- long buildStartMillis = System.currentTimeMillis();
|
|
|
Set<String> packageIds = pageRecords.stream().map(WmScorePackage::getId).collect(Collectors.toSet());
|
|
|
|
|
|
// 任务统计
|
|
@@ -2775,35 +2924,60 @@ public class WmScorePackageController {
|
|
|
}
|
|
|
|
|
|
// 个人承接-其他 标记已读提醒
|
|
|
- wmBizReminderService.markRead(UpmsType.BizReminderType.ASSIGN_POINTS_OTHER_REMINDER, sendDeptId);
|
|
|
+ wmBizReminderService.markRead(UpmsType.BizReminderType.ASSIGN_POINTS_OTHER_REMINDER, deptId);
|
|
|
|
|
|
return R.ok(wmScorePackagePage);
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
- * 个人承接积分值导出
|
|
|
+ * 积分包列表-其他(用于MAH结算:药企查询下级提交的)
|
|
|
*
|
|
|
* @param acceptUser 接单对象,模糊查询
|
|
|
*/
|
|
|
- @ResponseExcel(name = "exportPackageSettle", sheet = "个人承接积分值导出")
|
|
|
- @SysLog("个人承接积分值导出")
|
|
|
- @GetMapping("/export-score-package")
|
|
|
- public List<WmScorePackageExcelModel> exportScorePackage(
|
|
|
- @RequestParam(value = "packageType1") Integer packageType1,
|
|
|
- @RequestParam(value = "packageType2") Integer packageType2,
|
|
|
- @RequestParam(value = "scorePackageName", required = false) String scorePackageName,
|
|
|
- @RequestParam(value = "scorePackageStatus", required = false) Integer scorePackageStatus,
|
|
|
- @RequestParam(value = "typeid", required = false) String typeId,
|
|
|
- @RequestParam(value = "monthStart", required = false) String monthStart,
|
|
|
- @RequestParam(value = "monthEnd", required = false) String monthEnd,
|
|
|
- @RequestParam(value = "acceptUser", required = false) String acceptUser,
|
|
|
- @RequestParam(value = "relationScoreId", required = false) String relationScoreId,
|
|
|
- @RequestParam(value = "toApproval", required = false) Boolean toApproval,
|
|
|
- @RequestParam(value = "packageUserScope", required = false) String packageUserScope
|
|
|
+ @GetMapping("/getScorePackagePageForMah")
|
|
|
+ public R getScorePackagePageForMah(@RequestParam(value = "current") Integer current,
|
|
|
+ @RequestParam(value = "size") Integer size,
|
|
|
+ @RequestParam(value = "packageType1") Integer packageType1,
|
|
|
+ @RequestParam(value = "packageType2") Integer packageType2,
|
|
|
+ @RequestParam(value = "scorePackageName", required = false) String scorePackageName,
|
|
|
+ @RequestParam(value = "scorePackageStatus", required = false) Integer scorePackageStatus,
|
|
|
+ @RequestParam(value = "typeid", required = false) String typeId,
|
|
|
+ @RequestParam(value = "monthStart", required = false) String monthStart,
|
|
|
+ @RequestParam(value = "monthEnd", required = false) String monthEnd,
|
|
|
+ @RequestParam(value = "acceptUser", required = false) String acceptUser,
|
|
|
+ @RequestParam(value = "relationScoreId", required = false) String relationScoreId,
|
|
|
+ @RequestParam(value = "toApproval", required = false) Boolean toApproval
|
|
|
) {
|
|
|
|
|
|
Integer sendDeptId = SecurityUtils.getUser().getDeptId();
|
|
|
- Integer userId = SecurityUtils.getUser().getId();
|
|
|
+
|
|
|
+ return this.getScorePackagePageForMahForBC(current, size, sendDeptId, packageType1, packageType2, scorePackageName,
|
|
|
+ scorePackageStatus, typeId, monthStart, monthEnd, acceptUser, relationScoreId, toApproval);
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 个人承接积分值导出-用于BC
|
|
|
+ *
|
|
|
+ * @param acceptUser 接单对象,模糊查询
|
|
|
+ */
|
|
|
+ @ResponseExcel(name = "exportPackageSettle", sheet = "个人承接积分值导出")
|
|
|
+ @SysLog("个人承接积分值导出-用于BC")
|
|
|
+ @GetMapping("/export-score-package-for-bc")
|
|
|
+ public List<WmScorePackageExcelModel> exportScorePackageForBC(
|
|
|
+ @RequestParam(value = "packageType1") Integer packageType1,
|
|
|
+ @RequestParam(value = "packageType2") Integer packageType2,
|
|
|
+ @RequestParam(value = "deptId") Integer deptId,
|
|
|
+ Integer userId,
|
|
|
+ @RequestParam(value = "scorePackageName", required = false) String scorePackageName,
|
|
|
+ @RequestParam(value = "scorePackageStatus", required = false) Integer scorePackageStatus,
|
|
|
+ @RequestParam(value = "typeid", required = false) String typeId,
|
|
|
+ @RequestParam(value = "monthStart", required = false) String monthStart,
|
|
|
+ @RequestParam(value = "monthEnd", required = false) String monthEnd,
|
|
|
+ @RequestParam(value = "acceptUser", required = false) String acceptUser,
|
|
|
+ @RequestParam(value = "relationScoreId", required = false) String relationScoreId,
|
|
|
+ @RequestParam(value = "toApproval", required = false) Boolean toApproval,
|
|
|
+ @RequestParam(value = "packageUserScope", required = false) String packageUserScope
|
|
|
+ ) {
|
|
|
|
|
|
LocalDateTime start = null;
|
|
|
LocalDateTime end = null;
|
|
@@ -2819,7 +2993,7 @@ public class WmScorePackageController {
|
|
|
.eq("p.package_type1", packageType1)
|
|
|
.eq("p.package_type2", packageType2)
|
|
|
.eq(scorePackageStatus != null, "p.score_package_status", scorePackageStatus)
|
|
|
- .eq("p.send_package_dept_id", sendDeptId)
|
|
|
+ .eq("p.send_package_dept_id", deptId)
|
|
|
.between(start != null && end != null, "p.create_time", start, end);
|
|
|
|
|
|
if (StrUtil.isNotBlank(scorePackageName)) {
|
|
@@ -2838,21 +3012,23 @@ public class WmScorePackageController {
|
|
|
queryWrapper.eq("p.package_user_scope", packageUserScope);
|
|
|
}
|
|
|
|
|
|
- boolean onePersonScorePackageFlag = PackageTypeEnum.TYPE1_SCOTE_PACKAGE.val().equals(String.valueOf(packageType1))
|
|
|
- && PackageTypeEnum.TYPE2_TASK_PACKAGE.val().equals(String.valueOf(packageType2));
|
|
|
- boolean multiPersonScorePackageFlag = PackageTypeEnum.TYPE1_SCORE_AND_TASK_PACKAGE.val().equals(String.valueOf(packageType1))
|
|
|
- && PackageTypeEnum.TYPE2_SETTLE_PACKAGE.val().equals(String.valueOf(packageType2));
|
|
|
- if (onePersonScorePackageFlag || multiPersonScorePackageFlag) {
|
|
|
- // 如果是个人承接-按积分值/多人承接-按积分值,判断当前用户是否配置了团队负责人
|
|
|
- List<WmTeam> teamList = wmTeamService.list(Wrappers.<WmTeam>lambdaQuery()
|
|
|
- .eq(WmTeam::getDeptId, sendDeptId)
|
|
|
- .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());
|
|
|
- queryWrapper.in("p.package_user_scope", teamIdList);
|
|
|
+ if (userId != null) {
|
|
|
+ boolean onePersonScorePackageFlag = PackageTypeEnum.TYPE1_SCOTE_PACKAGE.val().equals(String.valueOf(packageType1))
|
|
|
+ && PackageTypeEnum.TYPE2_TASK_PACKAGE.val().equals(String.valueOf(packageType2));
|
|
|
+ boolean multiPersonScorePackageFlag = PackageTypeEnum.TYPE1_SCORE_AND_TASK_PACKAGE.val().equals(String.valueOf(packageType1))
|
|
|
+ && PackageTypeEnum.TYPE2_SETTLE_PACKAGE.val().equals(String.valueOf(packageType2));
|
|
|
+ if (onePersonScorePackageFlag || multiPersonScorePackageFlag) {
|
|
|
+ // 如果是个人承接-按积分值/多人承接-按积分值,判断当前用户是否配置了团队负责人
|
|
|
+ List<WmTeam> teamList = wmTeamService.list(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());
|
|
|
+ queryWrapper.in("p.package_user_scope", teamIdList);
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
|
|
@@ -2956,27 +3132,55 @@ public class WmScorePackageController {
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
- * 个人承接积分值-其他导出
|
|
|
+ * 个人承接积分值导出
|
|
|
*
|
|
|
* @param acceptUser 接单对象,模糊查询
|
|
|
*/
|
|
|
- @ResponseExcel(name = "exportPackageSettle", sheet = "个人承接积分值-其他导出")
|
|
|
- @SysLog("个人承接积分值-其他导出")
|
|
|
- @GetMapping("/export-score-package-mah")
|
|
|
- public List<WmScorePackageExcelModel> exportPackageSettleForMah(
|
|
|
- @RequestParam(value = "packageType1") Integer packageType1,
|
|
|
- @RequestParam(value = "packageType2") Integer packageType2,
|
|
|
- @RequestParam(value = "scorePackageName", required = false) String scorePackageName,
|
|
|
- @RequestParam(value = "scorePackageStatus", required = false) Integer scorePackageStatus,
|
|
|
- @RequestParam(value = "typeid", required = false) String typeId,
|
|
|
- @RequestParam(value = "monthStart", required = false) String monthStart,
|
|
|
- @RequestParam(value = "monthEnd", required = false) String monthEnd,
|
|
|
- @RequestParam(value = "acceptUser", required = false) String acceptUser,
|
|
|
- @RequestParam(value = "relationScoreId", required = false) String relationScoreId,
|
|
|
- @RequestParam(value = "toApproval", required = false) Boolean toApproval
|
|
|
+ @ResponseExcel(name = "exportPackageSettle", sheet = "个人承接积分值导出")
|
|
|
+ @SysLog("个人承接积分值导出")
|
|
|
+ @GetMapping("/export-score-package")
|
|
|
+ public List<WmScorePackageExcelModel> exportScorePackage(
|
|
|
+ @RequestParam(value = "packageType1") Integer packageType1,
|
|
|
+ @RequestParam(value = "packageType2") Integer packageType2,
|
|
|
+ @RequestParam(value = "scorePackageName", required = false) String scorePackageName,
|
|
|
+ @RequestParam(value = "scorePackageStatus", required = false) Integer scorePackageStatus,
|
|
|
+ @RequestParam(value = "typeid", required = false) String typeId,
|
|
|
+ @RequestParam(value = "monthStart", required = false) String monthStart,
|
|
|
+ @RequestParam(value = "monthEnd", required = false) String monthEnd,
|
|
|
+ @RequestParam(value = "acceptUser", required = false) String acceptUser,
|
|
|
+ @RequestParam(value = "relationScoreId", required = false) String relationScoreId,
|
|
|
+ @RequestParam(value = "toApproval", required = false) Boolean toApproval,
|
|
|
+ @RequestParam(value = "packageUserScope", required = false) String packageUserScope
|
|
|
) {
|
|
|
|
|
|
Integer sendDeptId = SecurityUtils.getUser().getDeptId();
|
|
|
+ Integer userId = SecurityUtils.getUser().getId();
|
|
|
+
|
|
|
+ return this.exportScorePackageForBC(packageType1, packageType2, sendDeptId, userId, scorePackageName,
|
|
|
+ scorePackageStatus, typeId, monthStart, monthEnd, acceptUser, relationScoreId, toApproval, packageUserScope);
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 个人承接积分值-其他导出-用于BC
|
|
|
+ *
|
|
|
+ * @param acceptUser 接单对象,模糊查询
|
|
|
+ */
|
|
|
+ @ResponseExcel(name = "exportPackageSettle", sheet = "个人承接积分值-其他导出")
|
|
|
+ @SysLog("个人承接积分值-其他导出-用于BC")
|
|
|
+ @GetMapping("/export-score-package-mah-for-bc")
|
|
|
+ public List<WmScorePackageExcelModel> exportPackageSettleForMahForBC(
|
|
|
+ @RequestParam(value = "packageType1") Integer packageType1,
|
|
|
+ @RequestParam(value = "packageType2") Integer packageType2,
|
|
|
+ @RequestParam(value = "deptId") Integer deptId,
|
|
|
+ @RequestParam(value = "scorePackageName", required = false) String scorePackageName,
|
|
|
+ @RequestParam(value = "scorePackageStatus", required = false) Integer scorePackageStatus,
|
|
|
+ @RequestParam(value = "typeid", required = false) String typeId,
|
|
|
+ @RequestParam(value = "monthStart", required = false) String monthStart,
|
|
|
+ @RequestParam(value = "monthEnd", required = false) String monthEnd,
|
|
|
+ @RequestParam(value = "acceptUser", required = false) String acceptUser,
|
|
|
+ @RequestParam(value = "relationScoreId", required = false) String relationScoreId,
|
|
|
+ @RequestParam(value = "toApproval", required = false) Boolean toApproval
|
|
|
+ ) {
|
|
|
|
|
|
LocalDateTime start = null;
|
|
|
LocalDateTime end = null;
|
|
@@ -2992,7 +3196,7 @@ public class WmScorePackageController {
|
|
|
.eq("p.package_type1", packageType1)
|
|
|
.eq("p.package_type2", packageType2)
|
|
|
.eq(scorePackageStatus != null, "p.score_package_status", scorePackageStatus)
|
|
|
- .eq("p.mah_settle_dept_id", sendDeptId)
|
|
|
+ .eq("p.mah_settle_dept_id", deptId)
|
|
|
.in("p.mah_settle_step", UpmsType.MahSettleStep.BUSINESS.getType(), UpmsType.MahSettleStep.FINANCE.getType())
|
|
|
.between(start != null && end != null, "p.create_time", start, end);
|
|
|
|
|
@@ -3107,6 +3311,33 @@ public class WmScorePackageController {
|
|
|
return excelModelList;
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ * 个人承接积分值-其他导出
|
|
|
+ *
|
|
|
+ * @param acceptUser 接单对象,模糊查询
|
|
|
+ */
|
|
|
+ @ResponseExcel(name = "exportPackageSettle", sheet = "个人承接积分值-其他导出")
|
|
|
+ @SysLog("个人承接积分值-其他导出")
|
|
|
+ @GetMapping("/export-score-package-mah")
|
|
|
+ public List<WmScorePackageExcelModel> exportPackageSettleForMah(
|
|
|
+ @RequestParam(value = "packageType1") Integer packageType1,
|
|
|
+ @RequestParam(value = "packageType2") Integer packageType2,
|
|
|
+ @RequestParam(value = "scorePackageName", required = false) String scorePackageName,
|
|
|
+ @RequestParam(value = "scorePackageStatus", required = false) Integer scorePackageStatus,
|
|
|
+ @RequestParam(value = "typeid", required = false) String typeId,
|
|
|
+ @RequestParam(value = "monthStart", required = false) String monthStart,
|
|
|
+ @RequestParam(value = "monthEnd", required = false) String monthEnd,
|
|
|
+ @RequestParam(value = "acceptUser", required = false) String acceptUser,
|
|
|
+ @RequestParam(value = "relationScoreId", required = false) String relationScoreId,
|
|
|
+ @RequestParam(value = "toApproval", required = false) Boolean toApproval
|
|
|
+ ) {
|
|
|
+
|
|
|
+ Integer sendDeptId = SecurityUtils.getUser().getDeptId();
|
|
|
+
|
|
|
+ return this.exportPackageSettleForMahForBC(packageType1, packageType2, sendDeptId, scorePackageName, scorePackageStatus,
|
|
|
+ typeId, monthStart, monthEnd, acceptUser, relationScoreId, toApproval);
|
|
|
+ }
|
|
|
+
|
|
|
/**
|
|
|
* 积分包列表(结算包管理列表、无团队限制)
|
|
|
*
|