From e6d10b40cf08fb35a73552aa4f0d2e9ac0b227df Mon Sep 17 00:00:00 2001
From: wzp <2040239371@qq.com>
Date: 星期三, 21 五月 2025 15:36:54 +0800
Subject: [PATCH] fix: 修复客户提交的订单类型,如果传的是0,替换为1

---
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/TbOrdersController.java |  205 ++++++++++++++++++++++++++++++++++++---------------
 1 files changed, 144 insertions(+), 61 deletions(-)

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 716e251..1c907a9 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
@@ -4,26 +4,22 @@
 import java.util.Calendar;
 import java.util.Date;
 import java.util.List;
+import java.util.Objects;
 import javax.servlet.http.HttpServletResponse;
 
 import com.ruoyi.common.annotation.Anonymous;
-import com.ruoyi.common.core.domain.entity.ServiceOrderAppResultVo;
-import com.ruoyi.common.core.domain.entity.ServiceOrderAppVo;
-import com.ruoyi.common.core.domain.entity.ServiceOrderDelVo;
+import com.ruoyi.common.core.domain.entity.*;
 import com.ruoyi.common.utils.civilAviation.ServiceOrderUtil;
 import com.ruoyi.system.domain.SysClientApp;
 import com.ruoyi.system.service.ISysClientAppService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiImplicitParam;
+import io.swagger.annotations.ApiImplicitParams;
+import io.swagger.annotations.ApiOperation;
 import org.springframework.security.access.prepost.PreAuthorize;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.validation.annotation.Validated;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.DeleteMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
 import com.ruoyi.common.annotation.Log;
 import com.ruoyi.common.core.controller.BaseController;
 import com.ruoyi.common.core.domain.AjaxResult;
@@ -32,7 +28,6 @@
 import com.ruoyi.system.service.ITbOrdersService;
 import com.ruoyi.common.utils.poi.ExcelUtil;
 import com.ruoyi.common.core.page.TableDataInfo;
-import com.ruoyi.common.core.domain.entity.OrderCancelVo;
 
 /**
  * ordersController
@@ -40,6 +35,7 @@
  * @author wzp
  * @date 2025-05-01
  */
+@Api("璁㈠崟绠$悊")
 @RestController
 @RequestMapping("/system/orders")
 public class TbOrdersController extends BaseController
@@ -50,9 +46,7 @@
     @Autowired
     private ISysClientAppService clientAppService;
 
-    /**
-     * 鏌ヨorders鍒楄〃
-     */
+    @ApiOperation("鏌ヨ璁㈠崟鍒楄〃")
     @PreAuthorize("@ss.hasPermi('system:orders:list')")
     @GetMapping("/list")
     public TableDataInfo list(TbOrders tbOrders)
@@ -62,9 +56,7 @@
         return getDataTable(list);
     }
 
-    /**
-     * 瀵煎嚭orders鍒楄〃
-     */
+    @ApiOperation("瀵煎嚭璁㈠崟鍒楄〃")
     @PreAuthorize("@ss.hasPermi('system:orders:export')")
     @Log(title = "orders", businessType = BusinessType.EXPORT)
     @PostMapping("/export")
@@ -75,9 +67,8 @@
         util.exportExcel(response, list, "orders鏁版嵁");
     }
 
-    /**
-     * 鑾峰彇orders璇︾粏淇℃伅
-     */
+    @ApiOperation("鑾峰彇璁㈠崟璇︾粏淇℃伅")
+    @ApiImplicitParam(name = "OrderID", value = "璁㈠崟ID", required = true, dataType = "Long", paramType = "path")
     @PreAuthorize("@ss.hasPermi('system:orders:query')")
     @GetMapping(value = "/{OrderID}")
     public AjaxResult getInfo(@PathVariable("OrderID") Long OrderID)
@@ -90,33 +81,70 @@
      * @param tbOrders
      * @return
      */
-//    @Anonymous(needSign = true)
-    @Anonymous
+    @Anonymous(needSign = true)
+//    @Anonymous
 //    @Log(title = "orders", businessType = BusinessType.INSERT)
