lige
2024-01-26 62a3b99ee38ac963fd7d0d8e411bf9c3827e2946
ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjPackageController.java
@@ -74,7 +74,7 @@
     */
    @GetMapping("/list")
    @ApiOperation(value = "查询体检套餐列表(自带有分页)")
    @PreAuthorize("@ss.hasPermi('hosp:package:list')")
    //@PreAuthorize("@ss.hasPermi('hosp:package:list')")
    public TableDataInfo list(@ApiParam(value = "体检套餐对象") TjPackage tjPackage) {
        startPage();
        List<TjPackage> list = tjPackageService.selectTjPackageList(tjPackage);
@@ -138,7 +138,7 @@
                }
                final MallCategory byId = mallCategoryService.getById(aPackage.getCategoryId());
                if (byId!=null){
                if (byId != null) {
                    aPackage.setCategoryNames(byId.getName());
                }
            }
@@ -152,35 +152,93 @@
    @GetMapping("getList")
    @ApiOperation(value = "查询体检套餐列表")
    public TableDataInfo getList(@RequestParam(required = false) @ApiParam(value = "性别") String cusSex) {
        List<TjPackage> tjPackageList = null;
        List<TjPackage> list = null;
        if (cusSex == null || cusSex.equals("2")) {
            if (redisCache.hasKey("getTjPackageListBySex")) {
                list = redisCache.getCacheMapValue("getTjPackageListBySex", "getTjPackageListByManAndWoMan");
            } else {
                tjPackageList = tjPackageService.list(new LambdaQueryWrapper<TjPackage>().eq(TjPackage::getPacStatus,0));
//        List<TjPackage> tjPackageList = null;
//        List<TjPackage> list = null;
//        if (cusSex == null || cusSex.equals("2")) {
//            if (redisCache.hasKey("getTjPackageListBySex")) {
//                list = redisCache.getCacheMapValue("getTjPackageListBySex", "getTjPackageListByManAndWoMan");
//            } else {
//                tjPackageList = tjPackageService.list(new LambdaQueryWrapper<TjPackage>().eq(TjPackage::getPacStatus,0));
//            }
//        } else {
//            if (cusSex.equals("0")) {
//                if (redisCache.hasKey("getTjPackageListBySex")) {
//                    list = redisCache.getCacheMapValue("getTjPackageListBySex", "getTjPackageListByMan");
//                } else {
//                    tjPackageList = tjPackageService.getTjPackageListByMan();
//                }
//            } else {
//                if (redisCache.hasKey("getTjPackageListBySex")) {
//                    list = redisCache.getCacheMapValue("getTjPackageListBySex", "getTjPackageListByWoMan");
//                } else {
//                    tjPackageList = tjPackageService.getTjPackageListByWoMan();
//                }
//            }
//        }
//        asyncService.getTjPackageList();
//        if (null != list && list.size() > 0) {
//            return getDataTable(list);
//        } else {
//            getTjPackageList(tjPackageList);
//            return getDataTable(tjPackageList);
//        }
        String pacName="";
        if (cusSex==null || cusSex.equals("2")) {
            final List<TjPackage> pacListBySqlAndAll = tjPackageService.getPacListBySqlAndAll(pacName);
            if (pacListBySqlAndAll!=null){
                for (TjPackage tjPackage : pacListBySqlAndAll) {
                    List<TjProject> res=new ArrayList<>();
                    LambdaQueryWrapper<TjPackageProject> wqq=new LambdaQueryWrapper<>();
                    wqq.eq(TjPackageProject::getPacId,tjPackage.getPacId());
                    final List<TjPackageProject> list = ppservice.list(wqq);
                    if (list!=null){
                        for (TjPackageProject tjPackageProject : list) {
                            final TjProject byId = tjProjectService.getById(tjPackageProject.getProId());
                            res.add(byId);
                        }
                        tjPackage.setTjProjectList(res);
                    }
                }
            }
            return getDataTable(pacListBySqlAndAll);
        } else {
            if (cusSex.equals("0")) {
                if (redisCache.hasKey("getTjPackageListBySex")) {
                    list = redisCache.getCacheMapValue("getTjPackageListBySex", "getTjPackageListByMan");
                } else {
                    tjPackageList = tjPackageService.getTjPackageListByMan();
                final List<TjPackage> pacListBySqlAndMan = tjPackageService.getPacListBySqlAndMan(pacName);
                if (pacListBySqlAndMan!=null){
                    for (TjPackage tjPackage : pacListBySqlAndMan) {
                        List<TjProject> res=new ArrayList<>();
                        LambdaQueryWrapper<TjPackageProject> wqq=new LambdaQueryWrapper<>();
                        wqq.eq(TjPackageProject::getPacId,tjPackage.getPacId());
                        final List<TjPackageProject> list = ppservice.list(wqq);
                        if (list!=null){
                            for (TjPackageProject tjPackageProject : list) {
                                final TjProject byId = tjProjectService.getById(tjPackageProject.getProId());
                                res.add(byId);
                            }
                            tjPackage.setTjProjectList(res);
                        }
                    }
                }
            } else {
                if (redisCache.hasKey("getTjPackageListBySex")) {
                    list = redisCache.getCacheMapValue("getTjPackageListBySex", "getTjPackageListByWoMan");
                } else {
                    tjPackageList = tjPackageService.getTjPackageListByWoMan();
                return getDataTable(pacListBySqlAndMan);
            }else {
                final List<TjPackage> pacListBySqlAndWomen = tjPackageService.getPacListBySqlAndWomen(pacName);
                if (pacListBySqlAndWomen!=null){
                    for (TjPackage tjPackage : pacListBySqlAndWomen) {
                        List<TjProject> res=new ArrayList<>();
                        LambdaQueryWrapper<TjPackageProject> wqq=new LambdaQueryWrapper<>();
                        wqq.eq(TjPackageProject::getPacId,tjPackage.getPacId());
                        final List<TjPackageProject> list = ppservice.list(wqq);
                        if (list!=null){
                            for (TjPackageProject tjPackageProject : list) {
                                final TjProject byId = tjProjectService.getById(tjPackageProject.getProId());
                                res.add(byId);
                            }
                            tjPackage.setTjProjectList(res);
                        }
                    }
                }
                return getDataTable(pacListBySqlAndWomen);
            }
        }
        asyncService.getTjPackageList();
        if (null != list && list.size() > 0) {
            return getDataTable(list);
        } else {
            getTjPackageList(tjPackageList);
            return getDataTable(tjPackageList);
        }
    }
@@ -297,6 +355,14 @@
                    }
                    tjpp.setProId(tjProject.getProId());
                    tjpp.setPacId(tjPackage.getPacId());
                    //判断当前套餐下有没有这个项目  有的话跳过添加
                    LambdaQueryWrapper<TjPackageProject> wqq=new LambdaQueryWrapper<>();
                    wqq.eq(TjPackageProject::getPacId,tjPackage.getPacId());
                    wqq.eq(TjPackageProject::getProId,tjProject.getProId());
                    final TjPackageProject one = ppservice.getOne(wqq);
                    if (one!=null){
                        continue;
                    }
                    ppservice.save(tjpp);
                    if (null != tjProject.getPriceNow()) {
                        money = money.add(tjProject.getPriceNow());