From 53443db90d66094124dbbeebbcf763032a2333d0 Mon Sep 17 00:00:00 2001 From: wzp <2040239371@qq.com> Date: 星期五, 23 五月 2025 18:27:37 +0800 Subject: [PATCH] fix: 修复订单详情知情书的显示 --- ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/ServiceOrderController.java | 113 ++++++++++++++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 104 insertions(+), 9 deletions(-) diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/ServiceOrderController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/ServiceOrderController.java index 8c5394c..4205f96 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/ServiceOrderController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/ServiceOrderController.java @@ -13,10 +13,12 @@ import com.ruoyi.common.constant.HttpStatus; import com.ruoyi.common.enums.DataSourceType; -import com.ruoyi.system.domain.DispatchOrd; -import com.ruoyi.system.domain.TbOrders; +import com.ruoyi.system.domain.*; import com.ruoyi.system.service.IDispatchOrdService; +import com.ruoyi.system.service.IPayInfoService; import com.ruoyi.system.service.ITbOrdersService; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.validation.annotation.Validated; @@ -34,7 +36,6 @@ import com.ruoyi.common.core.page.TableDataInfo; import com.ruoyi.common.enums.BusinessType; import com.ruoyi.common.utils.poi.ExcelUtil; -import com.ruoyi.system.domain.ServiceOrder; import com.ruoyi.system.service.IServiceOrderService; @@ -47,8 +48,9 @@ */ @RestController @RequestMapping("/system/order") -//@DataSource(DataSourceType.SQLSERVER) public class ServiceOrderController extends BaseController { + + private static final Logger log = LoggerFactory.getLogger(ServiceOrderController.class); @Autowired private IServiceOrderService serviceOrderService; @@ -57,6 +59,9 @@ @Autowired private IDispatchOrdService dispatchOrdService; + + @Autowired + private IPayInfoService payInfoService; /** * 鑾峰彇鏈嶅姟璁㈠崟鍒楄〃 @@ -90,16 +95,20 @@ * 鏍规嵁鏈嶅姟璁㈠崟缂栧彿鑾峰彇璇︾粏淇℃伅 */ - @Anonymous + @Anonymous(needSign = true) @GetMapping(value = "/{serviceOrdId}") public AjaxResult getInfo(@PathVariable Long serviceOrdId) { TbOrders orderDetail = tbOrdersService.selectTbOrdersByOrderID(serviceOrdId); + if(orderDetail==null){ + return AjaxResult.error("璁㈠崟涓嶅瓨鍦�"); + } + //鏌ヨ鏈嶅姟鍗� ServiceOrder mingServiceOrder = serviceOrderService.selectServiceOrderById(Long.valueOf(orderDetail.getServiceOrdID())); + DispatchOrd dispatchOrd = dispatchOrdService.selectDispatchOrdByServiceOrdIDDt(mingServiceOrder.getServiceOrdId().toString()); - Map<String, Object> data = new HashMap<>(); // 鏋勫缓璁㈠崟鍩烘湰淇℃伅 @@ -226,15 +235,101 @@ dispatchInfo.put("dispatchStatus","宸茶皟搴�"); } + + + //杞︾墝鍙� + String carLicense = dispatchOrdService.selectCarLicenseByCarId(Integer.valueOf(dispatchOrd.getDispatchOrdCarID())); + dispatchInfo.put("carLicense", carLicense); } + + //鐥呬汉鎯呭喌 + Map<String, Object> medicalInfo = new HashMap<>(); + medicalInfo.put("hasConsciousness", orderDetail.getSense()); + medicalInfo.put("complaint",orderDetail.getComplaint()); + + //鏉′欢 + List<DictionaryCondition> conditions = dispatchOrdService.selectDictionaryConditions(); + List<Integer> conditionIds = dispatchOrdService.selectConditionIdsByServiceOrdCoId(Long.valueOf(orderDetail.getServiceOrdID())); + + String patientCondition = "";//鐥呬汉鎯呭喌 + String useVentilator = "";//浣跨敤鍛煎惛鏈� + for(DictionaryCondition condition : conditions){ + + if(conditionIds.contains(condition.getVID())){ + patientCondition += condition.getVOrder2() + ": " + condition.getVtext() + "; "; + } + + if(condition.getVOrder2().contains("鍛煎惛鏈�")){ + useVentilator = condition.getVtext(); + } + } + + medicalInfo.put("patientCondition", patientCondition); + medicalInfo.put("useVentilator", useVentilator); + + + List<PayInfo> payInfoList = new ArrayList<>(); + if(serviceOrdId==88801) + { + //娴嬭瘯鏁版嵁 + payInfoList = payInfoService.selectPayInfoByServiceOrdIDDt("1016302788");//娴嬭瘯浣跨敤 + } + else{ + payInfoList = payInfoService.selectPayInfoByServiceOrdIDDt(orderDetail.getServiceOrdID()); //姝e紡浣跨敤 + } + + + //鍏朵粬淇℃伅 + Map<String, Object> otherInfo = new HashMap<>(); + //璇勪环 + otherInfo.put("serviceOrdVisit", Objects.toString(mingServiceOrder.getServiceOrdVisit(), "-")); + + //鐭ユ儏鍚屾剰涔� + List<String> imageUrls = dispatchOrdService.selectImageUrlsByDOrdIDDt(orderDetail.getServiceOrdID()); //姝e紡浣跨敤 + otherInfo.put("imageUrls", imageUrls); + log.info("銆愮洃娴嬨�戠煡鎯呭悓鎰忎功:{}", imageUrls); + + //鍙戠エ鑾峰彇 + Map<String, Object> invoiceInfo = new HashMap<>(); + + if(serviceOrdId==88801) + { + //娴嬭瘯鏁版嵁 + invoiceInfo = payInfoService.selectLatestInvoiceInfo("1016302788"); + } + else{ + invoiceInfo = payInfoService.selectLatestInvoiceInfo(orderDetail.getServiceOrdID()); //姝e紡浣跨敤 + } + + String invoiceStatus = ""; + if (invoiceInfo != null && invoiceInfo.get("AuditStatus") != null) { + switch (String.valueOf(invoiceInfo.get("AuditStatus"))) { + case "0": + invoiceStatus = "鏈鐞�"; + break; + case "1": + invoiceStatus = "寤跺悗澶勭悊"; + break; + case "3": + invoiceStatus = "宸插紑绁�"; + break; + case "4": + invoiceStatus = "鍙栨秷鐢宠"; + break; + } + otherInfo.put("invoiceStatus",invoiceInfo.get("InvoiceMakeout")+"-"+invoiceStatus); + } + + data.put("orderInfo", orderInfo); data.put("patientInfo", patientInfo); data.put("serviceInfo", serviceInfo); - data.put("medicalInfo", new HashMap<>()); // 鏆傛椂涓虹┖ + data.put("medicalInfo", medicalInfo); // 鏆傛椂涓虹┖ data.put("dispatchInfo", dispatchInfo); // 鏇存柊涓哄寘鍚汉鍛樹俊鎭殑dispatchInfo - data.put("paymentInfo", new ArrayList<>()); // 鏆傛椂涓虹┖ - data.put("operationInfo", new ArrayList<>()); // 鏆傛椂涓虹┖ + data.put("paymentInfo", payInfoList); // 鏆傛椂涓虹┖ + data.put("otherInfo", otherInfo); + return AjaxResult.success(data); } -- Gitblit v1.9.1