+    @ApiOperation("鏂板璁㈠崟")
+    @ApiImplicitParams({
+        @ApiImplicitParam(name = "orderID", value = "璁㈠崟ID", dataType = "Long"),
+        @ApiImplicitParam(name = "typeCode", value = "璁㈠崟绫诲瀷", dataType = "Integer"),
+        @ApiImplicitParam(name = "linkTel", value = "鑱旂郴鐢佃瘽", dataType = "String"),
+        @ApiImplicitParam(name = "linkPerson", value = "鑱旂郴浜�", dataType = "String"),
+        @ApiImplicitParam(name = "bookingDate", value = "棰勭害鏃堕棿", dataType = "Date"),
+        @ApiImplicitParam(name = "patientName", value = "鎮h�呭鍚�", dataType = "String"),
+        @ApiImplicitParam(name = "age", value = "骞撮緞", dataType = "Integer"),
+        @ApiImplicitParam(name = "sex", value = "鎬у埆", dataType = "Integer"),
+        @ApiImplicitParam(name = "localAddress", value = "杞嚭鍖婚櫌", dataType = "String"),
+        @ApiImplicitParam(name = "sendAddress", value = "杞叆鍖婚櫌", dataType = "String"),
+        @ApiImplicitParam(name = "complaint", value = "璇婃柇淇℃伅", dataType = "String"),
+        @ApiImplicitParam(name = "remark", value = "澶囨敞", dataType = "String"),
+        @ApiImplicitParam(name = "bookingPrice", value = "鎶ヤ环", dataType = "BigDecimal")
+    })
     @PostMapping("/add")
