|
@@ -17,6 +17,7 @@
|
|
package com.qunzhixinxi.hnqz.admin.service.impl;
|
|
package com.qunzhixinxi.hnqz.admin.service.impl;
|
|
|
|
|
|
import cn.hutool.core.bean.BeanUtil;
|
|
import cn.hutool.core.bean.BeanUtil;
|
|
|
|
+import cn.hutool.core.collection.CollUtil;
|
|
import cn.hutool.core.map.MapUtil;
|
|
import cn.hutool.core.map.MapUtil;
|
|
import cn.hutool.core.util.StrUtil;
|
|
import cn.hutool.core.util.StrUtil;
|
|
import com.alibaba.fastjson.JSON;
|
|
import com.alibaba.fastjson.JSON;
|
|
@@ -35,10 +36,14 @@ import com.qunzhixinxi.hnqz.admin.entity.WmReport;
|
|
import com.qunzhixinxi.hnqz.admin.entity.WmScorePackage;
|
|
import com.qunzhixinxi.hnqz.admin.entity.WmScorePackage;
|
|
import com.qunzhixinxi.hnqz.admin.entity.WmScorePackageStatus;
|
|
import com.qunzhixinxi.hnqz.admin.entity.WmScorePackageStatus;
|
|
import com.qunzhixinxi.hnqz.admin.entity.WmTask;
|
|
import com.qunzhixinxi.hnqz.admin.entity.WmTask;
|
|
|
|
+import com.qunzhixinxi.hnqz.admin.entity.WmTaskType;
|
|
|
|
+import com.qunzhixinxi.hnqz.admin.entity.vo.WmTaskVO;
|
|
|
|
+import com.qunzhixinxi.hnqz.admin.enums.EnableEnum;
|
|
import com.qunzhixinxi.hnqz.admin.enums.ReportEnum;
|
|
import com.qunzhixinxi.hnqz.admin.enums.ReportEnum;
|
|
import com.qunzhixinxi.hnqz.admin.enums.ScorePackageStatusEnum;
|
|
import com.qunzhixinxi.hnqz.admin.enums.ScorePackageStatusEnum;
|
|
import com.qunzhixinxi.hnqz.admin.enums.TaskStatusEnum;
|
|
import com.qunzhixinxi.hnqz.admin.enums.TaskStatusEnum;
|
|
import com.qunzhixinxi.hnqz.admin.mapper.WmReportMapper;
|
|
import com.qunzhixinxi.hnqz.admin.mapper.WmReportMapper;
|
|
|
|
+import com.qunzhixinxi.hnqz.admin.mapper.WmTaskMapper;
|
|
import com.qunzhixinxi.hnqz.admin.service.SysUserService;
|
|
import com.qunzhixinxi.hnqz.admin.service.SysUserService;
|
|
import com.qunzhixinxi.hnqz.admin.service.WmDaDistributionService;
|
|
import com.qunzhixinxi.hnqz.admin.service.WmDaDistributionService;
|
|
import com.qunzhixinxi.hnqz.admin.service.WmDaHospitalService;
|
|
import com.qunzhixinxi.hnqz.admin.service.WmDaHospitalService;
|
|
@@ -47,10 +52,12 @@ import com.qunzhixinxi.hnqz.admin.service.WmReportService;
|
|
import com.qunzhixinxi.hnqz.admin.service.WmScorePackageService;
|
|
import com.qunzhixinxi.hnqz.admin.service.WmScorePackageService;
|
|
import com.qunzhixinxi.hnqz.admin.service.WmScorePackageStatusService;
|
|
import com.qunzhixinxi.hnqz.admin.service.WmScorePackageStatusService;
|
|
import com.qunzhixinxi.hnqz.admin.service.WmTaskService;
|
|
import com.qunzhixinxi.hnqz.admin.service.WmTaskService;
|
|
|
|
+import com.qunzhixinxi.hnqz.admin.service.WmTaskTypeService;
|
|
import com.qunzhixinxi.hnqz.common.core.util.R;
|
|
import com.qunzhixinxi.hnqz.common.core.util.R;
|
|
import com.qunzhixinxi.hnqz.common.security.service.HnqzUser;
|
|
import com.qunzhixinxi.hnqz.common.security.service.HnqzUser;
|
|
import com.qunzhixinxi.hnqz.common.security.util.SecurityUtils;
|
|
import com.qunzhixinxi.hnqz.common.security.util.SecurityUtils;
|
|
import lombok.AllArgsConstructor;
|
|
import lombok.AllArgsConstructor;
|
|
|
|
+import lombok.extern.slf4j.Slf4j;
|
|
import org.apache.commons.lang3.StringUtils;
|
|
import org.apache.commons.lang3.StringUtils;
|
|
import org.springframework.data.redis.core.RedisTemplate;
|
|
import org.springframework.data.redis.core.RedisTemplate;
|
|
import org.springframework.stereotype.Service;
|
|
import org.springframework.stereotype.Service;
|
|
@@ -69,13 +76,16 @@ import java.util.stream.Collectors;
|
|
* @author pigx code generator
|
|
* @author pigx code generator
|
|
* @date 2020-12-21 20:57:26
|
|
* @date 2020-12-21 20:57:26
|
|
*/
|
|
*/
|
|
|
|
+@Slf4j
|
|
@Service
|
|
@Service
|
|
@AllArgsConstructor
|
|
@AllArgsConstructor
|
|
public class WmReportServiceImpl extends ServiceImpl<WmReportMapper, WmReport> implements WmReportService {
|
|
public class WmReportServiceImpl extends ServiceImpl<WmReportMapper, WmReport> implements WmReportService {
|
|
|
|
|
|
private final WmScorePackageService wmScorePackageService;
|
|
private final WmScorePackageService wmScorePackageService;
|
|
private final WmScorePackageStatusService wmScorePackageStatusService;
|
|
private final WmScorePackageStatusService wmScorePackageStatusService;
|
|
|
|
+ private final WmTaskTypeService wmTaskTypeService;
|
|
private final WmTaskService wmTaskService;
|
|
private final WmTaskService wmTaskService;
|
|
|
|
+ private final WmTaskMapper wmTaskMapper;
|
|
private final WmReportMapper wmReportMapper;
|
|
private final WmReportMapper wmReportMapper;
|
|
private final SysUserService sysUserService;
|
|
private final SysUserService sysUserService;
|
|
private final WmDaDistributionService wmDaDistributionService;
|
|
private final WmDaDistributionService wmDaDistributionService;
|
|
@@ -453,7 +463,56 @@ public class WmReportServiceImpl extends ServiceImpl<WmReportMapper, WmReport> i
|
|
return R.ok(pages);
|
|
return R.ok(pages);
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ /**
|
|
|
|
+ * 根据任务类型查询任务
|
|
|
|
+ *
|
|
|
|
+ * @param page
|
|
|
|
+ * @param taskTypeName
|
|
|
|
+ * @return
|
|
|
|
+ */
|
|
|
|
+ @Override
|
|
|
|
+ public R<?> taskPageByTaskType(Page<WmTaskVO> page, String taskTypeName) {
|
|
|
|
+
|
|
|
|
+ WmTaskType baseTaskType = wmTaskTypeService.getOne(Wrappers.<WmTaskType>lambdaQuery()
|
|
|
|
+ .eq(WmTaskType::getTaskTypeLevel, "1")
|
|
|
|
+ .eq(WmTaskType::getTaskTypeName, taskTypeName)
|
|
|
|
+ .eq(WmTaskType::getEnableFlag, EnableEnum.ENABLE.val()));
|
|
|
|
+ if (baseTaskType == null) {
|
|
|
|
+ log.warn("任务类型不存在tastTypeName={}", taskTypeName);
|
|
|
|
+ return R.failed("任务类型不存在");
|
|
|
|
+ }
|
|
|
|
|
|
|
|
+ WmReport queryReport = new WmReport();
|
|
|
|
+ queryReport.setDrugEntId(SecurityUtils.getUser().getDeptId());
|
|
|
|
+ queryReport.setTaskTypeId(baseTaskType.getId());
|
|
|
|
+ IPage<WmTaskVO> pages = wmTaskMapper.entTaskPageByTaskType(page, queryReport);
|
|
|
|
+
|
|
|
|
+ Page<Map<String, Object>> mapPage = new Page<>(pages.getCurrent(), pages.getSize(), pages.getTotal());
|
|
|
|
+ List<WmTaskVO> taskList = pages.getRecords();
|
|
|
|
+ if (CollUtil.isNotEmpty(taskList)) {
|
|
|
|
+ List<Map<String, Object>> resList = taskList.stream().map(wmtask -> {
|
|
|
|
+ Map<String, Object> map = JSON.parseObject(JSON.toJSONString(wmtask), Map.class);
|
|
|
|
+ map.put("reportNo", wmtask.getReportNo());
|
|
|
|
+ map.put("scoreId", wmtask.getScoreId());
|
|
|
|
+ if ("0".equals(wmtask.getTypeid())) {//药企
|
|
|
|
+ map.put("reportApprovalOpinion", wmtask.getReportDrugApprovalOpinion());
|
|
|
|
+ } else if ("1".equals(wmtask.getTypeid())) {//一级代理商类型
|
|
|
|
+ map.put("reportApprovalOpinion", wmtask.getReportDrugApprovalOpinion());
|
|
|
|
+ } else if ("2".equals(wmtask.getTypeid())) {//二级代理商类型
|
|
|
|
+ map.put("reportApprovalOpinion", wmtask.getReportOneApprovalOpinion());
|
|
|
|
+ }
|
|
|
|
+ // 姓名
|
|
|
|
+ if (StringUtils.isNumeric(wmtask.getTaskUserId())) {
|
|
|
|
+ SysUser user = sysUserService.getById(Integer.parseInt(wmtask.getTaskUserId()));
|
|
|
|
+ map.put("taskUsername", user.getRealname());
|
|
|
|
+ }
|
|
|
|
+ return map;
|
|
|
|
+ }).collect(Collectors.toList());
|
|
|
|
+
|
|
|
|
+ mapPage.setRecords(resList);
|
|
|
|
+ }
|
|
|
|
+ return R.ok(mapPage);
|
|
|
|
+ }
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|