|
@@ -231,11 +231,13 @@ public class SysImplementPlanManager {
|
|
|
|
|
|
// 服务商管理员(只查询发给我的)
|
|
|
if (entLevel == 2) {
|
|
|
- wrapper.eq(SysImplementPlan::getConsigneeId, user.getDeptId());
|
|
|
+ wrapper.eq(SysImplementPlan::getPlanState, UpmsState.ImplementPlanState.PASSED)
|
|
|
+ .eq(SysImplementPlan::getConsigneeId, user.getDeptId());
|
|
|
}
|
|
|
// 区域 (查询发给我的和我下发的)
|
|
|
else if (entLevel == 1) {
|
|
|
- wrapper.and(wrp -> wrp.eq(SysImplementPlan::getConsigneeId, user.getDeptId()).or().eq(SysImplementPlan::getConsignorId, user.getDeptId()));
|
|
|
+ wrapper.eq(SysImplementPlan::getPlanState, UpmsState.ImplementPlanState.PASSED)
|
|
|
+ .and(wrp -> wrp.eq(SysImplementPlan::getConsigneeId, user.getDeptId()).or().eq(SysImplementPlan::getConsignorId, user.getDeptId()));
|
|
|
}
|
|
|
// 事业部管理员||药企(只查询我下发的)
|
|
|
else if (entLevel == -1) {
|
|
@@ -402,4 +404,50 @@ public class SysImplementPlanManager {
|
|
|
|
|
|
return detailsMap;
|
|
|
}
|
|
|
+
|
|
|
+ public List<SysImplementPlanVO.ToList> listPlans(UpmsState.ImplementPlanState planState, HnqzUser user) {
|
|
|
+
|
|
|
+ List<SysImplementPlan> plans = implementPlanService.list(Wrappers.<SysImplementPlan>lambdaQuery()
|
|
|
+ .eq(SysImplementPlan::getConsignorId, user.getDeptId())
|
|
|
+ .eq(SysImplementPlan::getPlanState, planState));
|
|
|
+
|
|
|
+
|
|
|
+ if (CollUtil.isEmpty(plans)) {
|
|
|
+ return Collections.emptyList();
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ // 获取承接人ID
|
|
|
+ Set<Integer> consigneeIds = plans.stream().mapToInt(SysImplementPlan::getConsigneeId).boxed().collect(Collectors.toSet());
|
|
|
+ // 获取承接人
|
|
|
+ Map<Integer, SysDept> consigneeMap = deptService.mapConsignee(consigneeIds);
|
|
|
+ // 获取商品信息
|
|
|
+ Set<Integer> skuIds = plans.stream().map(SysImplementPlan::getSkuId).collect(Collectors.toSet());
|
|
|
+ List<Map<String, String>> skuList = drugEntDrugtableService.listDrugs(skuIds);
|
|
|
+ Map<Integer, Map<String, String>> skuMap = skuList.stream().collect(Collectors.toMap(sku -> Integer.valueOf(sku.get("drug_id")), Function.identity()));
|
|
|
+
|
|
|
+
|
|
|
+ return plans.stream().map(p -> {
|
|
|
+ SysImplementPlanVO.ToList copied = BeanUtil.copyProperties(p, SysImplementPlanVO.ToList.class);
|
|
|
+
|
|
|
+ // 设置承接人信息
|
|
|
+ Map<String, Object> consigneeInfo = new HashMap<>(2);
|
|
|
+ consigneeInfo.put("consigneeId", p.getConsigneeId());
|
|
|
+ SysDept sysDept = consigneeMap.get(p.getConsigneeId());
|
|
|
+ consigneeInfo.put("consigneeName", sysDept == null ? "" : sysDept.getName());
|
|
|
+ copied.setConsigneeInfo(consigneeInfo);
|
|
|
+
|
|
|
+ // 产品信息
|
|
|
+ Map<String, String> sku = skuMap.get(p.getSkuId());
|
|
|
+ Map<String, Object> skuInfo = new HashMap<>(3);
|
|
|
+ skuInfo.put("skuId", p.getSkuId());
|
|
|
+ skuInfo.put("skuName", MapUtil.isEmpty(sku) ? "" : sku.get("drug_name"));
|
|
|
+ skuInfo.put("manufacturer", MapUtil.isEmpty(sku) ? "" : sku.get("ent_name"));
|
|
|
+ copied.setSkuInfo(skuInfo);
|
|
|
+
|
|
|
+ return copied;
|
|
|
+
|
|
|
+ }).collect(Collectors.toList());
|
|
|
+
|
|
|
+ }
|
|
|
}
|