-    public AjaxResult add(@RequestBody TbOrders tbOrders) {
+    public AjaxResult add(@RequestBody TbOrders tbOrders,String appId) {
         try {
             if (tbOrders == null || tbOrders.getOrderID() == null) {
                 return AjaxResult.error("浼犺緭鏁版嵁涓虹┖锛�");
             }
 
+            if(appId ==null|| Objects.equals(appId, ""))    
+            {
+                return AjaxResult.error("appid涓嶈兘涓虹┖锛�");
+            }
+
+            tbOrders.setAppId(appId);
             tbOrders.setCreateTime(new Date());
 
-            tbOrdersService.insertTbOrders(tbOrders);
+            try
+            {
+                tbOrdersService.insertTbOrders(tbOrders);
+            }
+            catch (Exception ex)
+            {
+                return AjaxResult.error("璁㈠崟鍙蜂笉鑳介噸澶�");
+            }
 
-            SysClientApp scApp = clientAppService.selectSysClientAppByAppId(1L);
 
+            SysClientApp scApp = clientAppService.selectSysClientAppByAppKey(tbOrders.getAppId());
 
             ServiceOrderAppVo model = new ServiceOrderAppVo();
             model.setMethod("ServiceOrder_APP"); // 璁剧疆鎺ュ彛鍚嶇О
             model.setAppId(scApp.getMinAppId()); // 璁剧疆鍟嗘埛 APPID
-            model.setOrdType(tbOrders.getTypeCode().intValue());
+            model.setUserID(scApp.getUserId());
+
+            //璁剧疆璁㈠崟绫诲瀷
+            if(tbOrders.getTypeCode() == 0) {
+                model.setOrdType(1);
+            } else {
+                model.setOrdType(tbOrders.getTypeCode().intValue());
+            }
+            
             model.setCoPhone(tbOrders.getLinkTel()); // 瀹㈡埛鑱旂郴鐢佃瘽
             model.setCoName(tbOrders.getLinkPerson()); // 瀹㈡埛濮撳悕
 //        model.setCoTies("瀹跺睘"); // 闅忔満璁剧疆瀹㈡埛鑱旂郴浜轰笌鎮h�呭叧绯�
             // 璁剧疆棰勭害鏃堕棿涓轰竴澶╁悗
             Calendar calendar = Calendar.getInstance();
-            SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd%20HH:mm");
+            SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm");
             model.setApptDate(sdf.format(tbOrders.getBookingDate())); // 鏍煎紡鍖栭绾﹁繍閫佹椂闂�
 
             model.setPtName(tbOrders.getPatientName()); // 鎮h�呭鍚�
@@ -126,12 +154,29 @@
             model.setOutHosp(tbOrders.getLocalAddress()); // 璁剧疆杞嚭鍖婚櫌
             model.setInHosp(tbOrders.getSendAddress()); // 璁剧疆杞叆鍖婚櫌
 //        model.setPtServices("绉戝" + (int) (Math.random() * 10)); // 闅忔満璁剧疆鎮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)); // 闅忔満璁剧疆鎺ㄤ粙浜轰俊鎭�
+
+            //濡傛灉璇婃柇淇℃伅涓虹┖锛屽垯涓嶈缃瘖鏂俊鎭�
+            if(tbOrders.getComplaint() != null && !tbOrders.getComplaint().equals(""))
+            {
+                model.setPtDiagnosis(tbOrders.getComplaint()); // 璁剧疆璇婃柇淇℃伅
+            }
+
+
+            //棰勪及璺濈
+            if(tbOrders.getBookingKM()!=null)
+            {
+                model.setTraDistance(tbOrders.getBookingKM().toString());
+            }
+
+            //濡傛灉澶囨敞淇℃伅涓虹┖锛屽垯涓嶈缃娉ㄤ俊鎭�
+            if(tbOrders.getRemark() != null && !tbOrders.getRemark().equals(""))
+            {
+                model.setCondition(tbOrders.getRemark()); // 璁剧疆澶囨敞淇℃伅
+            }
+
+            model.setPrice(tbOrders.getBookingPrice().doubleValue());
+          model.setOfferPrice(tbOrders.getBookingPrice().doubleValue()); // 鐢熸垚鎶ヤ环
+          model.setReferrals(scApp.getReferrals()); // 璁剧疆鎺ㄤ粙浜哄悕绉颁负鏈烘瀯鍚嶇О
 //        model.setUnitRemarks("鍟嗘埛闅忔満澶囨敞淇℃伅"); // 闅忔満璁剧疆鍟嗘埛澶囨敞
           model.setPayQRcodeURL(scApp.getPayUrl());
 
@@ -154,9 +199,8 @@
         }
     }
 
-    /**
-     * 閲嶆柊鍙戦�佽鍗�
-     */
+    @ApiOperation("閲嶆柊鍙戦�佽鍗�")
+    @ApiImplicitParam(name = "orderId", value = "璁㈠崟ID", required = true, dataType = "Long", paramType = "path")
     @PostMapping("/resend/{orderId}")
     public AjaxResult resendOrder(@PathVariable Long orderId) {
 
@@ -168,36 +212,57 @@
             return AjaxResult.error("璁㈠崟鐘舵�佸凡鍙栨秷");
         }
 
-        SysClientApp scApp = clientAppService.selectSysClientAppByAppKey("appId1");
+        SysClientApp scApp = clientAppService.selectSysClientAppByAppKey(tbOrders.getAppId());
 
 
         ServiceOrderAppVo model = new ServiceOrderAppVo();
         model.setMethod("ServiceOrder_APP"); // 璁剧疆鎺ュ彛鍚嶇О
         model.setAppId(scApp.getMinAppId()); // 璁剧疆鍟嗘埛 APPID
+        model.setUserID(scApp.getUserId());
+
         model.setOrdType(tbOrders.getTypeCode().intValue());
         model.setCoPhone(tbOrders.getLinkTel()); // 瀹㈡埛鑱旂郴鐢佃瘽
         model.setCoName(tbOrders.getLinkPerson()); // 瀹㈡埛濮撳悕
 //        model.setCoTies("瀹跺睘"); // 闅忔満璁剧疆瀹㈡埛鑱旂郴浜轰笌鎮h�呭叧绯�
         // 璁剧疆棰勭害鏃堕棿涓轰竴澶╁悗
         Calendar calendar = Calendar.getInstance();
-        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd%20HH:mm");
+        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm");
         model.setApptDate(sdf.format(tbOrders.getBookingDate())); // 鏍煎紡鍖栭绾﹁繍閫佹椂闂�
 
         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("绉戝")); // 璁剧疆鎮h�呮墍鍦ㄧ瀹�
