From 7401b4b696bf8469150aa45f65f91ed33e5bd76e Mon Sep 17 00:00:00 2001
From: liujie <1793218484@qq.com>
Date: 星期四, 16 十月 2025 13:56:47 +0800
Subject: [PATCH] 修改bug

---
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TErpProcurementController.java |   67 +++++++++++++++++++++++++--------
 1 files changed, 50 insertions(+), 17 deletions(-)

diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TErpProcurementController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TErpProcurementController.java
index 832bba2..40d0237 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TErpProcurementController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TErpProcurementController.java
@@ -11,6 +11,7 @@
 import com.ruoyi.common.utils.DateUtils;
 import com.ruoyi.framework.web.service.TokenService;
 import com.ruoyi.system.dto.AddProcurementDto;
+import com.ruoyi.system.dto.DetailProcurementSendDto;
 import com.ruoyi.system.dto.UpdateStatusProcurementDto;
 import com.ruoyi.system.dto.UpdateStatusProcurementLastDto;
 import com.ruoyi.system.model.*;
@@ -63,13 +64,14 @@
     private final TCrmBranchService crmBranchService;
     private final TCrmSalespersonService crmSalespersonService;
     private final TErpProcurementCommissionService erpProcurementCommissionService;
+    private final TCrmWarehouseService crmWarehouseService;
 
 
 
     @Autowired
     public TErpProcurementController(TErpProcurementService erpProcurementService, TokenService tokenService, TCrmClinicService crmClinicService, TErpProcurementGoodsService erpProcurementGoodsService
     , TErpGoodsService erpGoodsService, TErpClinicWarehousingService erpClinicWarehousingService, TErpClinicWarehousingBatchService erpClinicWarehousingBatchService,
-                                     TCrmSupplierService crmSupplierService, TErpMaintenanceReminderService erpMaintenanceReminderService, TSysOtherConfigService sysOtherConfigService, TCrmClinicPointsService crmClinicPointsService, TCrmChangePointsService crmChangePointsService, TCrmBranchService crmBranchService, TCrmSalespersonService crmSalespersonService, TErpProcurementCommissionService erpProcurementCommissionService) {
+                                     TCrmSupplierService crmSupplierService, TErpMaintenanceReminderService erpMaintenanceReminderService, TSysOtherConfigService sysOtherConfigService, TCrmClinicPointsService crmClinicPointsService, TCrmChangePointsService crmChangePointsService, TCrmBranchService crmBranchService, TCrmSalespersonService crmSalespersonService, TErpProcurementCommissionService erpProcurementCommissionService, TCrmWarehouseService crmWarehouseService) {
         this.erpProcurementService = erpProcurementService;
         this.tokenService = tokenService;
         this.crmClinicService = crmClinicService;
@@ -85,6 +87,8 @@
         this.crmBranchService = crmBranchService;
         this.crmSalespersonService = crmSalespersonService;
         this.erpProcurementCommissionService = erpProcurementCommissionService;
+
+        this.crmWarehouseService = crmWarehouseService;
 
     }
 
@@ -182,22 +186,43 @@
         return R.ok( erpProcurementService.detailProcurement(clinicSupplierId, user, id));
     }
 
-    @ApiOperation(value = "采购详情--仓库角色专用")
-    @GetMapping(value = "/detailProcurementWarehouse/{id}")
-    public R<DetailProcurementVO> detailProcurementWarehouse(@PathVariable String id) {
+
+    @ApiOperation(value = "采购详情--发货(仓库角色)")
+    @PostMapping(value = "/detailProcurementSend")
+    public R<?> detailProcurementSend(@RequestBody DetailProcurementSendDto dto) {
         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<String> clinicSupplierId=null;
+        if(roleType == 6){
 
-        return R.ok( erpProcurementService.detailProcurementWarehouse(clinicSupplierId, user, id));
+            TCrmWarehouse warehouse = crmWarehouseService.getOne(Wrappers.lambdaQuery(TCrmWarehouse.class)
+                    .eq(TCrmWarehouse::getUserId, user.getUserId())
+                    .last("LIMIT 1"));
+
+            // 供应商
+            clinicSupplierId = crmSupplierService.list(Wrappers.lambdaQuery(TCrmSupplier.class)
+                    .eq(TCrmSupplier::getWarehouseId, warehouse.getId())).stream().map(TCrmSupplier::getId).collect(Collectors.toList());
+        }
+        erpProcurementService.detailProcurementSend(clinicSupplierId, user, dto.getId(),dto.getLogisticsNumber());
+        return R.ok();
     }
+
+//    @ApiOperation(value = "采购详情--仓库角色专用")
+//    @GetMapping(value = "/detailProcurementWarehouse/{id}")
+//    public R<DetailProcurementVO> detailProcurementWarehouse(@PathVariable String id) {
+//        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();
+//        }
+//
+//        return R.ok( erpProcurementService.detailProcurementWarehouse(clinicSupplierId, user, id));
+//    }
 
 
 
@@ -216,7 +241,7 @@
             clinicSupplierId = crmClinic.getId();
         }
         ArrayList<DetailProcurementNextVO> detailProcurementNextVOS = new ArrayList<>();
