From c8e080d65e26158ea62c98548a11e9aa75c2112e Mon Sep 17 00:00:00 2001 From: liujie <1793218484@qq.com> Date: 星期五, 26 九月 2025 18:18:13 +0800 Subject: [PATCH] 诊所erp --- ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TErpGoodsController.java | 70 ++++++++++++++++++++++++++++++---- 1 files changed, 61 insertions(+), 9 deletions(-) diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TErpGoodsController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TErpGoodsController.java index 2e488d6..73441fe 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TErpGoodsController.java +++ b/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); } -- Gitblit v1.7.1