-        model.setPtDiagnosis(tbOrders.getComplaint()); // 璁剧疆璇婃柇淇℃伅
-        model.setCondition(tbOrders.getRemark()); // 璁剧疆澶囨敞淇℃伅
-//        model.setDoctor("鍖荤敓")); // 璁剧疆鎮h�呭尰鐢�--娌℃湁鍖荤敓淇℃伅
-//        model.setDoctorPhone("")); // 璁剧疆鎮h�呭尰鐢熺數璇�--娌℃湁鍖荤敓鐢佃瘽
-        model.setOfferPrice(tbOrders.getBookingPrice().doubleValue()); // 鎶ヤ环
-//        model.setReferrals("鎺ㄤ粙浜�")); // 璁剧疆鎺ㄤ粙浜轰俊鎭�--娌℃湁鎺ㄤ粙浜轰俊鎭�
-//        model.setUnitRemarks("鍟嗘埛澶囨敞淇℃伅"); // 璁剧疆鍟嗘埛澶囨敞--娌℃湁鍟嗘埛澶囨敞
-       model.setPayQRcodeURL(scApp.getPayUrl());
+//        model.setPtServices("绉戝" + (int) (Math.random() * 10)); // 闅忔満璁剧疆鎮h�呮墍鍦ㄧ瀹�
+
+        //濡傛灉璇婃柇淇℃伅涓虹┖锛屽垯涓嶈缃瘖鏂俊鎭�
+        if(tbOrders.getComplaint() != null && !tbOrders.getComplaint().equals(""))
+        {
+            model.setPtDiagnosis(tbOrders.getComplaint()); // 璁剧疆璇婃柇淇℃伅
+        }
+
+
+        //棰勪及璺濈
+        if(tbOrders.getBookingKM()!=null)
+        {
+            model.setTraDistance(tbOrders.getBookingKM().toString());
+        }
+
+        //濡傛灉澶囨敞淇℃伅涓虹┖锛屽垯涓嶈缃娉ㄤ俊鎭�
+        if(tbOrders.getRemark() != null && !tbOrders.getRemark().equals(""))
+        {
+            model.setCondition(tbOrders.getRemark()); // 璁剧疆澶囨敞淇℃伅
+        }
+
+
+        model.setOfferPrice(tbOrders.getBookingPrice().doubleValue()); // 鐢熸垚鎶ヤ环
+        model.setPrice(tbOrders.getBookingPrice().doubleValue());
+        model.setReferrals(scApp.getReferrals()); // 璁剧疆鎺ㄤ粙浜哄悕绉颁负鏈烘瀯鍚嶇О
+//        model.setUnitRemarks("鍟嗘埛闅忔満澶囨敞淇℃伅"); // 闅忔満璁剧疆鍟嗘埛澶囨敞
+        model.setPayQRcodeURL(scApp.getPayUrl());
+
 
         ServiceOrderAppResultVo result = ServiceOrderUtil.CreateServiceOrder(model,scApp.getMinAppSecret());
 
@@ -217,9 +282,15 @@
 
 
 
-    @Anonymous
+    @ApiOperation("鍙栨秷璁㈠崟")
+    @ApiImplicitParams({
+        @ApiImplicitParam(name = "orderID", value = "璁㈠崟ID", required = true, dataType = "Long"),
+        @ApiImplicitParam(name = "thirdOrderNo", value = "绗笁鏂硅鍗曞彿", required = true, dataType = "String"),
+        @ApiImplicitParam(name = "reason", value = "鍙栨秷鍘熷洜", required = true, dataType = "String")
+    })
+    @Anonymous(needSign = true)
     @PostMapping("/cancelOrder")
