From 6cf2988200eb7eec169161c9d60f061b8453006a Mon Sep 17 00:00:00 2001
From: liujie <1793218484@qq.com>
Date: 星期五, 10 十月 2025 17:44:34 +0800
Subject: [PATCH] 患者诊疗

---
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TSysOrderController.java |  160 ++++++++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 157 insertions(+), 3 deletions(-)

diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TSysOrderController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TSysOrderController.java
index 18f17c5..0e96b68 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TSysOrderController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TSysOrderController.java
@@ -1,8 +1,69 @@
 package com.ruoyi.web.controller.api;
 
 
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import cn.hutool.http.HttpRequest;
+import cn.hutool.http.HttpResponse;
+import cn.hutool.http.HttpUtil;
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONArray;
+import com.alibaba.fastjson.JSONObject;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.lkl.laop.sdk.exception.SDKException;
+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.utils.DateUtils;
+import com.ruoyi.common.utils.ip.IpUtils;
+import com.ruoyi.framework.web.service.TokenService;
+import com.ruoyi.system.dto.TSysOrderDto;
+import com.ruoyi.system.model.*;
+import com.ruoyi.system.query.TErpGoodsWarehouseQuery;
+import com.ruoyi.system.query.TSysAppUserQuery;
+import com.ruoyi.system.query.TSysEducationalInfoQuery;
+import com.ruoyi.system.query.TSysOrderQuery;
+import com.ruoyi.system.service.*;
+import com.ruoyi.system.vo.TSysOrderDetailVo;
+import com.ruoyi.system.vo.TSysOrderPageVo;
+import com.ruoyi.web.core.config.LakalaConfig;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.SneakyThrows;
+import org.apache.commons.codec.binary.Base64;
+import org.apache.commons.io.IOUtils;
+import org.apache.http.client.HttpClient;
+import org.apache.http.client.methods.HttpPost;
+import org.apache.http.conn.ClientConnectionManager;
+import org.apache.http.conn.scheme.Scheme;
+import org.apache.http.conn.scheme.SchemeRegistry;
+import org.apache.http.conn.ssl.SSLSocketFactory;
+import org.apache.http.entity.StringEntity;
+import org.apache.http.impl.client.DefaultHttpClient;
+import org.apache.poi.ss.formula.functions.T;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import javax.net.ssl.SSLContext;
+import javax.net.ssl.TrustManager;
+import javax.net.ssl.X509TrustManager;
+import javax.servlet.http.HttpServletRequest;
+import javax.validation.Valid;
+import java.io.*;
+import java.math.BigDecimal;
+import java.math.RoundingMode;
+import java.nio.charset.StandardCharsets;
+import java.security.*;
+import java.security.cert.*;
+import java.security.spec.InvalidKeySpecException;
+import java.security.spec.PKCS8EncodedKeySpec;
+import java.time.LocalDateTime;
+import java.time.format.DateTimeFormatter;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.concurrent.ThreadPoolExecutor;
+import java.util.stream.Collectors;
 
 /**
  * <p>
@@ -13,8 +74,101 @@
  * @since 2025-08-20
  */
 @RestController
-@RequestMapping("/t-sys-order")
+@RequestMapping("")
+@Api(tags = "订单管理")
 public class TSysOrderController {
 
+    private final TSysOrderService sysOrderService;
+    private final TokenService tokenService;
+    private final TCrmClinicService crmClinicService;
+    private final TSysAppUserService sysAppUserService;
+    private final TSysOrderGoodsService sysOrderGoodsService;
+
+
+
+    @Autowired
+    public TSysOrderController(TokenService tokenService, TSysOrderService sysOrderService, TCrmClinicService crmClinicService, TSysAppUserService sysAppUserService, TSysOrderGoodsService sysOrderGoodsService) {
+        this.sysOrderService = sysOrderService;
+        this.tokenService = tokenService;
+        this.crmClinicService = crmClinicService;
+        this.sysAppUserService = sysAppUserService;
+        this.sysOrderGoodsService = sysOrderGoodsService;
+
+    }
+
+    /**
+     * 获取诊所患者诊疗 订单列表
+     */
+    @ApiOperation(value = "获取诊所患者诊疗订单列表")
+    @PostMapping(value = "/pageList")
+    public R<PageInfo<TSysOrderPageVo>> pageList(@RequestBody TSysOrderQuery query) {
+
+        SysUser user = tokenService.getLoginUser().getUser();
+        Integer roleType = user.getRoleType();
+        if(roleType == 5){
+            // 诊所
+            TCrmClinic crmClinic = crmClinicService.getOne(Wrappers.lambdaQuery(TCrmClinic.class)
+                    .eq(TCrmClinic::getUserId, user.getUserId())
+                    .last("LIMIT 1"));
+            query.setClinicId(crmClinic.getId());
+        }
+        return R.ok(sysOrderService.pageList(query));
+    }
+
+
+
+    @ApiOperation(value = "获取诊所患者诊疗--搜索用户")
+    @PostMapping(value = "/userList")
+    public R<List<TSysAppUser>> pageList(@RequestBody TSysAppUserQuery query) {
+        LambdaQueryWrapper<TSysAppUser> eq = new LambdaQueryWrapper<TSysAppUser>().eq(TSysAppUser::getStatus, 1);
+        if(query.getNickName() != null && !query.getNickName().isEmpty()){
+            eq.like(TSysAppUser::getNickName, query.getNickName());
+        }
+        if(query.getPhone() != null && !query.getPhone().isEmpty()){
+            eq.like(TSysAppUser::getPhone, query.getPhone());
+        }
+        List<TSysAppUser> list = sysAppUserService.list(eq);
+        return R.ok(list);
+    }
+
+
+    @ApiOperation(value = "诊所患者诊疗--确认添加")
+    @PostMapping(value = "/add")
+    public R<String> add(@RequestBody @Valid TSysOrderDto dto) {
+        SysUser user = tokenService.getLoginUser().getUser();
+        Integer roleType = user.getRoleType();
+
+        if(roleType == 5){
+            // 诊所
+            TCrmClinic crmClinic = crmClinicService.getOne(Wrappers.lambdaQuery(TCrmClinic.class)
+                    .eq(TCrmClinic::getUserId, user.getUserId())
+                    .last("LIMIT 1"));
+            sysOrderService.add(dto,crmClinic);
+            return R.ok("添加成功");
+        }
+        return R.fail("添加失败");
+    }
+
+
+    @ApiOperation(value = "诊所患者诊疗--详情")
+    @GetMapping(value = "/detail/{id}")
+    public R<TSysOrderDetailVo> detail(@PathVariable String id) {
+        TSysOrder tSysOrder = sysOrderService.getById(id);
+
+        TSysOrderDetailVo detail = new TSysOrderDetailVo();
+        detail.setId(tSysOrder.getId());
+        String appUserId = tSysOrder.getAppUserId();
+        TSysAppUser appUser = sysAppUserService.getById(appUserId);
+        detail.setUserName(appUser.getNickName());
+        detail.setCheckTime(tSysOrder.getCheckTime());
+        detail.setTotalMoney(tSysOrder.getTotalMoney());
+
+        List<TSysOrderGoods> list = sysOrderGoodsService.list(new LambdaQueryWrapper<TSysOrderGoods>().eq(TSysOrderGoods::getOrderId, id));
+        detail.setList(list);
+
+        return R.ok(detail);
+    }
+
+
 }
 

--
Gitblit v1.7.1