-        List<TErpProcurement> list1 = erpProcurementService.list(new LambdaQueryWrapper<TErpProcurement>().eq(TErpProcurement::getStatus, 1).orderByDesc(TErpProcurement::getCreateTime));
+        List<TErpProcurement> list1 = erpProcurementService.list(new LambdaQueryWrapper<TErpProcurement>().eq(TErpProcurement::getClinicId, clinicSupplierId).eq(TErpProcurement::getStatus, 1).orderByDesc(TErpProcurement::getCreateTime));
         if(list1.isEmpty()){
             return R.ok(detailProcurementNextVOS);
         }
@@ -242,7 +267,7 @@
 
     @ApiOperation(value = "采购详情入库")
     @PostMapping(value = "/updateStatusProcurement")
-    public R<DetailProcurementVO> updateStatusProcurement(@RequestParam @Valid UpdateStatusProcurementLastDto dto) {
+    public R<DetailProcurementVO> updateStatusProcurement(@RequestBody @Valid UpdateStatusProcurementLastDto dto) {
         SysUser user = tokenService.getLoginUser().getUser();
         Integer roleType = user.getRoleType();
         String clinicSupplierId=null;
@@ -262,6 +287,8 @@
             return R.fail("目前状态无法入库");
         }
         erpProcurement.setStatus(5);
+        erpProcurement.setWarehousingUserId(user.getUserId().toString());
+        erpProcurement.setWarehousingTime(LocalDateTime.now());
         erpProcurementService.updateById(erpProcurement);
 
         List<String> collect = dto.getList().stream().map(UpdateStatusProcurementDto::getId).collect(Collectors.toList());
@@ -282,6 +309,7 @@
         tErpClinicWarehousing.setWarehousingType(1);
         tErpClinicWarehousing.setType(1);
         tErpClinicWarehousing.setWarehouseNo("G"+ DateUtils.dateTimeNow());
+        tErpClinicWarehousing.setProcurementId(erpProcurement.getId());
         erpClinicWarehousingService.save(tErpClinicWarehousing);
         // goodsId分组
         for (UpdateStatusProcurementDto updateStatusProcurementDto : dto.getList()) {
@@ -364,6 +392,9 @@
             tCrmChangePoints.setChangeValue(points);
             crmChangePointsService.save(tCrmChangePoints);
 
+            branch.setUserPoints(branch.getUserPoints()+points);
+            crmBranchService.updateById(branch);
+
 
             // 分佣
             BigDecimal commission = branch.getMoneyCommission().divide(BigDecimal.valueOf(100), 4, RoundingMode.HALF_DOWN).multiply(payMoney).setScale(2, RoundingMode.HALF_UP);
@@ -371,7 +402,7 @@
             tErpProcurementCommission.setProcurementId(erpProcurement.getId());
             tErpProcurementCommission.setCommissionType(1);
             tErpProcurementCommission.setBranchSalespersonId(branchId);
-            tErpProcurementCommission.setMoney(commission.doubleValue());
+            tErpProcurementCommission.setMoney(commission);
             erpProcurementCommissionService.save(tErpProcurementCommission);
 
         }
@@ -389,6 +420,8 @@
             tCrmChangePoints.setChangeReason(1);
             tCrmChangePoints.setChangeValue(points);
             crmChangePointsService.save(tCrmChangePoints);
+            salesperson.setUserPoints(salesperson.getUserPoints()+points);
+            crmSalespersonService.updateById(salesperson);
 
 
 
@@ -398,7 +431,7 @@
             tErpProcurementCommission.setProcurementId(erpProcurement.getId());
             tErpProcurementCommission.setCommissionType(2);
             tErpProcurementCommission.setBranchSalespersonId(salespersonId);
-            tErpProcurementCommission.setMoney(commission.doubleValue());
+            tErpProcurementCommission.setMoney(commission);
             erpProcurementCommissionService.save(tErpProcurementCommission);
         }
 

--
Gitblit v1.7.1