-    public AjaxResult cancelOrder(@RequestBody OrderCancelVo cancelVo)
+    public AjaxResult cancelOrder(@RequestBody OrderCancelVo cancelVo,String appId)
     {
         try {
             if (cancelVo == null || cancelVo.getOrderID() == null || 
@@ -227,7 +298,7 @@
                 return AjaxResult.error("蹇呰鍙傛暟涓嶈兘涓虹┖锛�");
             }
 
-            SysClientApp scApp = clientAppService.selectSysClientAppByAppId(1L);
+            SysClientApp scApp = clientAppService.selectSysClientAppByAppKey(appId);
 
             ServiceOrderDelVo model = new ServiceOrderDelVo();
             model.setMethod("ServiceOrder_DEL"); // 璁剧疆鎺ュ彛鍚嶇О
@@ -235,7 +306,7 @@
             model.setServiceOrdID(cancelVo.getThirdOrderNo()); // 璁剧疆绗笁鏂硅鍗曞彿
             model.setDELRemarks(cancelVo.getReason()); // 璁剧疆鍙栨秷鍘熷洜
 
-            ServiceOrderAppResultVo result = ServiceOrderUtil.CancelServiceOrder(model,scApp.getMinAppSecret());
+            ServiceOrderDelResultVo result = ServiceOrderUtil.CancelServiceOrder(model,scApp.getMinAppSecret());
 
             if (result.getResult() == 1) {
                 // 鏇存柊鏈湴璁㈠崟鐘舵��
@@ -245,16 +316,29 @@
                 tbOrdersService.updateTbOrders(tbOrders);
                 return AjaxResult.success(result);
             } else {
-                return AjaxResult.error("鍙栨秷璁㈠崟澶辫触");
+                return AjaxResult.error("鍙栨秷璁㈠崟澶辫触",result);
             }
         } catch (Exception e) {
             return AjaxResult.error("鍙栨秷璁㈠崟澶辫触:" + e.getMessage());
         }
     }
 
-    /**
-     * 淇敼orders
-     */
+    @ApiOperation("淇敼璁㈠崟")
+    @ApiImplicitParams({
+        @ApiImplicitParam(name = "orderID", value = "璁㈠崟ID", required = true, dataType = "Long"),
+        @ApiImplicitParam(name = "typeCode", value = "璁㈠崟绫诲瀷", dataType = "Integer"),
+        @ApiImplicitParam(name = "linkTel", value = "鑱旂郴鐢佃瘽", dataType = "String"),
+        @ApiImplicitParam(name = "linkPerson", value = "鑱旂郴浜�", dataType = "String"),
+        @ApiImplicitParam(name = "bookingDate", value = "棰勭害鏃堕棿", dataType = "Date"),
+        @ApiImplicitParam(name = "patientName", value = "鎮h�呭鍚�", dataType = "String"),
+        @ApiImplicitParam(name = "age", value = "骞撮緞", dataType = "Integer"),
+        @ApiImplicitParam(name = "sex", value = "鎬у埆", dataType = "Integer"),
+        @ApiImplicitParam(name = "localAddress", value = "杞嚭鍖婚櫌", dataType = "String"),
+        @ApiImplicitParam(name = "sendAddress", value = "杞叆鍖婚櫌", dataType = "String"),
+        @ApiImplicitParam(name = "complaint", value = "璇婃柇淇℃伅", dataType = "String"),
+        @ApiImplicitParam(name = "remark", value = "澶囨敞", dataType = "String"),
+        @ApiImplicitParam(name = "bookingPrice", value = "鎶ヤ环", dataType = "BigDecimal")
+    })
     @PreAuthorize("@ss.hasPermi('system:orders:edit')")
     @Log(title = "orders", businessType = BusinessType.UPDATE)
     @PutMapping
@@ -263,12 +347,11 @@
         return toAjax(tbOrdersService.updateTbOrders(tbOrders));
     }
 
-    /**
-     * 鍒犻櫎orders
-     */
+    @ApiOperation("鍒犻櫎璁㈠崟")
+    @ApiImplicitParam(name = "OrderIDs", value = "璁㈠崟ID鏁扮粍", required = true, dataType = "Long[]", paramType = "path")
     @PreAuthorize("@ss.hasPermi('system:orders:remove')")
     @Log(title = "orders", businessType = BusinessType.DELETE)
-	@DeleteMapping("/{OrderIDs}")
+    @DeleteMapping("/{OrderIDs}")
     public AjaxResult remove(@PathVariable Long[] OrderIDs)
     {
         return toAjax(tbOrdersService.deleteTbOrdersByOrderIDs(OrderIDs));

--
Gitblit v1.9.1