From 45e02578775f7e05e41923af4294c3617e26bd13 Mon Sep 17 00:00:00 2001
From: wzp <2040239371@qq.com>
Date: 星期日, 04 五月 2025 18:58:50 +0800
Subject: [PATCH] feat: 优化匿名,和详情页
---
ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/TbOrdersController.java | 16 ++++----
sql/SqlServer.A_OrderStatus.sql | 22 +++++++++++
ruoyi-ui/src/views/system/order/detail.vue | 23 ++++++++---
ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/ServiceOrderController.java | 47 +++++++++++++++++++----
ruoyi-ui/src/api/system/order.js | 9 ++--
5 files changed, 90 insertions(+), 27 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 cddada2..ce9308b 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
@@ -91,10 +91,14 @@
* 鏍规嵁鏈嶅姟璁㈠崟缂栧彿鑾峰彇璇︾粏淇℃伅
*/
- @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()));
@@ -260,9 +264,16 @@
medicalInfo.put("useVentilator", useVentilator);
- //鏀粯淇℃伅
-// List<PayInfo> payInfoList = payInfoService.selectPayInfoByServiceOrdIDDt(orderDetail.getServiceOrdID()); //姝e紡浣跨敤
- List<PayInfo> payInfoList = payInfoService.selectPayInfoByServiceOrdIDDt("1016302788");//娴嬭瘯浣跨敤
+ 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<>();
@@ -270,14 +281,32 @@
otherInfo.put("serviceOrdVisit", Objects.toString(mingServiceOrder.getServiceOrdVisit(), "-"));
//鐭ユ儏鍚屾剰涔�
- // List<String> imageUrls = dispatchOrdService.selectImageUrlsByDOrdIDDt(orderDetail.getServiceOrdID()); //姝e紡浣跨敤
List<String> imageUrls = new ArrayList<>();//娴嬭瘯浣跨敤
- imageUrls.add("https://sys.966120.com.cn/upload/202505/3016127678_3VhEv_VVql2K6eM9tS9uXgKv8fm7vaKtrSFCiP0SraTgz2qe1isgvIuUrqSNv-XgEvdC5kFUxeyrn_wz8Mfc2Sg.jpg");
- imageUrls.add("https://sys.966120.com.cn/upload/202505/3016127678_3cDOPpqc_fzEJ-dHz8lq5aIx3tsnmEtossC6F5VCi2vj6sBwkuzOx4g1RcsWnQ3XNua7COADksYI1rHnbizccOw.jpg");
- otherInfo.put("imageUrls", imageUrls);
+
+ if(serviceOrdId==88801)
+ {
+ //娴嬭瘯鏁版嵁
+ imageUrls.add("https://sys.966120.com.cn/upload/202505/3016127678_3VhEv_VVql2K6eM9tS9uXgKv8fm7vaKtrSFCiP0SraTgz2qe1isgvIuUrqSNv-XgEvdC5kFUxeyrn_wz8Mfc2Sg.jpg");
+ imageUrls.add("https://sys.966120.com.cn/upload/202505/3016127678_3cDOPpqc_fzEJ-dHz8lq5aIx3tsnmEtossC6F5VCi2vj6sBwkuzOx4g1RcsWnQ3XNua7COADksYI1rHnbizccOw.jpg");
+ otherInfo.put("imageUrls", imageUrls);
+ }
+ else{
+ imageUrls = dispatchOrdService.selectImageUrlsByDOrdIDDt(orderDetail.getServiceOrdID()); //姝e紡浣跨敤
+ otherInfo.put("imageUrls", imageUrls);
+ }
//鍙戠エ鑾峰彇
- Map<String, Object> invoiceInfo = payInfoService.selectLatestInvoiceInfo("1016302788");
+ 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"))) {
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/TbOrdersController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/TbOrdersController.java
index 96ff5a2..5f0b743 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/TbOrdersController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/TbOrdersController.java
@@ -186,18 +186,18 @@
model.setPtName(tbOrders.getPatientName()); // 鎮h�呭鍚�
model.setPtAge(tbOrders.getAge()); // 闅忔満鐢熸垚鎮h�呭勾榫�
model.setPtSex(tbOrders.getSex() == 1 ? "鐢�" : "濂�"); // 闅忔満鐢熸垚鎮h�呮�у埆
-// model.setPtNat("涓浗"); // 璁剧疆鎮h�呭浗绫�
+// model.setPtNat("涓浗"); // 璁剧疆鎮h�呭浗绫�--榛樿涓浗锛屼笉闇�瑕佽缃�
model.setOutHosp(tbOrders.getLocalAddress()); // 璁剧疆杞嚭鍖婚櫌
model.setInHosp(tbOrders.getSendAddress()); // 璁剧疆杞叆鍖婚櫌
-// model.setPtServices("绉戝" + (int) (Math.random() * 10)); // 闅忔満璁剧疆鎮h�呮墍鍦ㄧ瀹�
+// model.setPtServices("绉戝")); // 璁剧疆鎮h�呮墍鍦ㄧ瀹�
model.setPtDiagnosis(tbOrders.getComplaint()); // 璁剧疆璇婃柇淇℃伅
model.setCondition(tbOrders.getRemark()); // 璁剧疆澶囨敞淇℃伅
-// model.setDoctor("鍖荤敓" + (int) (Math.random() * 10)); // 闅忔満璁剧疆鎮h�呭尰鐢�
-// model.setDoctorPhone("13" + (int) (Math.random() * 900000000 + 100000000)); // 闅忔満鐢熸垚鎮h�呭尰鐢熺數璇�
- model.setOfferPrice(tbOrders.getBookingPrice().doubleValue()); // 闅忔満鐢熸垚鎶ヤ环
-// model.setReferrals("鎺ㄤ粙浜�" + (int) (Math.random() * 10)); // 闅忔満璁剧疆鎺ㄤ粙浜轰俊鎭�
-// model.setUnitRemarks("鍟嗘埛闅忔満澶囨敞淇℃伅"); // 闅忔満璁剧疆鍟嗘埛澶囨敞
-// model.setPayQRcodeURL("https://example.com/qrcode/" + (int) (Math.random() * 100)); // 闅忔満鐢熸垚澶栭儴鏀粯浜岀淮鐮侀摼鎺�
+// model.setDoctor("鍖荤敓")); // 璁剧疆鎮h�呭尰鐢�--娌℃湁鍖荤敓淇℃伅
+// model.setDoctorPhone("")); // 璁剧疆鎮h�呭尰鐢熺數璇�--娌℃湁鍖荤敓鐢佃瘽
+ model.setOfferPrice(tbOrders.getBookingPrice().doubleValue()); // 鎶ヤ环
+// model.setReferrals("鎺ㄤ粙浜�")); // 璁剧疆鎺ㄤ粙浜轰俊鎭�--娌℃湁鎺ㄤ粙浜轰俊鎭�
+// model.setUnitRemarks("鍟嗘埛澶囨敞淇℃伅"); // 璁剧疆鍟嗘埛澶囨敞--娌℃湁鍟嗘埛澶囨敞
+// model.setPayQRcodeURL("https://example.com/qrcode/")); // 澶栭儴鏀粯浜岀淮鐮侀摼鎺�--鐢ㄤ笉鍒�
ServiceOrderAppResultVo result = ServiceOrderUtil.CreateServiceOrder(model);
diff --git a/ruoyi-ui/src/api/system/order.js b/ruoyi-ui/src/api/system/order.js
index c055a8e..9d3cfc1 100644
--- a/ruoyi-ui/src/api/system/order.js
+++ b/ruoyi-ui/src/api/system/order.js
@@ -61,10 +61,11 @@
})
}
-// 鏌ヨ璁㈠崟璇︽儏
-export function getOrderDetail(orderId) {
+// 鏌ヨ璁㈠崟璇︾粏
+export function getOrderDetail(orderId, params) {
return request({
url: '/system/order/' + orderId,
- method: 'get'
+ method: 'get',
+ params: params
})
-}
\ No newline at end of file
+}
diff --git a/ruoyi-ui/src/views/system/order/detail.vue b/ruoyi-ui/src/views/system/order/detail.vue
index faf6639..b100207 100644
--- a/ruoyi-ui/src/views/system/order/detail.vue
+++ b/ruoyi-ui/src/views/system/order/detail.vue
@@ -45,10 +45,10 @@
<div slot="header"><b>鏈嶅姟瑕佹眰</b></div>
<el-descriptions :column="1" border>
<el-descriptions-item label="鍑哄彂鍦�">{{ serviceInfo.startAddress }}</el-descriptions-item>
- <el-descriptions-item label="鍑哄彂鍦颁綅缃�">{{ serviceInfo.startLocation }}</el-descriptions-item>
+ <!-- <el-descriptions-item label="鍑哄彂鍦颁綅缃�">{{ serviceInfo.startLocation }}</el-descriptions-item> -->
<el-descriptions-item label="鐩殑鍦�">{{ serviceInfo.endAddress }}</el-descriptions-item>
- <el-descriptions-item label="鐩殑鍦颁綅缃�">{{ serviceInfo.endLocation }}</el-descriptions-item>
- <el-descriptions-item label="杞繍閲岀▼">{{ serviceInfo.distance }}</el-descriptions-item>
+ <!-- <el-descriptions-item label="鐩殑鍦颁綅缃�">{{ serviceInfo.endLocation }}</el-descriptions-item> -->
+ <el-descriptions-item label="杞繍閲岀▼">{{ serviceInfo.distance }} 鍏噷</el-descriptions-item>
<el-descriptions-item label="鎼姮鏈嶅姟">{{ serviceInfo.liftService }}</el-descriptions-item>
<el-descriptions-item label="鎼姮妤煎眰">{{ serviceInfo.liftFloor }}</el-descriptions-item>
<el-descriptions-item label="鍖绘姢瑕佹眰">{{ serviceInfo.medicalStaff }}</el-descriptions-item>
@@ -168,8 +168,19 @@
}
},
created() {
+ // 鑾峰彇璺敱鍙傛暟涓殑璁㈠崟ID
const orderId = this.$route.params.id
- this.getDetail(orderId)
+
+ // 鑾峰彇URL鏌ヨ鍙傛暟
+ const urlParams = new URLSearchParams(window.location.search)
+ const params = {
+ appId: urlParams.get('appId'),
+ timestamp: urlParams.get('timestamp'),
+ sign: urlParams.get('sign')
+ }
+
+ // 璋冪敤鑾峰彇璇︽儏鏂规硶锛屼紶鍏ユ墍鏈夊弬鏁�
+ this.getDetail(orderId, params)
// 鐩戝惉绐楀彛澶у皬鍙樺寲
window.addEventListener('resize', this.handleResize)
},
@@ -179,8 +190,8 @@
},
methods: {
/** 鑾峰彇璁㈠崟璇︽儏 */
- getDetail(orderId) {
- getOrderDetail(orderId).then(response => {
+ getDetail(orderId, params) {
+ getOrderDetail(orderId, params).then(response => {
const { data } = response
// 鏍规嵁鍚庣杩斿洖鐨勬暟鎹粨鏋勮缃悇涓璞$殑鍊�
this.orderInfo = data.orderInfo || {}
diff --git a/sql/SqlServer.A_OrderStatus.sql b/sql/SqlServer.A_OrderStatus.sql
new file mode 100644
index 0000000..1425b80
--- /dev/null
+++ b/sql/SqlServer.A_OrderStatus.sql
@@ -0,0 +1,22 @@
+USE [came]
+GO
+
+/****** Object: Table [dbo].[A_OrderStatus] Script Date: 2025/5/4 17:00:42 ******/
+SET ANSI_NULLS ON
+GO
+
+SET QUOTED_IDENTIFIER ON
+GO
+
+CREATE TABLE [dbo].[A_OrderStatus](
+ [id] [int] IDENTITY(1,1) NOT NULL,
+ [serviceOrdID] [nvarchar](50) NULL,
+ [msg] [nvarchar](50) NULL,
+ [updateTime] [datetime] NULL,
+ [flag] [int] NOT NULL
+) ON [PRIMARY]
+GO
+
+ALTER TABLE [dbo].[A_OrderStatus] ADD CONSTRAINT [DF_tb_OrderStatus_flag] DEFAULT ((0)) FOR [flag]
+GO
+
--
Gitblit v1.9.1