From 7693272d85e41ad3ea843ca2011311c8cf75ce9b Mon Sep 17 00:00:00 2001
From: liujie <1793218484@qq.com>
Date: 星期四, 11 九月 2025 09:03:22 +0800
Subject: [PATCH] Merge branch 'master' of http://120.76.84.145:10101/gitblit/r/java/haizhentong

---
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TCrmClinicController.java |   50 ++++++++++++++++++++++++++++++++++++++++----------
 1 files changed, 40 insertions(+), 10 deletions(-)

diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TCrmClinicController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TCrmClinicController.java
index 5ce84ee..e707db9 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TCrmClinicController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TCrmClinicController.java
@@ -1,18 +1,17 @@
 package com.ruoyi.web.controller.api;
 
 
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.ruoyi.common.annotation.Log;
 import com.ruoyi.common.basic.PageInfo;
 import com.ruoyi.common.core.domain.R;
 import com.ruoyi.common.core.domain.entity.SysUser;
 import com.ruoyi.common.enums.BusinessType;
+import com.ruoyi.framework.web.service.TokenService;
 import com.ruoyi.system.dto.TCrmClinicAuditDTO;
 import com.ruoyi.system.dto.TCrmClinicDTO;
-import com.ruoyi.system.model.TCrmBranch;
-import com.ruoyi.system.model.TCrmClinic;
-import com.ruoyi.system.model.TCrmSalesperson;
-import com.ruoyi.system.model.TCrmWarehouse;
+import com.ruoyi.system.model.*;
 import com.ruoyi.system.query.TCrmClinicQuery;
 import com.ruoyi.system.service.*;
 import com.ruoyi.system.vo.TCrmClinicVO;
@@ -20,6 +19,7 @@
 import io.swagger.annotations.ApiOperation;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.util.CollectionUtils;
 import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.*;
 
@@ -46,14 +46,18 @@
     private final TCrmWarehouseService crmWarehouseService;
     private final TCrmSalespersonService crmSalespersonService;
     private final ISysUserService sysUserService;
+    private final TCrmDeviceService crmDeviceService;
+    private final TokenService tokenService;
     @Autowired
-    public TCrmClinicController(TCrmClinicService crmClinicService, TCrmSupplierService crmSupplierService, TCrmBranchService crmBranchService, TCrmWarehouseService crmWarehouseService, TCrmSalespersonService crmSalespersonService, ISysUserService sysUserService) {
+    public TCrmClinicController(TCrmClinicService crmClinicService, TCrmSupplierService crmSupplierService, TCrmBranchService crmBranchService, TCrmWarehouseService crmWarehouseService, TCrmSalespersonService crmSalespersonService, ISysUserService sysUserService, TCrmDeviceService crmDeviceService, TokenService tokenService) {
         this.crmClinicService = crmClinicService;
         this.crmSupplierService = crmSupplierService;
         this.crmBranchService = crmBranchService;
         this.crmWarehouseService = crmWarehouseService;
         this.crmSalespersonService = crmSalespersonService;
         this.sysUserService = sysUserService;
+        this.crmDeviceService = crmDeviceService;
+        this.tokenService = tokenService;
     }
 
     /**
@@ -62,18 +66,44 @@
     @ApiOperation(value = "获取crm诊所管理分页列表")
     @PostMapping(value = "/pageList")
     public R<PageInfo<TCrmClinicVO>> pageList(@RequestBody TCrmClinicQuery query) {
+        Integer roleType = tokenService.getLoginUser().getUser().getRoleType();
+        Long userId = tokenService.getLoginUser().getUserId();
+        if(roleType == 2 || roleType == 3){
+            query.setUserId(userId);
+            query.setRoleType(roleType);
+        }
         return R.ok(crmClinicService.pageList(query));
     }
 
     /**
      * 获取crm诊所管理管理列表
      */
-    @ApiOperation(value = "获取crm诊所管理列表")
+    @ApiOperation(value = "获取crm诊所管理审核分页列表")
+    @PostMapping(value = "/pageAuditList")
+    public R<PageInfo<TCrmClinicVO>> pageAuditList(@RequestBody TCrmClinicQuery query) {
+        return R.ok(crmClinicService.pageAuditList(query));
+    }
+
+    /**
+     * 获取crm诊所管理管理列表
+     */
+    @ApiOperation(value = "获取crm诊所管理列表",notes = "type 1=设备使用 2=其他")
     @PostMapping(value = "/list")
-    public R<List<TCrmClinic>> list() {
-        return R.ok(crmClinicService.list(Wrappers.lambdaQuery(TCrmClinic.class)
-                .eq(TCrmClinic::getStatus,1)
-                .orderByDesc(TCrmClinic::getCreateTime)));
+    public R<List<TCrmClinic>> list(@RequestParam(value = "type") Integer type) {
+        if(type == 1){
+            List<TCrmDevice> list = crmDeviceService.list();
+            LambdaQueryWrapper<TCrmClinic> wrapper = new LambdaQueryWrapper<>();
+            if(!CollectionUtils.isEmpty(list)){
+                List<String> clinicIds = list.stream().map(TCrmDevice::getClinicId).collect(Collectors.toList());
+                wrapper.notIn(TCrmClinic::getId,clinicIds);
+            }
+            wrapper.eq(TCrmClinic::getStatus,3).orderByDesc(TCrmClinic::getCreateTime);
+            return R.ok(crmClinicService.list(wrapper));
+        }else {
+            return R.ok(crmClinicService.list(Wrappers.lambdaQuery(TCrmClinic.class)
+                    .eq(TCrmClinic::getStatus,3)
+                    .orderByDesc(TCrmClinic::getCreateTime)));
+        }
     }
 
     /**

--
Gitblit v1.7.1