liujie
1 天以前 c8e080d65e26158ea62c98548a11e9aa75c2112e
ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TErpGoodsController.java
@@ -116,12 +116,15 @@
        }
        return R.ok(erpGoodsService.pageList(query,user));
    }
    /**
     * 获取erp问题上报管理列表
     */
    @ApiOperation(value = "诊所 一键获取商品分页列表")
    @PostMapping(value = "/pageAddList")
    public R<Page<TErpGoods>> pageAddList(BasePage query) {
    public R<Page<TErpGoods>> pageAddList(@RequestBody BasePage query) {
        SysUser user = tokenService.getLoginUser().getUser();
        Integer roleType = user.getRoleType();
        String clinicSupplierId=null;
@@ -134,7 +137,7 @@
        }
        Page<TErpGoods> tErpGoodsPage = new Page<>(query.getPageNum(), query.getPageSize());
        Page<TErpGoods> page = erpGoodsService.page(tErpGoodsPage, new LambdaQueryWrapper<TErpGoods>().eq(TErpGoods::getGoodsSource, 1).eq(BaseModel::getDisabled, 0).isNotNull(TErpGoods::getPlatformCommissionPrice).last("and (NOT FIND_IN_SET(" + clinicSupplierId + ",clinic_ids) or  clinic_ids is null)"));
        Page<TErpGoods> page = erpGoodsService.page(tErpGoodsPage, new LambdaQueryWrapper<TErpGoods>().eq(TErpGoods::getGoodsSource, 1).eq(TErpGoods::getState,1).eq(BaseModel::getDisabled, 0).isNotNull(TErpGoods::getPlatformCommissionPrice).last("and (NOT FIND_IN_SET(" + clinicSupplierId + ",clinic_ids) or  clinic_ids is null)"));
        for (TErpGoods record : page.getRecords()) {
            TCrmSupplier byId = crmSupplierService.getById(record.getSupplierClinicId());
            record.setSupplierName(byId.getSupplierName());
@@ -145,6 +148,45 @@
        }
        return R.ok(page);
    }
    /**
     * 获取erp问题上报管理列表
     */
    @ApiOperation(value = "诊所 一键获取商品 获取全部")
    @PostMapping(value = "/getAllGoodsList")
    public R<?> getAllGoodsList() {
        SysUser user = tokenService.getLoginUser().getUser();
        Integer roleType = user.getRoleType();
        String clinicSupplierId=null;
        if(roleType == 5){
            // 诊所
            TCrmClinic crmClinic = crmClinicService.getOne(Wrappers.lambdaQuery(TCrmClinic.class)
                    .eq(TCrmClinic::getUserId, user.getUserId())
                    .last("LIMIT 1"));
            clinicSupplierId = crmClinic.getId();
        }
        List<TErpGoods> list = erpGoodsService.list(new LambdaQueryWrapper<TErpGoods>().eq(TErpGoods::getGoodsSource, 1).eq(TErpGoods::getState,1).eq(BaseModel::getDisabled, 0).isNotNull(TErpGoods::getPlatformCommissionPrice).last("and (NOT FIND_IN_SET(" + clinicSupplierId + ",clinic_ids) or  clinic_ids is null)"));
        for (TErpGoods goods : list) {
            String clinicIds = goods.getClinicIds();
            if(clinicIds == null || clinicIds.isEmpty()){
                goods.setClinicIds(clinicSupplierId);
            }else {
                String[] split = clinicIds.split(",");
                ArrayList<String> split1 = new ArrayList<>();
                for (String s : split) {
                    split1.add(s);
                }
                if(!split1.contains(clinicSupplierId)){
                    split1.add(clinicSupplierId);
                    goods.setClinicIds(String.join(",",split1));
                }
            }
        }
        erpGoodsService.updateBatchById(list);
        return R.ok();
    }
@@ -203,6 +245,7 @@
        }
        goods.setCreateId(user.getUserId().toString());
        goods.setGoodsIdCode(dto.getGoodsIdCode());
        goods.setClinicPurchasePrice(dto.getSalesAmount());
        return R.ok(erpGoodsService.save(goods));
    }
@@ -266,9 +309,9 @@
    @ApiOperation(value = "诊所 一键添加商品")
    @PostMapping(value = "/addSupplierGoods")
    public R<Boolean> addSupplierGoods(String goodsIds) {
        List<String> split = Arrays.asList(goodsIds.split(","));
        List<TErpGoods> list = erpGoodsService.list(new LambdaQueryWrapper<TErpGoods>().in(TErpGoods::getId, split));
    public R<Boolean> addSupplierGoods(@RequestBody AddSupplierGoodsDto dto) {
//        List<String> split = Arrays.asList(goodsIds.split(","));
        List<TErpGoods> list = erpGoodsService.list(new LambdaQueryWrapper<TErpGoods>().in(TErpGoods::getId, dto.getGoodsIds()));
        SysUser user = tokenService.getLoginUser().getUser();
        String cid = null;
@@ -279,11 +322,20 @@
            cid = crmClinic.getId();
            for (TErpGoods goods : list) {
                String clinicIds = goods.getClinicIds();
                List<String> split1 = Arrays.asList(clinicIds.split(","));
                if(!split1.contains(cid)){
                    split1.add(cid);
                    goods.setClinicIds(String.join(",",split1));
                if(clinicIds==null || clinicIds.isEmpty()){
                    goods.setClinicIds( cid);
                }else {
                    String[] split = clinicIds.split(",");
                    List<String> split1 = new ArrayList<>();
                    for (String s : split) {
                        split1.add(s);
                    }
                    if(!split1.contains(cid)){
                        split1.add(cid);
                        goods.setClinicIds(String.join(",",split1));
                    }
                }
            }
            erpGoodsService.updateBatchById(list);
        }