From 08675d26d73c60e1c593e901e09588acf2c39233 Mon Sep 17 00:00:00 2001
From: rk <94314517@qq.com>
Date: 星期五, 10 四月 2026 20:03:47 +0800
Subject: [PATCH] 代码生成
---
server/services/src/main/java/com/doumee/service/business/impl/MemberRevenueServiceImpl.java | 7
server/services/src/main/java/com/doumee/dao/business/model/ShopInfo.java | 75
server/services/src/main/java/com/doumee/dao/business/RevenueMapper.java | 13
server/services/src/main/java/com/doumee/service/business/AppVersionService.java | 107
server/services/src/main/java/com/doumee/service/business/ShopInfoService.java | 52
server/admin/src/main/java/com/doumee/job/AreasJob.java | 14
server/services/src/main/java/com/doumee/dao/dto/ChangeStatusDTO.java | 23
server/admin/src/main/java/com/doumee/api/business/OrdersDetailController.java | 83
server/admin/src/main/java/com/doumee/api/business/ShopInfoController.java | 45
server/services/src/main/java/com/doumee/dao/dto/ResetPasswordDTO.java | 23
server/services/src/main/java/com/doumee/core/constants/Constants.java | 412 ---
server/services/src/main/java/com/doumee/service/business/impl/IdentityInfoServiceImpl.java | 5
server/services/src/main/java/com/doumee/service/system/impl/SystemDictDataServiceImpl.java | 85
server/services/src/main/java/com/doumee/service/business/impl/AppVersionServiceImpl.java | 179 +
server/admin/src/main/java/com/doumee/api/business/OrdersController.java | 53
server/services/src/main/java/com/doumee/dao/business/model/Category.java | 19
server/services/src/main/java/com/doumee/service/business/impl/WithdrawalOrdersServiceImpl.java | 175 -
server/admin/src/main/java/com/doumee/api/business/RevenueController.java | 92
server/web/src/main/java/com/doumee/api/web/ShopInfoApi.java | 44
server/admin/src/main/java/com/doumee/api/business/WithdrawalOrdersController.java | 37
server/services/src/main/java/com/doumee/config/wx/SendWxMessage.java | 277 --
server/services/src/main/java/com/doumee/dao/business/AppVersionMapper.java | 13
server/services/src/main/java/com/doumee/dao/business/model/AppVersion.java | 94
server/services/src/main/java/com/doumee/service/business/AliSmsService.java | 96
server/web/src/main/java/com/doumee/api/web/UserApi.java | 2
server/admin/src/main/java/com/doumee/api/business/MemberController.java | 17
server/services/src/main/java/com/doumee/service/business/RevenueService.java | 99
server/services/src/main/java/com/doumee/biz/system/impl/AreasBizImpl.java | 30
server/services/src/main/java/com/doumee/dao/business/model/Orders.java | 596 ++--
server/services/src/main/java/com/doumee/dao/business/OrdersDetailMapper.java | 13
server/services/src/main/java/com/doumee/api/system/SystemDictDataController.java | 17
server/services/src/main/java/com/doumee/dao/business/model/WithdrawalOrders.java | 70
server/services/src/main/java/com/doumee/service/business/WithdrawalOrdersService.java | 16
server/services/src/main/java/com/doumee/service/business/OrdersService.java | 76
server/services/src/main/java/com/doumee/dao/business/model/OrdersDetail.java | 87
server/services/src/main/java/com/doumee/service/business/impl/OrdersDetailServiceImpl.java | 148 +
server/services/src/main/java/com/doumee/service/business/OrdersDetailService.java | 100
server/admin/src/main/java/com/doumee/api/business/AppVersionController.java | 103
server/services/src/main/java/com/doumee/service/business/impl/ShopInfoServiceImpl.java | 488 ++++
server/services/src/main/java/com/doumee/dao/business/WithdrawalOrdersMapper.java | 10
server/services/src/main/java/com/doumee/dao/business/model/Multifile.java | 3
server/services/src/main/java/com/doumee/biz/system/AreasBiz.java | 21
server/services/src/main/java/com/doumee/dao/vo/ShopDetailVO.java | 134 +
server/services/src/main/java/com/doumee/service/business/impl/CategoryServiceImpl.java | 51
server/admin/src/main/java/com/doumee/core/job/SchedulerProxy.java | 12
/dev/null | 221 -
server/services/src/main/java/com/doumee/dao/dto/ShopUpdateDTO.java | 113
server/services/src/main/java/com/doumee/service/business/impl/RevenueServiceImpl.java | 151 +
server/services/src/main/java/com/doumee/dao/business/model/Revenue.java | 103
server/web/src/main/java/com/doumee/api/web/AppVersionApi.java | 33
server/services/src/main/java/com/doumee/service/system/SystemDictDataService.java | 5
server/services/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java | 5
server/services/src/main/java/com/doumee/dao/business/OrdersMapper.java | 6
server/services/src/main/java/com/doumee/dao/dto/ShopApplyDTO.java | 103
server/services/src/main/java/com/doumee/service/business/impl/OrdersServiceImpl.java | 2070 -----------------
55 files changed, 3,077 insertions(+), 3,849 deletions(-)
diff --git a/server/admin/src/main/java/com/doumee/api/business/AppVersionController.java b/server/admin/src/main/java/com/doumee/api/business/AppVersionController.java
new file mode 100644
index 0000000..6c18c4c
--- /dev/null
+++ b/server/admin/src/main/java/com/doumee/api/business/AppVersionController.java
@@ -0,0 +1,103 @@
+package com.doumee.api.business;
+
+import com.doumee.api.BaseController;
+import com.doumee.core.annotation.excel.ExcelExporter;
+import com.doumee.core.annotation.pr.PreventRepeat;
+import com.doumee.core.model.ApiResponse;
+import com.doumee.core.model.LoginUserInfo;
+import com.doumee.core.model.PageData;
+import com.doumee.core.model.PageWrap;
+import com.doumee.dao.business.model.AppVersion;
+import com.doumee.service.business.AppVersionService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.apache.shiro.authz.annotation.RequiresPermissions;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import javax.servlet.http.HttpServletResponse;
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
+
+/**
+ * APP鐗堟湰绠$悊
+ * @author rk
+ * @date 2026/04/10
+ */
+@Api(tags = "APP鐗堟湰")
+@RestController
+@RequestMapping("/business/appVersion")
+public class AppVersionController extends BaseController {
+
+ @Autowired
+ private AppVersionService appVersionService;
+
+ @PreventRepeat
+ @ApiOperation("鏂板缓")
+ @PostMapping("/create")
+ @RequiresPermissions("business:appVersion:create")
+ public ApiResponse create(@RequestBody AppVersion appVersion) {
+ LoginUserInfo loginUserInfo = this.getLoginUser();
+ appVersion.setDeleted(0);
+ appVersion.setCreateTime(new Date());
+ appVersion.setCreateUser(loginUserInfo.getId());
+ appVersion.setUpdateTime(new Date());
+ appVersion.setUpdateUser(loginUserInfo.getId());
+ return ApiResponse.success(appVersionService.create(appVersion));
+ }
+
+ @ApiOperation("鏍规嵁ID鍒犻櫎")
+ @GetMapping("/delete/{id}")
+ @RequiresPermissions("business:appVersion:delete")
+ public ApiResponse deleteById(@PathVariable Integer id) {
+ appVersionService.deleteById(id);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鎵归噺鍒犻櫎")
+ @GetMapping("/delete/batch")
+ @RequiresPermissions("business:appVersion:delete")
+ public ApiResponse deleteByIdInBatch(@RequestParam String ids) {
+ String[] idArray = ids.split(",");
+ List<Integer> idList = new ArrayList<>();
+ for (String id : idArray) {
+ idList.add(Integer.valueOf(id));
+ }
+ appVersionService.deleteByIdInBatch(idList);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鏍规嵁ID淇敼")
+ @PostMapping("/updateById")
+ @RequiresPermissions("business:appVersion:update")
+ public ApiResponse updateById(@RequestBody AppVersion appVersion) {
+ LoginUserInfo loginUserInfo = this.getLoginUser();
+ appVersion.setUpdateTime(new Date());
+ appVersion.setUpdateUser(loginUserInfo.getId());
+ appVersionService.updateById(appVersion);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鍒嗛〉鏌ヨ")
+ @PostMapping("/page")
+ @RequiresPermissions("business:appVersion:query")
+ public ApiResponse<PageData<AppVersion>> findPage(@RequestBody PageWrap<AppVersion> pageWrap) {
+ return ApiResponse.success(appVersionService.findPage(pageWrap));
+ }
+
+ @ApiOperation("瀵煎嚭Excel")
+ @PostMapping("/exportExcel")
+ @RequiresPermissions("business:appVersion:exportExcel")
+ public void exportExcel(@RequestBody PageWrap<AppVersion> pageWrap, HttpServletResponse response) {
+ ExcelExporter.build(AppVersion.class).export(appVersionService.findPage(pageWrap).getRecords(), "APP鐗堟湰", response);
+ }
+
+ @ApiOperation("鏍规嵁ID鏌ヨ")
+ @GetMapping("/{id}")
+ @RequiresPermissions("business:appVersion:query")
+ public ApiResponse findById(@PathVariable Integer id) {
+ return ApiResponse.success(appVersionService.findById(id));
+ }
+
+}
diff --git a/server/admin/src/main/java/com/doumee/api/business/MemberController.java b/server/admin/src/main/java/com/doumee/api/business/MemberController.java
index ded2490..44f1dd1 100644
--- a/server/admin/src/main/java/com/doumee/api/business/MemberController.java
+++ b/server/admin/src/main/java/com/doumee/api/business/MemberController.java
@@ -84,23 +84,6 @@
@RequiresPermissions("business:member:exportExcel")
public void exportExcel (@RequestBody PageWrap<Member> pageWrap, HttpServletResponse response) {
List<Member> memberList = memberService.findPage(pageWrap).getRecords();
- if(CollectionUtils.isNotEmpty(memberList)){
- for (Member m:memberList) {
- m.setAmountYuan(Objects.nonNull(m.getAmount())&&m.getAmount()> Constants.ZERO? new BigDecimal(m.getAmount()+"").divide(new BigDecimal("100"),2,BigDecimal.ROUND_UP):BigDecimal.ZERO);
- List<String> identityInfo = new ArrayList<>();
- if(Constants.equalsInteger(m.getWorkerIdentity(),Constants.TWO)){
- identityInfo.add("宸ヤ汉");
- }
- if(Constants.equalsInteger(m.getDriverIdentity(),Constants.TWO)){
- identityInfo.add("鍙告満");
- }
- if(Constants.equalsInteger(m.getChefIdentity(),Constants.TWO)){
- identityInfo.add("渚涢");
- }
- m.setIdentityApplyInfo(StringUtils.join(identityInfo,","));
- m.setIdentityInfo("鍙戝崟鏂�" + (StringUtils.isNotBlank(m.getIdentityApplyInfo())?" | 鎺ュ崟鏂�":""));
- }
- }
ExcelExporter.build(Member.class).export(memberList, "浼氬憳淇℃伅琛�", response);
}
diff --git a/server/admin/src/main/java/com/doumee/api/business/OrderLogController.java b/server/admin/src/main/java/com/doumee/api/business/OrderLogController.java
deleted file mode 100644
index 967a5f6..0000000
--- a/server/admin/src/main/java/com/doumee/api/business/OrderLogController.java
+++ /dev/null
@@ -1,90 +0,0 @@
-package com.doumee.api.business;
-
-import com.doumee.api.BaseController;
-import com.doumee.core.annotation.excel.ExcelExporter;
-import com.doumee.core.annotation.pr.PreventRepeat;
-import com.doumee.core.model.ApiResponse;
-import com.doumee.core.model.PageData;
-import com.doumee.core.model.PageWrap;
-import com.doumee.dao.business.model.OrderLog;
-import com.doumee.service.business.OrderLogService;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import org.apache.shiro.authz.annotation.RequiresPermissions;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
-
-import javax.servlet.http.HttpServletResponse;
-import java.util.ArrayList;
-import java.util.List;
-
-/**
- * @author 姹熻箘韫�
- * @date 2025/07/09 12:00
- */
-@Api(tags = "璁㈠崟鎿嶄綔鏃ュ織")
-@RestController
-@RequestMapping("/business/orderLog")
-public class OrderLogController extends BaseController {
-
- @Autowired
- private OrderLogService orderLogService;
-
- @PreventRepeat
- @ApiOperation("鏂板缓")
- @PostMapping("/create")
- @RequiresPermissions("business:orderlog:create")
- public ApiResponse create(@RequestBody OrderLog orderLog) {
- return ApiResponse.success(orderLogService.create(orderLog));
- }
-
- @ApiOperation("鏍规嵁ID鍒犻櫎")
- @GetMapping("/delete/{id}")
- @RequiresPermissions("business:orderlog:delete")
- public ApiResponse deleteById(@PathVariable Integer id) {
- orderLogService.deleteById(id);
- return ApiResponse.success(null);
- }
-
- @ApiOperation("鎵归噺鍒犻櫎")
- @GetMapping("/delete/batch")
- @RequiresPermissions("business:orderlog:delete")
- public ApiResponse deleteByIdInBatch(@RequestParam String ids) {
- String [] idArray = ids.split(",");
- List<Integer> idList = new ArrayList<>();
- for (String id : idArray) {
- idList.add(Integer.valueOf(id));
- }
- orderLogService.deleteByIdInBatch(idList);
- return ApiResponse.success(null);
- }
-
- @ApiOperation("鏍规嵁ID淇敼")
- @PostMapping("/updateById")
- @RequiresPermissions("business:orderlog:update")
- public ApiResponse updateById(@RequestBody OrderLog orderLog) {
- orderLogService.updateById(orderLog);
- return ApiResponse.success(null);
- }
-
- @ApiOperation("鍒嗛〉鏌ヨ")
- @PostMapping("/page")
- @RequiresPermissions("business:orderlog:query")
- public ApiResponse<PageData<OrderLog>> findPage (@RequestBody PageWrap<OrderLog> pageWrap) {
- return ApiResponse.success(orderLogService.findPage(pageWrap));
- }
-
- @ApiOperation("瀵煎嚭Excel")
- @PostMapping("/exportExcel")
- @RequiresPermissions("business:orderlog:exportExcel")
- public void exportExcel (@RequestBody PageWrap<OrderLog> pageWrap, HttpServletResponse response) {
- ExcelExporter.build(OrderLog.class).export(orderLogService.findPage(pageWrap).getRecords(), "璁㈠崟鎿嶄綔鏃ュ織", response);
- }
-
- @ApiOperation("鏍规嵁ID鏌ヨ")
- @GetMapping("/{id}")
- @RequiresPermissions("business:orderlog:query")
- public ApiResponse findById(@PathVariable Integer id) {
- return ApiResponse.success(orderLogService.findById(id));
- }
-}
diff --git a/server/admin/src/main/java/com/doumee/api/business/OrdersController.java b/server/admin/src/main/java/com/doumee/api/business/OrdersController.java
index 983a2e0..54d4698 100644
--- a/server/admin/src/main/java/com/doumee/api/business/OrdersController.java
+++ b/server/admin/src/main/java/com/doumee/api/business/OrdersController.java
@@ -2,17 +2,13 @@
import com.doumee.api.BaseController;
import com.doumee.core.annotation.excel.ExcelExporter;
-import com.doumee.core.annotation.pr.PreventRepeat;
import com.doumee.core.model.ApiResponse;
-import com.doumee.core.model.LoginUserInfo;
import com.doumee.core.model.PageData;
import com.doumee.core.model.PageWrap;
import com.doumee.dao.business.model.Orders;
import com.doumee.service.business.OrdersService;
-import com.github.xiaoymin.knife4j.core.util.CollectionUtils;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
-import org.apache.shiro.SecurityUtils;
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@@ -22,24 +18,17 @@
import java.util.List;
/**
- * @author 姹熻箘韫�
- * @date 2025/07/09 12:00
+ * 瀵勫瓨璁㈠崟绠$悊
+ * @author rk
+ * @date 2026/04/10
*/
-@Api(tags = "璁㈠崟淇℃伅璁板綍")
+@Api(tags = "瀵勫瓨璁㈠崟")
@RestController
@RequestMapping("/business/orders")
public class OrdersController extends BaseController {
@Autowired
private OrdersService ordersService;
-
- @PreventRepeat
- @ApiOperation("鏂板缓")
- @PostMapping("/create")
- @RequiresPermissions("business:orders:create")
- public ApiResponse create(@RequestBody Orders orders) {
- return ApiResponse.success(ordersService.create(orders));
- }
@ApiOperation("鏍规嵁ID鍒犻櫎")
@GetMapping("/delete/{id}")
@@ -53,7 +42,7 @@
@GetMapping("/delete/batch")
@RequiresPermissions("business:orders:delete")
public ApiResponse deleteByIdInBatch(@RequestParam String ids) {
- String [] idArray = ids.split(",");
+ String[] idArray = ids.split(",");
List<Integer> idList = new ArrayList<>();
for (String id : idArray) {
idList.add(Integer.valueOf(id));
@@ -62,43 +51,33 @@
return ApiResponse.success(null);
}
-// @ApiOperation("鏍规嵁ID淇敼")
-// @PostMapping("/updateById")
-// @RequiresPermissions("business:orders:update")
-// public ApiResponse updateById(@RequestBody Orders orders) {
-// ordersService.updateById(orders);
-// return ApiResponse.success(null);
-// }
+ @ApiOperation("鏍规嵁ID淇敼")
+ @PostMapping("/updateById")
+ @RequiresPermissions("business:orders:update")
+ public ApiResponse updateById(@RequestBody Orders orders) {
+ ordersService.updateById(orders);
+ return ApiResponse.success(null);
+ }
@ApiOperation("鍒嗛〉鏌ヨ")
@PostMapping("/page")
@RequiresPermissions("business:orders:query")
- public ApiResponse<PageData<Orders>> findPage (@RequestBody PageWrap<Orders> pageWrap) {
+ public ApiResponse<PageData<Orders>> findPage(@RequestBody PageWrap<Orders> pageWrap) {
return ApiResponse.success(ordersService.findPage(pageWrap));
}
@ApiOperation("瀵煎嚭Excel")
@PostMapping("/exportExcel")
@RequiresPermissions("business:orders:exportExcel")
- public void exportExcel (@RequestBody PageWrap<Orders> pageWrap, HttpServletResponse response) {
- List<Orders> ordersList = ordersService.findPage(pageWrap).getRecords();
- ExcelExporter.build(Orders.class).export(ordersList, "璁㈠崟淇℃伅璁板綍", response);
+ public void exportExcel(@RequestBody PageWrap<Orders> pageWrap, HttpServletResponse response) {
+ ExcelExporter.build(Orders.class).export(ordersService.findPage(pageWrap).getRecords(), "瀵勫瓨璁㈠崟", response);
}
- @ApiOperation("鏍规嵁ID鏌ヨ ")
+ @ApiOperation("鏍规嵁ID鏌ヨ")
@GetMapping("/{id}")
@RequiresPermissions("business:orders:query")
public ApiResponse findById(@PathVariable Integer id) {
return ApiResponse.success(ordersService.findById(id));
- }
-
- @ApiOperation("骞冲彴鍙栨秷璁㈠崟")
- @GetMapping("/cancel")
- @RequiresPermissions("business:orders:update")
- public ApiResponse cancel(@RequestParam Integer id) {
- LoginUserInfo loginUserInfo = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
- ordersService.platformCancel(id,loginUserInfo);
- return ApiResponse.success("鎿嶄綔鎴愬姛");
}
}
diff --git a/server/admin/src/main/java/com/doumee/api/business/OrdersDetailController.java b/server/admin/src/main/java/com/doumee/api/business/OrdersDetailController.java
new file mode 100644
index 0000000..1eb786e
--- /dev/null
+++ b/server/admin/src/main/java/com/doumee/api/business/OrdersDetailController.java
@@ -0,0 +1,83 @@
+package com.doumee.api.business;
+
+import com.doumee.core.annotation.excel.ExcelExporter;
+import com.doumee.core.model.ApiResponse;
+import com.doumee.core.model.PageData;
+import com.doumee.core.model.PageWrap;
+import com.doumee.dao.business.model.OrdersDetail;
+import com.doumee.service.business.OrdersDetailService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import javax.servlet.http.HttpServletResponse;
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * 瀵勫瓨璁㈠崟鏄庣粏
+ *
+ * @author rk
+ * @date 2026/04/10
+ */
+@Api(tags = "瀵勫瓨璁㈠崟鏄庣粏")
+@RestController
+@RequestMapping("/business/ordersDetail")
+public class OrdersDetailController {
+
+ @Autowired
+ private OrdersDetailService ordersDetailService;
+
+ @ApiOperation("鏂板缓")
+ @PostMapping("/create")
+ public ApiResponse create(@RequestBody OrdersDetail ordersDetail) {
+ return ApiResponse.success(ordersDetailService.create(ordersDetail));
+ }
+
+ @ApiOperation("鏍规嵁ID鍒犻櫎")
+ @GetMapping("/delete/{id}")
+ public ApiResponse deleteById(@PathVariable Integer id) {
+ ordersDetailService.deleteById(id);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鎵归噺鍒犻櫎")
+ @GetMapping("/delete/batch")
+ public ApiResponse deleteByIdInBatch(@RequestParam String ids) {
+ String[] idArray = ids.split(",");
+ List<Integer> idList = new ArrayList<>();
+ for (String id : idArray) {
+ idList.add(Integer.valueOf(id));
+ }
+ ordersDetailService.deleteByIdInBatch(idList);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鏍规嵁ID淇敼")
+ @PostMapping("/updateById")
+ public ApiResponse updateById(@RequestBody OrdersDetail ordersDetail) {
+ ordersDetailService.updateById(ordersDetail);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鍒嗛〉鏌ヨ")
+ @PostMapping("/page")
+ public ApiResponse<PageData<OrdersDetail>> findPage(@RequestBody PageWrap<OrdersDetail> pageWrap) {
+ return ApiResponse.success(ordersDetailService.findPage(pageWrap));
+ }
+
+ @ApiOperation("瀵煎嚭Excel")
+ @PostMapping("/exportExcel")
+ public void exportExcel(@RequestBody PageWrap<OrdersDetail> pageWrap, HttpServletResponse response) {
+ List<OrdersDetail> ordersDetailList = ordersDetailService.findPage(pageWrap).getRecords();
+ ExcelExporter.build(OrdersDetail.class).export(ordersDetailList, "瀵勫瓨璁㈠崟鏄庣粏", response);
+ }
+
+ @ApiOperation("鏍规嵁ID鏌ヨ")
+ @GetMapping("/{id}")
+ public ApiResponse findById(@PathVariable Integer id) {
+ return ApiResponse.success(ordersDetailService.findById(id));
+ }
+
+}
diff --git a/server/admin/src/main/java/com/doumee/api/business/PaymentCallback.java b/server/admin/src/main/java/com/doumee/api/business/PaymentCallback.java
deleted file mode 100644
index d719e4b..0000000
--- a/server/admin/src/main/java/com/doumee/api/business/PaymentCallback.java
+++ /dev/null
@@ -1,56 +0,0 @@
-package com.doumee.api.business;
-
-import com.alibaba.fastjson.JSON;
-import com.alibaba.fastjson.JSONObject;
-import com.doumee.config.wx.TransferDetailEntityNew;
-import com.doumee.config.wx.WxMiniConfig;
-import com.doumee.core.constants.Constants;
-import com.doumee.core.constants.ResponseStatus;
-import com.doumee.core.exception.BusinessException;
-import com.doumee.core.model.ApiResponse;
-import com.doumee.service.business.OrdersService;
-import com.doumee.service.business.WithdrawalOrdersService;
-import com.wechat.pay.java.core.Config;
-import com.wechat.pay.java.core.RSAAutoCertificateConfig;
-import com.wechat.pay.java.core.RSAPublicKeyConfig;
-import com.wechat.pay.java.core.notification.NotificationConfig;
-import com.wechat.pay.java.core.notification.NotificationParser;
-import com.wechat.pay.java.core.notification.RequestParam;
-import com.wechat.pay.java.service.partnerpayments.jsapi.model.Transaction;
-import com.wechat.pay.java.service.refund.model.RefundNotification;
-import lombok.extern.slf4j.Slf4j;
-import org.apache.commons.lang3.StringUtils;
-import org.apache.shiro.SecurityUtils;
-import org.apache.shiro.mgt.DefaultSecurityManager;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.CrossOrigin;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RestController;
-
-import javax.servlet.ServletInputStream;
-import javax.servlet.http.HttpServletRequest;
-import java.io.BufferedReader;
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.InputStreamReader;
-import java.util.HashMap;
-import java.util.Map;
-
-/**
- * Created by IntelliJ IDEA.
- * 鏀粯鍥炶皟
- * @Author : Rk
- * @create 2023/2/23 13:49
- */
-@Slf4j
-@RestController
-@CrossOrigin
-public class PaymentCallback {
-
- @Autowired
- private OrdersService ordersService;
-
- @Autowired
- private WithdrawalOrdersService withdrawalOrdersService;
-
-}
diff --git a/server/admin/src/main/java/com/doumee/api/business/RevenueController.java b/server/admin/src/main/java/com/doumee/api/business/RevenueController.java
new file mode 100644
index 0000000..85d30d9
--- /dev/null
+++ b/server/admin/src/main/java/com/doumee/api/business/RevenueController.java
@@ -0,0 +1,92 @@
+package com.doumee.api.business;
+
+import com.doumee.api.BaseController;
+import com.doumee.core.annotation.excel.ExcelExporter;
+import com.doumee.core.annotation.pr.PreventRepeat;
+import com.doumee.core.model.ApiResponse;
+import com.doumee.core.model.PageData;
+import com.doumee.core.model.PageWrap;
+import com.doumee.dao.business.model.Revenue;
+import com.doumee.service.business.RevenueService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.apache.shiro.authz.annotation.RequiresPermissions;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import javax.servlet.http.HttpServletResponse;
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * 鏀舵敮璁板綍绠$悊
+ * @author rk
+ * @date 2026/04/10
+ */
+@Api(tags = "鏀舵敮璁板綍")
+@RestController
+@RequestMapping("/business/revenue")
+public class RevenueController extends BaseController {
+
+ @Autowired
+ private RevenueService revenueService;
+
+ @PreventRepeat
+ @ApiOperation("鏂板缓")
+ @PostMapping("/create")
+ @RequiresPermissions("business:revenue:create")
+ public ApiResponse create(@RequestBody Revenue revenue) {
+ return ApiResponse.success(revenueService.create(revenue));
+ }
+
+ @ApiOperation("鏍规嵁ID鍒犻櫎")
+ @GetMapping("/delete/{id}")
+ @RequiresPermissions("business:revenue:delete")
+ public ApiResponse deleteById(@PathVariable Integer id) {
+ revenueService.deleteById(id);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鎵归噺鍒犻櫎")
+ @GetMapping("/delete/batch")
+ @RequiresPermissions("business:revenue:delete")
+ public ApiResponse deleteByIdInBatch(@RequestParam String ids) {
+ String[] idArray = ids.split(",");
+ List<Integer> idList = new ArrayList<>();
+ for (String id : idArray) {
+ idList.add(Integer.valueOf(id));
+ }
+ revenueService.deleteByIdInBatch(idList);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鏍规嵁ID淇敼")
+ @PostMapping("/updateById")
+ @RequiresPermissions("business:revenue:update")
+ public ApiResponse updateById(@RequestBody Revenue revenue) {
+ revenueService.updateById(revenue);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鍒嗛〉鏌ヨ")
+ @PostMapping("/page")
+ @RequiresPermissions("business:revenue:query")
+ public ApiResponse<PageData<Revenue>> findPage(@RequestBody PageWrap<Revenue> pageWrap) {
+ return ApiResponse.success(revenueService.findPage(pageWrap));
+ }
+
+ @ApiOperation("瀵煎嚭Excel")
+ @PostMapping("/exportExcel")
+ @RequiresPermissions("business:revenue:exportExcel")
+ public void exportExcel(@RequestBody PageWrap<Revenue> pageWrap, HttpServletResponse response) {
+ ExcelExporter.build(Revenue.class).export(revenueService.findPage(pageWrap).getRecords(), "鏀舵敮璁板綍", response);
+ }
+
+ @ApiOperation("鏍规嵁ID鏌ヨ")
+ @GetMapping("/{id}")
+ @RequiresPermissions("business:revenue:query")
+ public ApiResponse findById(@PathVariable Integer id) {
+ return ApiResponse.success(revenueService.findById(id));
+ }
+
+}
diff --git a/server/admin/src/main/java/com/doumee/api/business/ShopInfoController.java b/server/admin/src/main/java/com/doumee/api/business/ShopInfoController.java
index bf72c43..98989c6 100644
--- a/server/admin/src/main/java/com/doumee/api/business/ShopInfoController.java
+++ b/server/admin/src/main/java/com/doumee/api/business/ShopInfoController.java
@@ -7,6 +7,11 @@
import com.doumee.core.model.PageData;
import com.doumee.core.model.PageWrap;
import com.doumee.dao.business.model.ShopInfo;
+import com.doumee.dao.dto.AuditDTO;
+import com.doumee.dao.dto.ChangeStatusDTO;
+import com.doumee.dao.dto.ResetPasswordDTO;
+import com.doumee.dao.dto.ShopUpdateDTO;
+import com.doumee.dao.vo.ShopDetailVO;
import com.doumee.service.business.ShopInfoService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
@@ -90,4 +95,44 @@
return ApiResponse.success(shopInfoService.findById(id));
}
+ @ApiOperation("闂ㄥ簵璇︽儏锛堝惈闄勪欢锛�")
+ @GetMapping("/detail/{id}")
+ @RequiresPermissions("business:shopInfo:query")
+ public ApiResponse<ShopDetailVO> detail(@PathVariable Integer id) {
+ return ApiResponse.success(shopInfoService.getShopDetail(id));
+ }
+
+ @ApiOperation("瀹℃壒闂ㄥ簵鐢宠")
+ @PostMapping("/audit")
+ @RequiresPermissions("business:shopInfo:audit")
+ public ApiResponse audit(@RequestBody AuditDTO auditDTO) {
+ auditDTO.setAuditUser(this.getLoginUser().getId());
+ shopInfoService.auditShop(auditDTO);
+ return ApiResponse.success("瀹℃壒鎴愬姛");
+ }
+
+ @ApiOperation("淇敼闂ㄥ簵鐘舵��")
+ @PostMapping("/changeStatus")
+ @RequiresPermissions("business:shopInfo:update")
+ public ApiResponse changeStatus(@RequestBody ChangeStatusDTO dto) {
+ shopInfoService.changeStatus(dto);
+ return ApiResponse.success("鎿嶄綔鎴愬姛");
+ }
+
+ @ApiOperation("閲嶇疆闂ㄥ簵瀵嗙爜")
+ @PostMapping("/resetPassword")
+ @RequiresPermissions("business:shopInfo:update")
+ public ApiResponse resetPassword(@RequestBody ResetPasswordDTO dto) {
+ shopInfoService.resetPassword(dto);
+ return ApiResponse.success("瀵嗙爜閲嶇疆鎴愬姛");
+ }
+
+ @ApiOperation("淇敼闂ㄥ簵淇℃伅")
+ @PostMapping("/updateShop")
+ @RequiresPermissions("business:shopInfo:update")
+ public ApiResponse updateShop(@RequestBody ShopUpdateDTO dto) {
+ shopInfoService.updateShop(dto);
+ return ApiResponse.success("淇敼鎴愬姛");
+ }
+
}
diff --git a/server/admin/src/main/java/com/doumee/api/business/WithdrawalOrdersController.java b/server/admin/src/main/java/com/doumee/api/business/WithdrawalOrdersController.java
index 4c27823..02556f7 100644
--- a/server/admin/src/main/java/com/doumee/api/business/WithdrawalOrdersController.java
+++ b/server/admin/src/main/java/com/doumee/api/business/WithdrawalOrdersController.java
@@ -2,7 +2,6 @@
import com.doumee.api.BaseController;
import com.doumee.core.annotation.excel.ExcelExporter;
-import com.doumee.core.annotation.pr.PreventRepeat;
import com.doumee.core.model.ApiResponse;
import com.doumee.core.model.PageData;
import com.doumee.core.model.PageWrap;
@@ -19,10 +18,11 @@
import java.util.List;
/**
- * @author 姹熻箘韫�
- * @date 2025/07/09 12:00
+ * 鎻愮幇鐢宠绠$悊
+ * @author rk
+ * @date 2026/04/10
*/
-@Api(tags = "鎻愮幇鐢宠璁板綍")
+@Api(tags = "鎻愮幇鐢宠")
@RestController
@RequestMapping("/business/withdrawalOrders")
public class WithdrawalOrdersController extends BaseController {
@@ -30,17 +30,9 @@
@Autowired
private WithdrawalOrdersService withdrawalOrdersService;
- @PreventRepeat
- @ApiOperation("鏂板缓")
- @PostMapping("/create")
- @RequiresPermissions("business:withdrawalorders:create")
- public ApiResponse create(@RequestBody WithdrawalOrders withdrawalOrders) {
- return ApiResponse.success(withdrawalOrdersService.create(withdrawalOrders));
- }
-
@ApiOperation("鏍规嵁ID鍒犻櫎")
@GetMapping("/delete/{id}")
- @RequiresPermissions("business:withdrawalorders:delete")
+ @RequiresPermissions("business:withdrawalOrders:delete")
public ApiResponse deleteById(@PathVariable Integer id) {
withdrawalOrdersService.deleteById(id);
return ApiResponse.success(null);
@@ -48,9 +40,9 @@
@ApiOperation("鎵归噺鍒犻櫎")
@GetMapping("/delete/batch")
- @RequiresPermissions("business:withdrawalorders:delete")
+ @RequiresPermissions("business:withdrawalOrders:delete")
public ApiResponse deleteByIdInBatch(@RequestParam String ids) {
- String [] idArray = ids.split(",");
+ String[] idArray = ids.split(",");
List<Integer> idList = new ArrayList<>();
for (String id : idArray) {
idList.add(Integer.valueOf(id));
@@ -61,7 +53,7 @@
@ApiOperation("鏍规嵁ID淇敼")
@PostMapping("/updateById")
- @RequiresPermissions("business:withdrawalorders:update")
+ @RequiresPermissions("business:withdrawalOrders:update")
public ApiResponse updateById(@RequestBody WithdrawalOrders withdrawalOrders) {
withdrawalOrdersService.updateById(withdrawalOrders);
return ApiResponse.success(null);
@@ -69,22 +61,23 @@
@ApiOperation("鍒嗛〉鏌ヨ")
@PostMapping("/page")
- @RequiresPermissions("business:withdrawalorders:query")
- public ApiResponse<PageData<WithdrawalOrders>> findPage (@RequestBody PageWrap<WithdrawalOrders> pageWrap) {
+ @RequiresPermissions("business:withdrawalOrders:query")
+ public ApiResponse<PageData<WithdrawalOrders>> findPage(@RequestBody PageWrap<WithdrawalOrders> pageWrap) {
return ApiResponse.success(withdrawalOrdersService.findPage(pageWrap));
}
@ApiOperation("瀵煎嚭Excel")
@PostMapping("/exportExcel")
- @RequiresPermissions("business:withdrawalorders:exportExcel")
- public void exportExcel (@RequestBody PageWrap<WithdrawalOrders> pageWrap, HttpServletResponse response) {
- ExcelExporter.build(WithdrawalOrders.class).export(withdrawalOrdersService.findPage(pageWrap).getRecords(), "鎻愮幇鐢宠璁板綍", response);
+ @RequiresPermissions("business:withdrawalOrders:exportExcel")
+ public void exportExcel(@RequestBody PageWrap<WithdrawalOrders> pageWrap, HttpServletResponse response) {
+ ExcelExporter.build(WithdrawalOrders.class).export(withdrawalOrdersService.findPage(pageWrap).getRecords(), "鎻愮幇鐢宠", response);
}
@ApiOperation("鏍规嵁ID鏌ヨ")
@GetMapping("/{id}")
- @RequiresPermissions("business:withdrawalorders:query")
+ @RequiresPermissions("business:withdrawalOrders:query")
public ApiResponse findById(@PathVariable Integer id) {
return ApiResponse.success(withdrawalOrdersService.findById(id));
}
+
}
diff --git a/server/admin/src/main/java/com/doumee/core/job/SchedulerProxy.java b/server/admin/src/main/java/com/doumee/core/job/SchedulerProxy.java
index 57311f3..f108fa9 100644
--- a/server/admin/src/main/java/com/doumee/core/job/SchedulerProxy.java
+++ b/server/admin/src/main/java/com/doumee/core/job/SchedulerProxy.java
@@ -3,11 +3,14 @@
import com.doumee.config.quartz.JobHandler;
import com.doumee.config.quartz.JobHandlerWithDisallowConcurrent;
import com.doumee.core.constants.Constants;
+import com.doumee.service.business.AreasService;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.extern.slf4j.Slf4j;
import org.quartz.*;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.scheduling.annotation.EnableScheduling;
+import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
/**
@@ -17,11 +20,20 @@
*/
@Slf4j
@Component
+@EnableScheduling
public class SchedulerProxy {
@Autowired
private Scheduler scheduler;
+ @Autowired
+ private AreasService areasService;
+
+ @Scheduled(initialDelay = 0, fixedRate = 10000)
+ public void cacheAreaData(){
+ areasService.cacheData();
+ }
+
/**
* 鍒涘缓JOB
*
diff --git a/server/admin/src/main/java/com/doumee/job/AutoCommentJob.java b/server/admin/src/main/java/com/doumee/job/AreasJob.java
similarity index 68%
rename from server/admin/src/main/java/com/doumee/job/AutoCommentJob.java
rename to server/admin/src/main/java/com/doumee/job/AreasJob.java
index 402b5cb..0e7978d 100644
--- a/server/admin/src/main/java/com/doumee/job/AutoCommentJob.java
+++ b/server/admin/src/main/java/com/doumee/job/AreasJob.java
@@ -3,29 +3,29 @@
import com.doumee.core.job.BaseJob;
import com.doumee.core.job.JobContext;
import com.doumee.core.job.JobParam;
-import com.doumee.service.business.OrdersService;
+import com.doumee.service.business.AreasService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
/**
- * 鑷姩璇勪环
+ * 鏅�氱殑瀹氭椂浠诲姟
* @author dm
* @since 2025/03/31 16:44
*/
@Slf4j
-@Component("AutoCommentJob")
-public class AutoCommentJob extends BaseJob {
+@Component("areasJob")
+public class AreasJob extends BaseJob {
+
@Autowired
- private OrdersService ordersService;
+ private AreasService areasService;
@Override
public JobContext execute(JobParam param) {
JobContext jobContext = new JobContext();
try {
- ordersService.autoComment();
- jobContext.setContext("鑷姩璇勪环");
+ areasService.cacheData();
} catch (Exception e) {
e.printStackTrace();
}
diff --git a/server/admin/src/main/java/com/doumee/job/AutoCancelOrdersJob.java b/server/admin/src/main/java/com/doumee/job/AutoCancelOrdersJob.java
deleted file mode 100644
index 39b366f..0000000
--- a/server/admin/src/main/java/com/doumee/job/AutoCancelOrdersJob.java
+++ /dev/null
@@ -1,34 +0,0 @@
-package com.doumee.job;
-
-import com.doumee.core.job.BaseJob;
-import com.doumee.core.job.JobContext;
-import com.doumee.core.job.JobParam;
-import com.doumee.service.business.OrdersService;
-import lombok.extern.slf4j.Slf4j;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Component;
-
-/**
- * 鑷姩鍙栨秷鏈敮浠樿鍗�
- * @author dm
- * @since 2025/03/31 16:44
- */
-@Slf4j
-@Component("AutoCancelOrdersJob")
-public class AutoCancelOrdersJob extends BaseJob {
-
- @Autowired
- private OrdersService ordersService;
-
- @Override
- public JobContext execute(JobParam param) {
- JobContext jobContext = new JobContext();
- try {
- ordersService.autoCancelWaitPay();
- jobContext.setContext("鑷姩鍙栨秷鏈敮浠樿鍗�");
- } catch (Exception e) {
- e.printStackTrace();
- }
- return jobContext;
- }
-}
diff --git a/server/admin/src/main/java/com/doumee/job/AutoConfirmJob.java b/server/admin/src/main/java/com/doumee/job/AutoConfirmJob.java
deleted file mode 100644
index 74fe0fb..0000000
--- a/server/admin/src/main/java/com/doumee/job/AutoConfirmJob.java
+++ /dev/null
@@ -1,34 +0,0 @@
-package com.doumee.job;
-
-import com.doumee.core.job.BaseJob;
-import com.doumee.core.job.JobContext;
-import com.doumee.core.job.JobParam;
-import com.doumee.service.business.OrdersService;
-import lombok.extern.slf4j.Slf4j;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Component;
-
-/**
- * 鑷姩纭璁㈠崟淇敼
- * @author dm
- * @since 2025/03/31 16:44
- */
-@Slf4j
-@Component("AutoConfirmJob")
-public class AutoConfirmJob extends BaseJob {
-
- @Autowired
- private OrdersService ordersService;
-
- @Override
- public JobContext execute(JobParam param) {
- JobContext jobContext = new JobContext();
- try {
- ordersService.autoConfirm();
- jobContext.setContext("鑷姩纭璁㈠崟淇敼");
- } catch (Exception e) {
- e.printStackTrace();
- }
- return jobContext;
- }
-}
diff --git a/server/admin/src/main/java/com/doumee/job/AutoGrabOrdersJob.java b/server/admin/src/main/java/com/doumee/job/AutoGrabOrdersJob.java
deleted file mode 100644
index 5bcb7af..0000000
--- a/server/admin/src/main/java/com/doumee/job/AutoGrabOrdersJob.java
+++ /dev/null
@@ -1,34 +0,0 @@
-package com.doumee.job;
-
-import com.doumee.core.job.BaseJob;
-import com.doumee.core.job.JobContext;
-import com.doumee.core.job.JobParam;
-import com.doumee.service.business.OrdersService;
-import lombok.extern.slf4j.Slf4j;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Component;
-
-/**
- * 鑷姩娲惧崟
- * @author dm
- * @since 2025/03/31 16:44
- */
-@Slf4j
-@Component("AutoGrabOrdersJob")
-public class AutoGrabOrdersJob extends BaseJob {
-
- @Autowired
- private OrdersService ordersService;
-
- @Override
- public JobContext execute(JobParam param) {
- JobContext jobContext = new JobContext();
- try {
- ordersService.autoGrabOrders();
- jobContext.setContext("鑷姩娲惧崟");
- } catch (Exception e) {
- e.printStackTrace();
- }
- return jobContext;
- }
-}
diff --git a/server/admin/src/main/java/com/doumee/job/InitializeCodeJob.java b/server/admin/src/main/java/com/doumee/job/InitializeCodeJob.java
deleted file mode 100644
index 4d66167..0000000
--- a/server/admin/src/main/java/com/doumee/job/InitializeCodeJob.java
+++ /dev/null
@@ -1,34 +0,0 @@
-package com.doumee.job;
-
-import com.doumee.core.job.BaseJob;
-import com.doumee.core.job.JobContext;
-import com.doumee.core.job.JobParam;
-import com.doumee.service.business.OrdersService;
-import lombok.extern.slf4j.Slf4j;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Component;
-
-/**
- * 鍒濆鍖栬鍗曠紪鍙�
- * @author dm
- * @since 2025/03/31 16:44
- */
-@Slf4j
-@Component("InitializeCodeJob")
-public class InitializeCodeJob extends BaseJob {
-
- @Autowired
- private OrdersService ordersService;
-
- @Override
- public JobContext execute(JobParam param) {
- JobContext jobContext = new JobContext();
- try {
- ordersService.initializeCode();
- jobContext.setContext("鍒濆鍖栬鍗曠紪鍙�");
- } catch (Exception e) {
- e.printStackTrace();
- }
- return jobContext;
- }
-}
diff --git a/server/services/src/main/java/com/doumee/api/system/SystemDictDataController.java b/server/services/src/main/java/com/doumee/api/system/SystemDictDataController.java
index 6895d47..ed24e02 100644
--- a/server/services/src/main/java/com/doumee/api/system/SystemDictDataController.java
+++ b/server/services/src/main/java/com/doumee/api/system/SystemDictDataController.java
@@ -10,7 +10,6 @@
import com.doumee.core.model.PageData;
import com.doumee.core.model.PageWrap;
import com.doumee.dao.common.dto.UpdateSortDTO;
-import com.doumee.dao.dto.PlatformConfigDTO;
import com.doumee.dao.system.dto.QuerySystemDictDataDTO;
import com.doumee.dao.system.model.SystemDictData;
import com.doumee.dao.system.vo.SystemDictDataListVO;
@@ -91,22 +90,6 @@
@GetMapping("/findByDictCode")
public ApiResponse<List<SystemDictData>> findByCode (@RequestParam String dictCode) {
return ApiResponse.success(systemDictDataService.findByDictCode(dictCode));
- }
-
-
-
- @ApiOperation("鑾峰彇骞冲彴閰嶇疆椤�")
- @GetMapping("/getPlatformConfig")
- public ApiResponse<PlatformConfigDTO> getPlatformConfig () {
- return ApiResponse.success(systemDictDataService.getPlatformConfigDTO());
- }
-
-
- @ApiOperation("鏇存柊骞冲彴閰嶇疆椤�")
- @PostMapping("/updPlatformConfig")
- public ApiResponse updPlatformConfig (@RequestBody PlatformConfigDTO platformConfigDTO) {
- systemDictDataService.updPlatformConfig(platformConfigDTO);
- return ApiResponse.success("鎿嶄綔鎴愬姛");
}
diff --git a/server/services/src/main/java/com/doumee/biz/system/AreasBiz.java b/server/services/src/main/java/com/doumee/biz/system/AreasBiz.java
new file mode 100644
index 0000000..2705760
--- /dev/null
+++ b/server/services/src/main/java/com/doumee/biz/system/AreasBiz.java
@@ -0,0 +1,21 @@
+package com.doumee.biz.system;
+
+import com.doumee.dao.business.model.Areas;
+
+/**
+ * 鍖哄垝淇℃伅涓氬姟灏佽
+ *
+ * @author rk
+ * @date 2026/04/10
+ */
+public interface AreasBiz {
+
+ /**
+ * 鏍规嵁鍖哄幙涓婚敭鑾峰彇瀹屾暣鍖哄垝淇℃伅锛堢渷/甯�/鍖哄悕绉帮級
+ *
+ * @param areaId 鍖哄幙涓婚敭锛坅reas琛� type=2 鐨勮褰曪級
+ * @return 鍖呭惈鐪佸競鍖轰俊鎭殑 Areas 瀵硅薄锛宎reaId 涓� null 鏃惰繑鍥� null
+ */
+ Areas resolveArea(Integer areaId);
+
+}
diff --git a/server/services/src/main/java/com/doumee/biz/system/impl/AreasBizImpl.java b/server/services/src/main/java/com/doumee/biz/system/impl/AreasBizImpl.java
new file mode 100644
index 0000000..a26c322
--- /dev/null
+++ b/server/services/src/main/java/com/doumee/biz/system/impl/AreasBizImpl.java
@@ -0,0 +1,30 @@
+package com.doumee.biz.system.impl;
+
+import com.doumee.biz.system.AreasBiz;
+import com.doumee.dao.business.model.Areas;
+import com.doumee.service.business.AreasService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+/**
+ * 鍖哄垝淇℃伅涓氬姟灏佽瀹炵幇
+ *
+ * @author rk
+ * @date 2026/04/10
+ */
+@Service
+public class AreasBizImpl implements AreasBiz {
+
+ @Autowired
+ private AreasService areasService;
+
+ @Override
+ public Areas resolveArea(Integer areaId) {
+ if (areaId == null) {
+ return null;
+ }
+ // cacheData 涓凡涓烘瘡鏉″尯鍘胯褰曞~鍏呬簡 provinceId/provinceName/cityId/cityName
+ return areasService.findById(areaId);
+ }
+
+}
diff --git a/server/services/src/main/java/com/doumee/config/wx/SendWxMessage.java b/server/services/src/main/java/com/doumee/config/wx/SendWxMessage.java
index 6cad1e8..7ade5c2 100644
--- a/server/services/src/main/java/com/doumee/config/wx/SendWxMessage.java
+++ b/server/services/src/main/java/com/doumee/config/wx/SendWxMessage.java
@@ -6,21 +6,12 @@
import com.doumee.core.utils.DateUtil;
import com.doumee.core.utils.HttpsUtil;
import com.doumee.dao.business.model.IdentityInfo;
-import com.doumee.dao.business.model.Orders;
-import com.doumee.dao.business.model.WithdrawalOrders;
-import com.github.xiaoymin.knife4j.core.util.CollectionUtils;
import lombok.extern.slf4j.Slf4j;
import me.chanjar.weixin.common.error.WxErrorException;
-import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.http.ResponseEntity;
import org.springframework.stereotype.Service;
-import org.springframework.web.client.RestTemplate;
-import java.math.BigDecimal;
-import java.util.Date;
import java.util.HashMap;
-import java.util.List;
import java.util.Map;
/**
@@ -35,15 +26,6 @@
private static String mineUrl = "/pages/mine/mine";
-
- private static String orderDetail = "pages/order-details/order-details?id={id}";// 鐢ㄥ伐
-
- private static String orderDetailFreight = "pages/freight-order/freight-order?id={id}";// 璐ц繍
-
- private static String orderDetailFood = "pages/order-food/order-food?id={id}";// 璁㈤
-
- private static String balanceUrl = "pages/balance-details/balance-details";// 浣欓鏄庣粏
-
@Autowired
private SystemDictDataBiz systemDictDataBiz;
@@ -75,269 +57,10 @@
wxMsgVO.setData(m);
log.error("寰俊灏忕▼搴�->寰俊娑堟伅閫氱煡 璁よ瘉淇℃伅锛歿}", JSONObject.toJSONString(wxMsgVO));
String responseEntity = HttpsUtil.postJson(url,JSONObject.toJSONString(wxMsgVO));
-// ResponseEntity<String> responseEntity =
-// restTemplate.postForEntity(url, wxMsgVO, String.class);
log.error("寰俊灏忕▼搴�->寰俊娑堟伅閫氱煡 璁よ瘉淇℃伅锛歿}", JSONObject.toJSONString(responseEntity));
}catch (WxErrorException wxErrorException){
}
}
-
- /**
- * 璁㈠崟鍙栨秷涓氬姟閫氱煡
- * @param openidList
- * @param orders
- * @param cancelType 鍙栨秷绫诲瀷锛�0=骞冲彴鍙栨秷锛�1=鍙戝崟鏂瑰彇娑堬紱1=鎺ュ崟鏂瑰彇娑�
- * @throws WxErrorException
- */
- public void cancelMessage(List<String> openidList, Orders orders,Integer cancelType ){
-
- try{
- String accessToken = WxMiniConfig.wxMaService.getAccessToken();
- log.error("寰俊灏忕▼搴�->寰俊娑堟伅閫氱煡 - 璁㈠崟鍙栨秷涓氬姟 -> accessToken锛歿}",accessToken);
- //杩欓噷绠�鍗曡捣瑙佹垜浠瘡娆¢兘鑾峰彇鏈�鏂扮殑access_token锛堟椂闂村紑鍙戜腑锛屽簲璇ュ湪access_token蹇繃鏈熸椂鍐嶉噸鏂拌幏鍙栵級
- String url = "https://api.weixin.qq.com/cgi-bin/message/subscribe/send?access_token="+accessToken;
- log.error("寰俊灏忕▼搴�->寰俊娑堟伅閫氱煡 璁㈠崟鍙栨秷涓氬姟URL锛歿}", url);
- //鎷兼帴鎺ㄩ�佺殑妯$増
- WxMsgVO wxMsgVO = new WxMsgVO();
- //璁㈤槄娑堟伅妯℃澘id
- wxMsgVO.setTemplate_id("AA97cHjvlPiNO4viMkVe4JifCf9TD5b5Eb7s6El3VS8");
- Map<String, TemplateData> m = new HashMap<>(5);
- m.put("character_string3", new TemplateData(orders.getCode()));
- m.put("thing2", new TemplateData(Constants.orderType.getName(orders.getType())));
- m.put("thing1", new TemplateData(orders.getLocation() + (StringUtils.isNotBlank(orders.getLocationRemark())?orders.getLocationRemark():"")));
- m.put("date8", new TemplateData(DateUtil.formatDate(orders.getCancelTime(),"yyyy-MM-dd HH:mm:ss")));
- m.put("thing6", new TemplateData(Constants.equalsInteger(cancelType,Constants.ZERO)?"骞冲彴鍙栨秷":Constants.equalsInteger(cancelType,Constants.ONE)?"鍙戝崟鏂瑰彇娑�":"鎺ュ崟鏂瑰彇娑�"));
- String pageUrl = Constants.equalsInteger(orders.getType(),Constants.orderType.hyd.getKey())?orderDetailFreight:
- Constants.equalsInteger(orders.getType(),Constants.orderType.scd.getKey())?orderDetailFood:orderDetail;
- pageUrl = pageUrl.replace("{id}",orders.getId().toString());
- wxMsgVO.setPage(pageUrl);
- wxMsgVO.setData(m);
- if(CollectionUtils.isNotEmpty(openidList)){
- for (String openid:openidList) {
- //鐢ㄦ埛鐨刼penid锛堣鍙戦�佺粰閭d釜鐢ㄦ埛锛�
- wxMsgVO.setTouser(openid);
- log.error("寰俊灏忕▼搴�->寰俊娑堟伅閫氱煡 璁㈠崟鍙栨秷涓氬姟锛歿}", JSONObject.toJSONString(wxMsgVO));
- String responseEntity = HttpsUtil.postJson(url,JSONObject.toJSONString(wxMsgVO));
-// ResponseEntity<String> responseEntity =
-// restTemplate.postForEntity(url, wxMsgVO, String.class);
- log.error("寰俊灏忕▼搴�->寰俊娑堟伅閫氱煡 璁㈠崟鍙栨秷涓氬姟锛歿}", JSONObject.toJSONString(responseEntity));
- }
- }else{
- log.error("寰俊灏忕▼搴�->寰俊娑堟伅閫氱煡 璁㈠崟鍙栨秷涓氬姟锛歿}", "鏃犱汉鍛樹俊鎭�");
- }
- }catch (WxErrorException wxErrorException){
-
- }
-
- }
-
-
- /**
- * 鎺ュ崟閫氱煡
- * @param openid
- * @param orders
- * @param memberName
- * @param memberPhone
- * @throws WxErrorException
- */
- public void acceptMessage(String openid, Orders orders,String memberName,String memberPhone){
-
- try{
- String accessToken = WxMiniConfig.wxMaService.getAccessToken();
- log.error("寰俊灏忕▼搴�->寰俊娑堟伅閫氱煡 - 鎺ュ崟涓氬姟 -> accessToken锛歿}",accessToken);
- //杩欓噷绠�鍗曡捣瑙佹垜浠瘡娆¢兘鑾峰彇鏈�鏂扮殑access_token锛堟椂闂村紑鍙戜腑锛屽簲璇ュ湪access_token蹇繃鏈熸椂鍐嶉噸鏂拌幏鍙栵級
- String url = "https://api.weixin.qq.com/cgi-bin/message/subscribe/send?access_token="+accessToken;
- //鎷兼帴鎺ㄩ�佺殑妯$増
- WxMsgVO wxMsgVO = new WxMsgVO();
- wxMsgVO.setTouser(openid);
- //璁㈤槄娑堟伅妯℃澘id
- wxMsgVO.setTemplate_id("oVjOBLcHxIlGzOMJsdInmgI5CHGXh-UTvMzQqfFOnIg");
- Map<String, TemplateData> m = new HashMap<>(4);
- m.put("character_string3", new TemplateData(orders.getCode()));
- m.put("thing1", new TemplateData(Constants.orderType.getName(orders.getType())));
- m.put("thing15", new TemplateData(memberName));
- m.put("phone_number8", new TemplateData(memberPhone));
- String pageUrl = Constants.equalsInteger(orders.getType(),Constants.orderType.hyd.getKey())?orderDetailFreight:
- Constants.equalsInteger(orders.getType(),Constants.orderType.scd.getKey())?orderDetailFood:orderDetail;
- pageUrl = pageUrl.replace("{id}",orders.getId().toString());
- wxMsgVO.setPage(pageUrl);
- wxMsgVO.setData(m);
- //鐢ㄦ埛鐨刼penid锛堣鍙戦�佺粰閭d釜鐢ㄦ埛锛�
- log.error("寰俊灏忕▼搴�->寰俊娑堟伅閫氱煡 鎺ュ崟閫氱煡锛歿}", JSONObject.toJSONString(wxMsgVO));
- String responseEntity = HttpsUtil.postJson(url,JSONObject.toJSONString(wxMsgVO));
-// ResponseEntity<String> responseEntity =
-// restTemplate.postForEntity(url, wxMsgVO, String.class);
- log.error("寰俊灏忕▼搴�->寰俊娑堟伅閫氱煡 鎺ュ崟閫氱煡锛歿}", JSONObject.toJSONString(responseEntity));
- }catch (WxErrorException wxErrorException){
-
- }
-
- }
-
-
- public void orderUpdMessage(String openid, Orders orders){
-
- try{
- String accessToken = WxMiniConfig.wxMaService.getAccessToken();
- log.error("寰俊灏忕▼搴�->寰俊娑堟伅閫氱煡 - 璁㈠崟鍙樻洿閫氱煡 -> accessToken锛歿}",accessToken);
- //杩欓噷绠�鍗曡捣瑙佹垜浠瘡娆¢兘鑾峰彇鏈�鏂扮殑access_token锛堟椂闂村紑鍙戜腑锛屽簲璇ュ湪access_token蹇繃鏈熸椂鍐嶉噸鏂拌幏鍙栵級
- String url = "https://api.weixin.qq.com/cgi-bin/message/subscribe/send?access_token="+accessToken;
- //鎷兼帴鎺ㄩ�佺殑妯$増
- WxMsgVO wxMsgVO = new WxMsgVO();
- wxMsgVO.setTouser(openid);
- //璁㈤槄娑堟伅妯℃澘id
- wxMsgVO.setTemplate_id("3YSC7gouRlSjHXz4CrWOGFzPmGwEBtFj4snwdfMvKHk");
- Map<String, TemplateData> m = new HashMap<>(3);
- m.put("character_string1", new TemplateData(orders.getCode()));
- m.put("thing3", new TemplateData("鍙樻洿璁㈠崟鏃ユ湡"));
- //鍙樻洿鍚庢棩鏈燂細07-23鑷�07-25
- m.put("thing5", new TemplateData("鍙樻洿鍚庢棩鏈燂細" +DateUtil.getFomartDate(orders.getStartDate(),"MM-dd") + "鑷�" +DateUtil.getFomartDate(orders.getEndDate(),"MM-dd")));
- String pageUrl = Constants.equalsInteger(orders.getType(),Constants.orderType.hyd.getKey())?orderDetailFreight:
- Constants.equalsInteger(orders.getType(),Constants.orderType.scd.getKey())?orderDetailFood:orderDetail;
- pageUrl = pageUrl.replace("{id}",orders.getId().toString());
- wxMsgVO.setPage(pageUrl);
- wxMsgVO.setData(m);
- //鐢ㄦ埛鐨刼penid锛堣鍙戦�佺粰閭d釜鐢ㄦ埛锛�
- log.error("寰俊灏忕▼搴�->寰俊娑堟伅閫氱煡 璁㈠崟鍙樻洿閫氱煡锛歿}", JSONObject.toJSONString(wxMsgVO));
- String responseEntity = HttpsUtil.postJson(url,JSONObject.toJSONString(wxMsgVO));
-// ResponseEntity<String> responseEntity =
-// restTemplate.postForEntity(url, wxMsgVO, String.class);
- log.error("寰俊灏忕▼搴�->寰俊娑堟伅閫氱煡 璁㈠崟鍙樻洿閫氱煡锛歿}", JSONObject.toJSONString(responseEntity));
- }catch (WxErrorException wxErrorException){
-
- }
-
- }
-
-
-
-
- public void withdrawalMessage(String openid, WithdrawalOrders withdrawalOrders){
- try{
-
- String accessToken = WxMiniConfig.wxMaService.getAccessToken();
- log.error("寰俊灏忕▼搴�->寰俊娑堟伅閫氱煡 - 鎻愮幇鎴愬姛閫氱煡 -> accessToken锛歿}",accessToken);
- //杩欓噷绠�鍗曡捣瑙佹垜浠瘡娆¢兘鑾峰彇鏈�鏂扮殑access_token锛堟椂闂村紑鍙戜腑锛屽簲璇ュ湪access_token蹇繃鏈熸椂鍐嶉噸鏂拌幏鍙栵級
- String url = "https://api.weixin.qq.com/cgi-bin/message/subscribe/send?access_token="+accessToken;
- //鎷兼帴鎺ㄩ�佺殑妯$増
- WxMsgVO wxMsgVO = new WxMsgVO();
- wxMsgVO.setTouser(openid);
- //璁㈤槄娑堟伅妯℃澘id
- wxMsgVO.setTemplate_id("fNJy4545hcrH83bP3a1vszs7XEKWjXMsrfr2XCNsql0");
- Map<String, TemplateData> m = new HashMap<>(4);
- m.put("phrase2", new TemplateData("宸叉墦娆�"));
- m.put("amount1", new TemplateData((new BigDecimal(withdrawalOrders.getAmount().toString()).divide(new BigDecimal("100"))).toString()));
- m.put("time3", new TemplateData(DateUtil.getFomartDate(withdrawalOrders.getUpdateTime(),"yyyy.MM.dd HH.mm.ss")));
- m.put("thing4", new TemplateData("鎵撴鎴愬姛锛岃娉ㄦ剰鏌ユ敹"));
- wxMsgVO.setPage(balanceUrl);
- wxMsgVO.setData(m);
- //鐢ㄦ埛鐨刼penid锛堣鍙戦�佺粰閭d釜鐢ㄦ埛锛�
- log.error("寰俊灏忕▼搴�->寰俊娑堟伅閫氱煡 鎻愮幇鎴愬姛閫氱煡锛歿}", JSONObject.toJSONString(wxMsgVO));
- String responseEntity = HttpsUtil.postJson(url,JSONObject.toJSONString(wxMsgVO));
-// ResponseEntity<String> responseEntity =
-// restTemplate.postForEntity(url, wxMsgVO, String.class);
- log.error("寰俊灏忕▼搴�->寰俊娑堟伅閫氱煡 鎻愮幇鎴愬姛閫氱煡锛歿}", JSONObject.toJSONString(responseEntity));
- }catch (WxErrorException wxErrorException){
-
- }
- }
-
-
- public void revenueMessage(String openid, Orders orders){
- try{
-
- String accessToken = WxMiniConfig.wxMaService.getAccessToken();
- log.error("寰俊灏忕▼搴�->寰俊娑堟伅閫氱煡 - 璁㈠崟鏀剁泭閫氱煡 -> accessToken锛歿}",accessToken);
- //杩欓噷绠�鍗曡捣瑙佹垜浠瘡娆¢兘鑾峰彇鏈�鏂扮殑access_token锛堟椂闂村紑鍙戜腑锛屽簲璇ュ湪access_token蹇繃鏈熸椂鍐嶉噸鏂拌幏鍙栵級
- String url = "https://api.weixin.qq.com/cgi-bin/message/subscribe/send?access_token="+accessToken;
- //鎷兼帴鎺ㄩ�佺殑妯$増
- WxMsgVO wxMsgVO = new WxMsgVO();
- wxMsgVO.setTouser(openid);
- //璁㈤槄娑堟伅妯℃澘id
- wxMsgVO.setTemplate_id("tDpYImlrdv-0d3euTrHbYZ1cEZvjVHTNlqHvV0tpLHg");
- Map<String, TemplateData> m = new HashMap<>(5);
- m.put("character_string8", new TemplateData(orders.getCode()));
- m.put("phrase3", new TemplateData("宸叉敮浠�"));
- m.put("phrase4", new TemplateData("寰俊鏀粯"));
- m.put("amount6", new TemplateData((new BigDecimal(orders.getReceiveAccount().toString()).divide(new BigDecimal("100")))+"鍏�"));
- m.put("date7", new TemplateData(DateUtil.getFomartDate(new Date(),"yyyy-MM-dd HH:mm:ss")));
- wxMsgVO.setPage(balanceUrl);
- wxMsgVO.setData(m);
- log.error("寰俊灏忕▼搴�->寰俊娑堟伅閫氱煡 璁㈠崟鏀剁泭閫氱煡锛歿}", JSONObject.toJSONString(wxMsgVO));
- //鐢ㄦ埛鐨刼penid锛堣鍙戦�佺粰閭d釜鐢ㄦ埛锛�
- String responseEntity = HttpsUtil.postJson(url,JSONObject.toJSONString(wxMsgVO));
-// ResponseEntity<String> responseEntity =
-// restTemplate.postForEntity(url, wxMsgVO, String.class);
- log.error("寰俊灏忕▼搴�->寰俊娑堟伅閫氱煡 璁㈠崟鏀剁泭閫氱煡锛歿}", JSONObject.toJSONString(responseEntity));
- }catch (WxErrorException wxErrorException){
-
- }
- }
-
-
- public void autoDispatchMessage(String openid, Orders orders,double distance){
- try{
-
- String accessToken = WxMiniConfig.wxMaService.getAccessToken();
- log.error("寰俊灏忕▼搴�->寰俊娑堟伅閫氱煡 - 鏈嶅姟娲惧崟 -> accessToken锛歿}",accessToken);
- //杩欓噷绠�鍗曡捣瑙佹垜浠瘡娆¢兘鑾峰彇鏈�鏂扮殑access_token锛堟椂闂村紑鍙戜腑锛屽簲璇ュ湪access_token蹇繃鏈熸椂鍐嶉噸鏂拌幏鍙栵級
- String url = "https://api.weixin.qq.com/cgi-bin/message/subscribe/send?access_token="+accessToken;
- //鎷兼帴鎺ㄩ�佺殑妯$増
- WxMsgVO wxMsgVO = new WxMsgVO();
- wxMsgVO.setTouser(openid);
- //璁㈤槄娑堟伅妯℃澘id
- wxMsgVO.setTemplate_id("1h6JYpQf-mDKV4tYQ6gGDONfx1awqtm3-y9W8vUraT4");
- Map<String, TemplateData> m = new HashMap<>(5);
- m.put("thing2", new TemplateData(Constants.orderType.getName(orders.getType())));
- m.put("thing3", new TemplateData(orders.getOrderContent()));
- m.put("phrase4", new TemplateData("姝ゅ湴璺濈鎮�"+distance+"鍏噷"));
- m.put("amount28", new TemplateData(orders.getEstimatedAccount().toString()));
- m.put("thing12", new TemplateData("宸ュ崟灏嗕簬"+DateUtil.formatDate(orders.getStartDate(),"MM-dd")+"寮�濮�"));
- String pageUrl = Constants.equalsInteger(orders.getType(),Constants.orderType.hyd.getKey())?orderDetailFreight:
- Constants.equalsInteger(orders.getType(),Constants.orderType.scd.getKey())?orderDetailFood:orderDetail;
- pageUrl = pageUrl.replace("{id}",orders.getId().toString());
- wxMsgVO.setPage(pageUrl);
- wxMsgVO.setData(m);
- log.error("寰俊灏忕▼搴�->寰俊娑堟伅閫氱煡 鏈嶅姟娲惧崟锛歿}", JSONObject.toJSONString(wxMsgVO));
- //鐢ㄦ埛鐨刼penid锛堣鍙戦�佺粰閭d釜鐢ㄦ埛锛�
- String responseEntity = HttpsUtil.postJson(url,JSONObject.toJSONString(wxMsgVO));
-// ResponseEntity<String> responseEntity =
-// restTemplate.postForEntity(url, wxMsgVO, String.class);
- log.error("寰俊灏忕▼搴�->寰俊娑堟伅閫氱煡 鏈嶅姟娲惧崟锛歿}", JSONObject.toJSONString(responseEntity));
- }catch (WxErrorException wxErrorException){
-
- }
- }
-
- public void waitPayMessage(String openid, Orders orders){
- try{
-
- String accessToken = WxMiniConfig.wxMaService.getAccessToken();
- log.error("寰俊灏忕▼搴�->寰俊娑堟伅閫氱煡 - 璁㈠崟閲戦纭寰呮敮浠� -> accessToken锛歿}",accessToken);
- //杩欓噷绠�鍗曡捣瑙佹垜浠瘡娆¢兘鑾峰彇鏈�鏂扮殑access_token锛堟椂闂村紑鍙戜腑锛屽簲璇ュ湪access_token蹇繃鏈熸椂鍐嶉噸鏂拌幏鍙栵級
- String url = "https://api.weixin.qq.com/cgi-bin/message/subscribe/send?access_token="+accessToken;
- //鎷兼帴鎺ㄩ�佺殑妯$増
- WxMsgVO wxMsgVO = new WxMsgVO();
- wxMsgVO.setTouser(openid);
- //璁㈤槄娑堟伅妯℃澘id
- wxMsgVO.setTemplate_id("3rOz7DAnawrkKDM8b5_XW4FLivISWYov6d7QSC4ORsg");
- Map<String, TemplateData> m = new HashMap<>(5);
- m.put("character_string1", new TemplateData(orders.getCode()));
- m.put("thing7", new TemplateData( Constants.getOrderInfo(orders)));
- m.put("amount14", new TemplateData(new BigDecimal(orders.getPayAccount().toString()).divide(new BigDecimal("100"),2,BigDecimal.ROUND_HALF_UP).toString()));
- String pageUrl = Constants.equalsInteger(orders.getType(),Constants.orderType.hyd.getKey())?orderDetailFreight:
- Constants.equalsInteger(orders.getType(),Constants.orderType.scd.getKey())?orderDetailFood:orderDetail;
- pageUrl = pageUrl.replace("{id}",orders.getId().toString());
- wxMsgVO.setPage(pageUrl);
- wxMsgVO.setData(m);
- log.error("寰俊灏忕▼搴�->寰俊娑堟伅閫氱煡 璁㈠崟閲戦纭寰呮敮浠橈細{}", JSONObject.toJSONString(wxMsgVO));
- //鐢ㄦ埛鐨刼penid锛堣鍙戦�佺粰閭d釜鐢ㄦ埛锛�
- String responseEntity = HttpsUtil.postJson(url,JSONObject.toJSONString(wxMsgVO));
- log.error("寰俊灏忕▼搴�->寰俊娑堟伅閫氱煡 璁㈠崟閲戦纭寰呮敮浠橈細{}", JSONObject.toJSONString(responseEntity));
- }catch (WxErrorException wxErrorException){
-
- }
- }
}
diff --git a/server/services/src/main/java/com/doumee/config/wx/WxMiniUtilService.java b/server/services/src/main/java/com/doumee/config/wx/WxMiniUtilService.java
deleted file mode 100644
index 736d9f3..0000000
--- a/server/services/src/main/java/com/doumee/config/wx/WxMiniUtilService.java
+++ /dev/null
@@ -1,84 +0,0 @@
-package com.doumee.config.wx;
-
-import com.alibaba.fastjson.JSONObject;
-import com.doumee.biz.system.SystemDictDataBiz;
-import com.doumee.core.constants.Constants;
-import com.doumee.core.constants.ResponseStatus;
-import com.doumee.core.exception.BusinessException;
-import com.doumee.core.utils.DateUtil;
-import com.doumee.core.utils.HttpsUtil;
-import com.doumee.dao.business.WithdrawalOrdersMapper;
-import com.doumee.dao.business.model.Orders;
-import com.doumee.dao.business.model.WithdrawalOrders;
-import com.doumee.dao.system.model.SystemDictData;
-import com.wechat.pay.java.service.refund.model.AmountReq;
-import com.wechat.pay.java.service.refund.model.CreateRequest;
-import com.wechat.pay.java.service.refund.model.QueryByOutRefundNoRequest;
-import lombok.extern.slf4j.Slf4j;
-import org.apache.commons.io.FileUtils;
-import org.apache.commons.lang3.StringUtils;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Service;
-import org.springframework.transaction.annotation.Transactional;
-
-import java.io.ByteArrayInputStream;
-import java.io.File;
-import java.io.IOException;
-import java.io.InputStream;
-import java.math.BigDecimal;
-import java.util.Date;
-import java.util.HashMap;
-import java.util.Map;
-import java.util.Objects;
-
-/**
- * 寰俊灏忕▼搴�-鍏叡鏂规硶
- */
-@Service
-@Slf4j
-public class WxMiniUtilService {
-
- @Autowired
- private WithdrawalOrdersMapper withdrawalOrdersMapper;
-
- @Autowired
- private SystemDictDataBiz systemDictDataBiz;
-
- @Autowired
- private WxPayProperties wxPayProperties;
-
- @Transactional(rollbackFor = {BusinessException.class,Exception.class})
- public boolean wxRefund(WithdrawalOrders withdrawalOrders,Orders orders) {
-// // 鍙戦�侀��娆捐姹�
-// withdrawalOrders.setCreateTime(new Date());
-// withdrawalOrdersMapper.insert(withdrawalOrders);
-// CreateRequest request = new CreateRequest();
-// request.setOutTradeNo(orders.getOutTradeNo());
-// request.setOutRefundNo(withdrawalOrders.getId().toString());
-// request.setSubMchid(WxMiniConfig.wxProperties.getSubMchId());
-// request.setNotifyUrl(WxMiniConfig.wxProperties.getRefundNotifyUrl());
-// AmountReq amountReq = new AmountReq();
-// amountReq.setTotal(1L);//withdrawalOrders.getAmount());
-// amountReq.setRefund(1L);//withdrawalOrders.getAmount());
-// amountReq.setCurrency("CNY");
-// request.setAmount(amountReq);
-// try {
-// log.error("=============="+JSONObject.toJSONString(request));
-// com.wechat.pay.java.service.refund.model.Refund response = WxMiniConfig.wxPayService.refund(request);
-// log.error("=============="+JSONObject.toJSONString(response));
-// if ("SUCCESS".equals(response.getStatus().name())
-// || "PROCESSING".equals(response.getStatus().name()) ) {
-// return true;
-// }else{
-// throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"瀵逛笉璧凤紝閫�娆剧敵璇峰け璐ュ摝锛�");
-// }
-// }catch (Exception e){
-// e.printStackTrace();
-// throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"瀵逛笉璧凤紝閫�娆剧敵璇峰け璐ワ紒");
-// }
- return false;
- }
-
-
-
-}
diff --git a/server/services/src/main/java/com/doumee/core/constants/Constants.java b/server/services/src/main/java/com/doumee/core/constants/Constants.java
index f415282..0e3677d 100644
--- a/server/services/src/main/java/com/doumee/core/constants/Constants.java
+++ b/server/services/src/main/java/com/doumee/core/constants/Constants.java
@@ -1,6 +1,5 @@
package com.doumee.core.constants;
-import com.doumee.dao.business.model.Orders;
import lombok.AllArgsConstructor;
import lombok.Getter;
import org.springframework.web.context.request.RequestContextHolder;
@@ -55,15 +54,6 @@
public static final String PRIVACY_AGREEMENT ="PRIVACY_AGREEMENT" ;
- public static final String RELEASE_CANCEL_TIMES ="RELEASE_CANCEL_TIMES" ;
- public static final String RECEIVE_CANCEL_TIMES ="RECEIVE_CANCEL_TIMES" ;
- public static final String RELEASE_CANCEL_TIME ="RELEASE_CANCEL_TIME" ;
- public static final String RECEIVE_CANCEL_TIME ="RECEIVE_CANCEL_TIME" ;
- public static final String AUTO_DISPATCH ="AUTO_DISPATCH" ;
- public static final String AUTO_DISPATCH_DISTANCE ="AUTO_DISPATCH_DISTANCE" ;
- public static final String AUTO_CONFIRM ="AUTO_CONFIRM" ;
- public static final String AUTO_CANCEL_WAIT_PAY ="AUTO_CANCEL_WAIT_PAY" ;
-
public static final String QYWX = "QYWX";
public static final Integer ONE = 1;
public static final Integer TWO = 2;
@@ -75,7 +65,7 @@
public static final String INENTITY_FILES = "INENTITY_FILES";
public static final String MEMBER_FILES = "MEMBER_FILES";
public static final String CATEGORY_FILES = "CATEGORY_FILES";
- public static final String ORDERS_FILES = "ORDERS_FILES";
+ public static final String SHOP_FILES = "SHOP_FILES";
public static boolean WORKORDER_SHE_EMAIL_SENDING = false;
public static boolean DEALING_COMPANY_SYNC = false ;
public static boolean DEALING_MEMBER_SYNC = false ;
@@ -98,9 +88,6 @@
* 缂撳瓨Key
*/
interface CacheKey {
- }
- public interface RedisKeys {
- public static final String ORDER_CODE = "ORDER_CODE";
}
/**
* 鎿嶄綔绫诲瀷锛岀敤浜庡仛鎺ュ彛楠岃瘉鍒嗙粍
@@ -371,390 +358,29 @@
}
}
+
/**
- * 鐢ㄦ埛鏀舵敮涓氬姟绫诲瀷
- * 鍙樺姩绫诲瀷:0=鐢ㄥ伐鍗曟敹鍏ワ紱1=璐ц繍鍗曟敹鍏ワ紱2=渚涢鍗曟敹鍏ワ紱3=鎻愮幇鐢宠锛�
+ * 闄勪欢绫诲瀷锛堝搴� multifile.objType锛�
*/
@Getter
- public enum RevenueType {
-
- YGD_INCOME( 0, "鐢ㄥ伐鍗曟敹鍏�","鐢ㄥ伐鍗�" ,0),
- HYD_INCOME( 1, "璐ц繍鍗曟敹鍏�","璐ц繍鍗�" ,0),
- GCD_INCOME(2, "渚涢鍗曟敹鍏�","渚涢鍗�" ,0),
- WITHDRAW_APPLY(3, "鎻愮幇鐢宠","鎻愮幇鐢宠" ,0),
- REFUND( 4, "鎻愮幇鐢宠閫�鍥�","鎻愮幇鐢宠閫�鍥�" ,0)
+ @AllArgsConstructor
+ public enum FileType {
+ OTHER_MATERIAL(0, "闂ㄥ簵鍏朵粬鏉愭枡"),
+ STORE_INTERIOR(1, "闂ㄥ簵鍐呴儴鐓х墖"),
+ ORDER_DEPOSIT(2, "璁㈠崟瀵勫瓨鍥剧墖"),
+ ORDER_TAKE(3, "璁㈠崟鍙栦欢鍥剧墖"),
+ DRIVER_TAKE(4, "鍙告満鍙栦欢鍥剧墖"),
+ DRIVER_DONE(5, "鍙告満瀹屾垚鍥剧墖"),
+ DRIVER_CAR(6, "鍙告満瀹炲悕璁よ瘉杞﹁締鐓х墖"),
+ DRIVER_LICENSE(7, "鍙告満瀹炲悕璁よ瘉椹鹃┒璇佺収鐗�"),
+ DRIVER_OTHER(8, "鍙告満瀹炲悕璁よ瘉鍏朵粬鍥剧墖"),
+ STORE_FRONT(9, "闂ㄥ簵闂ㄥご鐓�"),
+ SOCIAL_SECURITY(10, "绀句繚缂寸撼璇佹槑"),
+ LABOR_CONTRACT(11, "鏈夋晥鍔冲姩鍚堝悓"),
;
- private int key;
- private String name;
- private String info;
- private int navIndex;
-
- RevenueType(int key, String name, String info,int navIndex) {
- this.info = info;
- this.key = key;
- this.name = name;
- this.navIndex = navIndex;
- }
- public static RevenueType getObj(int index) {
- for (RevenueType c : RevenueType.values()) {
- if (c.getKey() == index) {
- return c;
- }
- }
- return null;
- }
- public static String getName(int index) {
- for (RevenueType c : RevenueType.values()) {
- if (c.getKey() == index) {
- return c.getName();
- }
- }
- return null;
- }
- public static String getInfo(int index) {
- for (RevenueType c : RevenueType.values()) {
- if (c.getKey() == index) {
- return c.getInfo();
- }
- }
- return null;
- }
- public static String getObjName(int index) {
- for (RevenueType c : RevenueType.values()) {
- if (c.getKey() == index) {
- return c.getName();
- }
- }
- return null;
- }
-
-
- }
-
-
-
-
- public enum OrdersLog {
- UPLOAD(0, "鍙戝崟鏂�-鍙戝竷璁㈠崟","{userName}鍙戝竷{param}",0),
- RECEIVE(1, "鎺ュ崟鏂�-宸叉姠鍗�","{userName}宸叉姠鍗�",1),
- UPD_ORDER(2, "鍙戝崟鏂�-淇敼璁㈠崟","{userName}淇敼浜嗙敤宸ユ椂闂�",0),
- UPD_DISAGREE(3, "鎺ュ崟鏂�-涓嶅悓鎰忎慨鏀�,璁㈠崟鍙栨秷","{userName}涓嶅悓鎰忎慨鏀癸紝璁㈠崟鍙栨秷",1),
- UPD_AGREE(4, "鎺ュ崟鏂�-鍚屾剰淇敼","{userName}鍚屾剰淇敼",1),
- AUTO(5, "绯荤粺-鑷姩娲惧崟","鏃犱汉鎺ュ崟宸茶嚜鍔ㄦ淳鍗曠粰{userName}",1),
- CANCEL(6, "鎺ュ崟鏂�-鍙栨秷鎺ュ崟","{userName}宸叉墜鍔ㄥ彇娑堟帴鍗�",1),
- BEGIN(7, "鍙戝崟鏂�-寮�濮嬩綔涓�","{userName}宸插紑濮嬩綔涓�",0),
- DONE(8, "鍙戝崟鏂�-瀹屾垚浣滀笟","{userName}宸茬‘璁ゅ畬鎴愪綔涓�",0),
- PAY(9, "鍙戝崟鏂�-瀹屾垚鏀粯","{userName}宸叉敮浠樿垂鐢�",0),
- COMMENT(10, "鍙戝崟鏂�-璇勪环瀹屾垚","{userName}瀹屾垚璇勪环",0),
- SYSTEM_CANCEL(11, "绯荤粺-璁㈠崟鍙栨秷","绯荤粺鍙栨秷",2),
- RELEASE_CANCEL(12, "鍙戝崟鏂�-璁㈠崟鍙栨秷","{userName}宸叉墜鍔ㄥ彇娑堣鍗�",0),
- AUTO_COMMENT(13, "绯荤粺-鑷姩璇勪环","瓒呭嚭7鏃ユ湭璇勪环锛岀郴缁熷凡鑷姩璇勪环",2),
- AUTO_AGREE(14, "绯荤粺-鑷姩鍚屾剰","鎺ュ崟鏂硅秴鏃舵湭澶勭悊锛屽凡鑷姩鍚屾剰",2),
-
- FEE_CONFIRM(15, "鎺ュ崟鏂�-纭璐圭敤","{userName}宸茬‘璁よ垂鐢�",1),
-
- ;
- // 鎴愬憳鍙橀噺
- private String name;
- private String info;
- private int key;
- private int userType;
-
- // 鏋勯�犳柟娉�
- OrdersLog(int key, String name,String info,int userType) {
- this.name = name;
- this.info = info;
- this.key = key;
- this.userType = userType;
- }
-
- // 鏅�氭柟娉�
- public static String getName(int index) {
- for (OrdersLog c : OrdersLog.values()) {
- if (c.getKey() == index) {
- return c.name;
- }
- }
- return null;
- }
- public static String getInfo(int index) {
- for (OrdersLog c : OrdersLog.values()) {
- if (c.getKey() == index) {
- return c.info;
- }
- }
- return null;
- }
-
- // get set 鏂规硶
- public String getName() {
- return name;
- }
-
- public void setName(String name) {
- this.name = name;
- }
-
- public int getKey() {
- return key;
- }
-
- public void setKey(int key) {
- this.key = key;
- }
-
- public int getUserType() {
- return userType;
- }
-
- public void setUserType(int key) {
- this.userType = userType;
- }
-
- public String getInfo() {
- return info;
- }
-
- public void setInfo(String info) {
- this.info = info;
- }
- }
-
-
- public enum workType {
- czg(0, "閲囨憳宸�"),
- fjg(1, "鍒嗘嫞宸�"),
- bzg(2, "鍖呰宸�"),
-
- ;
- // 鎴愬憳鍙橀噺
- private int key;
- private String name;
-
- // 鏋勯�犳柟娉�
- workType(int key, String name) {
- this.name = name;
- this.key = key;
- }
-
- // 鏅�氭柟娉�
- public static String getName(int index) {
- for (workType c : workType.values()) {
- if (c.getKey() == index) {
- return c.name;
- }
- }
- return null;
- }
- // get set 鏂规硶
- public String getName() {
- return name;
- }
-
- public void setName(String name) {
- this.name = name;
- }
-
- public int getKey() {
- return key;
- }
-
- public void setKey(int key) {
- this.key = key;
- }
-
- }
-
-
- public enum ordersStatus {
- waitPay(0, "寰呮敮浠�","寰呮敮浠�"),
- wait(1, "寰呮帴鍗�","寰呮帴鍗�"),
- accept(2, "宸叉帴鍗�","宸叉帴鍗�"),
- doing(3, "杩涜涓�","杩涜涓�"),
- done(4, "宸插畬鎴�","宸插畬鎴�"),
- feeconfirm(5, "寰呮敮浠�","寰呭彂鍗曟柟鏀粯"),//閲戦宸茬‘璁�
- cancel(99, "宸插彇娑�","宸插彇娑�"),
- ;
- // 鎴愬憳鍙橀噺
- private int key;
- private String name; //鎺ュ崟鏂规枃妗�
- private String info; //鍙戝崟鏂规枃妗�
- // 鏋勯�犳柟娉�
- ordersStatus(int key, String name,String info) {
- this.name = name;
- this.key = key;
- this.info = info;
- }
-
- // 鏅�氭柟娉�
- public static String getName(int index) {
- for (ordersStatus c : ordersStatus.values()) {
- if (c.getKey() == index) {
- return c.name;
- }
- }
- return null;
- }
-
- public static String getInfo(int index) {
- for (ordersStatus c : ordersStatus.values()) {
- if (c.getKey() == index) {
- return c.info;
- }
- }
- return null;
- }
- // get set 鏂规硶
- public String getName() {
- return name;
- }
-
- public void setName(String name) {
- this.name = name;
- }
-
- public int getKey() {
- return key;
- }
-
- public void setKey(int key) {
- this.key = key;
- }
-
- public String getInfo() {
- return info;
- }
-
- public void setInfo(String info) {
- this.info = info;
- }
-
- }
-
-
-
- public enum orderType {
- ygd(0, "鐢ㄥ伐鍗�"),
- hyd(1, "璐ц繍鍗�"),
- scd(2, "閫侀鍗�"),
-
- ;
- // 鎴愬憳鍙橀噺
- private int key;
- private String name;
-
- // 鏋勯�犳柟娉�
- orderType(int key, String name) {
- this.name = name;
- this.key = key;
- }
-
- // 鏅�氭柟娉�
- public static String getName(int index) {
- for (orderType c : orderType.values()) {
- if (c.getKey() == index) {
- return c.name;
- }
- }
- return null;
- }
- // get set 鏂规硶
- public String getName() {
- return name;
- }
-
- public void setName(String name) {
- this.name = name;
- }
-
- public int getKey() {
- return key;
- }
-
- public void setKey(int key) {
- this.key = key;
- }
-
- }
-
-
-
- public enum smsContent {
- accept(0, "SMS_491325122","鎮ㄧ殑{order}璁㈠崟宸茶鎺ュ崟锛佹椂闂达細{time1}-{time2}锛屽彲杩涘叆灏忕▼搴忚仈绯绘帴鍗曟柟銆�"),
- receiveCancel(1, "SMS_491055243","鎮ㄧ殑{order}璁㈠崟锛屾椂闂达細{time1}-{time2}锛屽凡琚帴鍗曟柟鍙栨秷锛岃鍗曞凡閲嶆柊杩涘叆鎺ュ崟澶у巺銆�"),
- platformCancel(2, "SMS_491375152","鎮ㄧ殑{order}璁㈠崟锛屾椂闂达細{time1}-{time2},宸茬敱骞冲彴鍙栨秷銆傚鏈夌枒闂鑱旂郴瀹㈡湇銆�"),
- agreeUpd(3, "SMS_491190259","鎺ュ崟鏂瑰凡鍚屾剰鎮ㄥ皢{order}鐨勮鍗曟椂闂翠慨鏀逛负{time1}鑷硔time2}銆�"),
- disAgreeUpd(4, "SMS_491085252","鎺ュ崟鏂瑰凡鎷掔粷鎮ㄥ皢{order}鐨勮鍗曟椂闂翠慨鏀逛负{time1}-{time2}銆傜郴缁熷凡閲嶆柊灏嗚鍗曟斁鍏ユ帴鍗曞ぇ鍘呫��"),
- orderUpd(5, "SMS_491010267","璇锋敞鎰忥紒鎮ㄦ壙鎺ョ殑{order}璁㈠崟锛屽鎴峰皢璁㈠崟鏃堕棿淇敼涓簕time1}-{time2}銆傝鍓嶅線纭鏄惁鎺ュ彈锛岃秴鏃朵笉澶勭悊灏嗚涓哄悓鎰忋��"),
- releaseCancel(6, "SMS_491150253","鎮ㄦ壙鎺ョ殑{order}璁㈠崟锛屾椂闂达細{time1}-{time2}锛屽凡琚彂鍗曟柟鍙栨秷銆傛偍鍙墠寰�鎺ュ崟澶у巺閲嶆柊鎺ュ崟銆�"),
- platformCancel2(7, "SMS_491420143","鎮ㄦ壙鎺ョ殑{order}璁㈠崟锛屾椂闂达細{time1}-{time2}锛屽凡鐢卞钩鍙板彇娑堛�傚鏈夌枒闂鑱旂郴瀹㈡湇銆�"),
- dispatch(8, "SMS_491180276","宸蹭负鎮ㄦ櫤鑳藉尮閰嶈鍗曘�傝鍗曠被鍨嬶細{order}锛屾椂闂达細{time1}-{time2}锛岃窛绂伙細{distance}锛岄璁¤垂鐢▄money}銆傝鍓嶅線纭銆�"),
- pay(9, "SMS_491180278","鎮ㄦ壙鎺ョ殑{order}璁㈠崟娆鹃」宸插埌璐︼紒鍒拌处閲戦锛歿money}銆傚彲鍦ㄥ皬绋嬪簭璐︽埛浣欓杩涜鏌ョ湅銆�"),
- authentication(10, "SMS_491055290","鎮ㄧ敵璇风殑{authentication}鐨剓order}璁よ瘉{status}銆傝鍦ㄥ皬绋嬪簭鏌ョ湅璇︽儏銆�"),
- ;
- // 鎴愬憳鍙橀噺
- private int key;
- private String code;
- private String name;
-
- // 鏋勯�犳柟娉�
- smsContent(int key,String code, String name) {
- this.name = name;
- this.code = code;
- this.key = key;
- }
-
- // 鏅�氭柟娉�
- public static Constants.smsContent getSmsContent(int index) {
- for (smsContent c : smsContent.values()) {
- if (c.getKey() == index) {
- return c;
- }
- }
- return null;
- }
- // get set 鏂规硶
- public String getName() {
- return name;
- }
-
- public void setName(String name) {
- this.name = name;
- }
-
- public String getCode() {
- return code;
- }
-
- public void setCode(String code) {
- this.code = code;
- }
-
- public int getKey() {
- return key;
- }
-
- public void setKey(int key) {
- this.key = key;
- }
-
- }
-
-
- public static String getOrderInfo(Orders orders){
- String orderTypeInfo = "鐢ㄥ伐鍗�";
- if(!Constants.equalsInteger(orders.getType(),Constants.ZERO)){
- orderTypeInfo = Constants.equalsInteger(orders.getType(),Constants.ONE)?"鐢ㄨ溅鍗�":"閫侀鍗�";
- }else{
- if(Constants.equalsInteger(orders.getWorkType(),Constants.ZERO)){
- orderTypeInfo = orderTypeInfo + "-閲囨憳宸�";
- }else{
- orderTypeInfo = orderTypeInfo + (Constants.equalsInteger(orders.getWorkType(),Constants.ONE)?"-鍒嗘嫞宸�":"-鍖呰宸�");
- }
- }
- return orderTypeInfo;
-
+ private final int key;
+ private final String name;
}
diff --git a/server/services/src/main/java/com/doumee/dao/business/AppVersionMapper.java b/server/services/src/main/java/com/doumee/dao/business/AppVersionMapper.java
new file mode 100644
index 0000000..2b3590f
--- /dev/null
+++ b/server/services/src/main/java/com/doumee/dao/business/AppVersionMapper.java
@@ -0,0 +1,13 @@
+package com.doumee.dao.business;
+
+import com.doumee.dao.business.model.AppVersion;
+import com.github.yulichang.base.MPJBaseMapper;
+
+/**
+ * APP鐗堟湰Mapper
+ * @author rk
+ * @date 2026/04/10
+ */
+public interface AppVersionMapper extends MPJBaseMapper<AppVersion> {
+
+}
diff --git a/server/services/src/main/java/com/doumee/dao/business/OrderLogMapper.java b/server/services/src/main/java/com/doumee/dao/business/OrderLogMapper.java
deleted file mode 100644
index f228021..0000000
--- a/server/services/src/main/java/com/doumee/dao/business/OrderLogMapper.java
+++ /dev/null
@@ -1,12 +0,0 @@
-package com.doumee.dao.business;
-
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import com.doumee.dao.business.model.OrderLog;
-
-/**
- * @author 姹熻箘韫�
- * @date 2025/07/09 12:00
- */
-public interface OrderLogMapper extends BaseMapper<OrderLog> {
-
-}
diff --git a/server/services/src/main/java/com/doumee/dao/business/OrdersDetailMapper.java b/server/services/src/main/java/com/doumee/dao/business/OrdersDetailMapper.java
new file mode 100644
index 0000000..2e8875f
--- /dev/null
+++ b/server/services/src/main/java/com/doumee/dao/business/OrdersDetailMapper.java
@@ -0,0 +1,13 @@
+package com.doumee.dao.business;
+
+import com.doumee.dao.business.model.OrdersDetail;
+import com.github.yulichang.base.MPJBaseMapper;
+
+/**
+ * 瀵勫瓨璁㈠崟鏄庣粏 Mapper
+ *
+ * @author rk
+ * @date 2026/04/10
+ */
+public interface OrdersDetailMapper extends MPJBaseMapper<OrdersDetail> {
+}
diff --git a/server/services/src/main/java/com/doumee/dao/business/OrdersMapper.java b/server/services/src/main/java/com/doumee/dao/business/OrdersMapper.java
index f9d3086..0fd5108 100644
--- a/server/services/src/main/java/com/doumee/dao/business/OrdersMapper.java
+++ b/server/services/src/main/java/com/doumee/dao/business/OrdersMapper.java
@@ -1,12 +1,12 @@
package com.doumee.dao.business;
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.doumee.dao.business.model.Orders;
import com.github.yulichang.base.MPJBaseMapper;
/**
- * @author 姹熻箘韫�
- * @date 2025/07/09 12:00
+ * 瀵勫瓨璁㈠崟淇℃伅Mapper
+ * @author rk
+ * @date 2026/04/10
*/
public interface OrdersMapper extends MPJBaseMapper<Orders> {
diff --git a/server/services/src/main/java/com/doumee/dao/business/RevenueMapper.java b/server/services/src/main/java/com/doumee/dao/business/RevenueMapper.java
new file mode 100644
index 0000000..36d0d30
--- /dev/null
+++ b/server/services/src/main/java/com/doumee/dao/business/RevenueMapper.java
@@ -0,0 +1,13 @@
+package com.doumee.dao.business;
+
+import com.doumee.dao.business.model.Revenue;
+import com.github.yulichang.base.MPJBaseMapper;
+
+/**
+ * 鏀舵敮璁板綍Mapper
+ * @author rk
+ * @date 2026/04/10
+ */
+public interface RevenueMapper extends MPJBaseMapper<Revenue> {
+
+}
diff --git a/server/services/src/main/java/com/doumee/dao/business/WithdrawalOrdersMapper.java b/server/services/src/main/java/com/doumee/dao/business/WithdrawalOrdersMapper.java
index b3df52e..a481b8b 100644
--- a/server/services/src/main/java/com/doumee/dao/business/WithdrawalOrdersMapper.java
+++ b/server/services/src/main/java/com/doumee/dao/business/WithdrawalOrdersMapper.java
@@ -1,12 +1,12 @@
package com.doumee.dao.business;
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.doumee.dao.business.model.WithdrawalOrders;
+import com.github.yulichang.base.MPJBaseMapper;
/**
- * @author 姹熻箘韫�
- * @date 2025/07/09 12:00
+ * 鎻愮幇鐢宠璁板綍Mapper
+ * @author rk
+ * @date 2026/04/10
*/
-public interface WithdrawalOrdersMapper extends BaseMapper<WithdrawalOrders> {
-
+public interface WithdrawalOrdersMapper extends MPJBaseMapper<WithdrawalOrders> {
}
diff --git a/server/services/src/main/java/com/doumee/dao/business/model/AppVersion.java b/server/services/src/main/java/com/doumee/dao/business/model/AppVersion.java
new file mode 100644
index 0000000..ff34807
--- /dev/null
+++ b/server/services/src/main/java/com/doumee/dao/business/model/AppVersion.java
@@ -0,0 +1,94 @@
+package com.doumee.dao.business.model;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.doumee.core.annotation.excel.ExcelColumn;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.util.Date;
+
+/**
+ * APP鐗堟湰
+ * @author rk
+ * @date 2026/04/10
+ */
+@Data
+@ApiModel("APP鐗堟湰")
+@TableName("`app_version`")
+public class AppVersion {
+
+ @TableId(type = IdType.AUTO)
+ @ApiModelProperty(value = "涓婚敭", example = "1")
+ @ExcelColumn(name = "涓婚敭")
+ private Integer id;
+
+ @ApiModelProperty(value = "鏄惁宸插垹闄� 0鏈垹闄� 1宸插垹闄�", example = "0")
+ @ExcelColumn(name = "鏄惁宸插垹闄�")
+ private Integer deleted;
+
+ @ApiModelProperty(value = "鍒涘缓浜虹紪鐮�", example = "1")
+ @ExcelColumn(name = "鍒涘缓浜虹紪鐮�")
+ private Integer createUser;
+
+ @ApiModelProperty(value = "鍒涘缓鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ @ExcelColumn(name = "鍒涘缓鏃堕棿", width = 16, dateFormat = "yyyy-MM-dd HH:mm:ss")
+ private Date createTime;
+
+ @ApiModelProperty(value = "鏇存柊浜虹紪鐮�", example = "1")
+ @ExcelColumn(name = "鏇存柊浜虹紪鐮�")
+ private Integer updateUser;
+
+ @ApiModelProperty(value = "鏇存柊鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ private Date updateTime;
+
+ @ApiModelProperty(value = "澶囨敞")
+ @ExcelColumn(name = "澶囨敞")
+ private String remark;
+
+ @ApiModelProperty(value = "鐗堟湰鍙峰悕绉�")
+ @ExcelColumn(name = "鐗堟湰鍙峰悕绉�")
+ private String versionInfo;
+
+ @ApiModelProperty(value = "瀹夎鍖呰矾寰�")
+ @ExcelColumn(name = "瀹夎鍖呰矾寰�")
+ private String fileUrl;
+
+ @ApiModelProperty(value = "瀹夎鐗堝悕绉�")
+ @ExcelColumn(name = "瀹夎鐗堝悕绉�")
+ private String name;
+
+ @ApiModelProperty(value = "鏇存柊鎻忚堪")
+ @ExcelColumn(name = "鏇存柊鎻忚堪")
+ private String content;
+
+ @ApiModelProperty(value = "鎺掑簭鐮�")
+ @ExcelColumn(name = "鎺掑簭鐮�")
+ private Integer sortnum;
+
+ @ApiModelProperty(value = "鏇存柊鏍囬")
+ @ExcelColumn(name = "鏇存柊鏍囬")
+ private String title;
+
+ @ApiModelProperty(value = "鏄惁寮哄埗鏇存柊 0鍚� 1鏄�", example = "0")
+ @ExcelColumn(name = "鏄惁寮哄埗鏇存柊", valueMapping = "0=鍚�;1=鏄�;")
+ private Integer isForce;
+
+ @ApiModelProperty(value = "骞冲彴绫诲瀷 0=Android 1=IOS", example = "0")
+ @ExcelColumn(name = "骞冲彴绫诲瀷", valueMapping = "0=Android;1=IOS;")
+ private Integer type;
+
+ @ApiModelProperty(value = "鏂囦欢澶у皬 鍗曚綅锛圞B锛�")
+ @ExcelColumn(name = "鏂囦欢澶у皬(KB)")
+ private Long fileSize;
+
+ @ApiModelProperty(value = "鐗堟湰鍙�")
+ @ExcelColumn(name = "鐗堟湰鍙�")
+ private Integer versionNum;
+
+}
diff --git a/server/services/src/main/java/com/doumee/dao/business/model/Category.java b/server/services/src/main/java/com/doumee/dao/business/model/Category.java
index ffbc6d3..62bdcfd 100644
--- a/server/services/src/main/java/com/doumee/dao/business/model/Category.java
+++ b/server/services/src/main/java/com/doumee/dao/business/model/Category.java
@@ -67,12 +67,12 @@
@ExcelColumn(name="绫诲瀷:1=杞﹁締绫诲瀷;2=鐗╁搧鍒嗙被;3=鐗╁搧绛夌骇;4=鐗╁搧灏哄;")
private Integer type;
- @ApiModelProperty(value = "鍐呭 锛坱ype=1锛氶�氳鏂瑰紡; type=2锛氬徃鏈鸿瘎绾э級;")
+ @ApiModelProperty(value = "鍐呭 锛坱ype=1锛氶�氳鏂瑰紡 鏈哄姩杞� = driving 闈炴満鍔ㄨ溅 = bicycling ; type=2=瀵勫瓨璇存槑 锛� type=3锛氬徃鏈鸿瘎绾э紱type=4:鏄惁鐗瑰ぇ灏哄 0=鍚︼紱1=鏄紱锛�;")
@ExcelColumn(name="鍐呭")
private String detail;
- @ApiModelProperty(value = "鍥炬爣锛堣溅杈嗙被鍨嬩娇鐢級")
- @ExcelColumn(name="鍥炬爣锛堣溅杈嗙被鍨嬩娇鐢級")
+ @ApiModelProperty(value = "鍥炬爣锛堢墿鍝佸昂瀵镐娇鐢級")
+ @ExcelColumn(name="鍥炬爣锛堢墿鍝佸昂瀵镐娇鐢級")
private String icon;
@ApiModelProperty(value = "鎺掑簭鐮侊紙鍗囧簭锛�")
@@ -83,18 +83,17 @@
@ExcelColumn(name="鍐呭")
private String otherField;
- @ApiModelProperty(value = "鏄惁鍥哄畾杞﹁締", example = "1")
- @ExcelColumn(name="鏄惁鍥哄畾杞﹁締")
- private Integer isFixed; // 寮冪敤
+
+ @ApiModelProperty(value = "鑷叧鑱斾富閿細鐗╁搧鍒嗙被浣跨敤 鍏宠仈鐗╁搧绛夌骇", example = "1")
+ @ExcelColumn(name="鑷叧鑱斾富閿�")
+ private Integer relationId; // 寮冪敤
- @ApiModelProperty(value = "鏄惁鍥哄畾杞﹁締锛堣溅杈嗙被鍨嬩娇鐢級:0=鍚︼紱1=鏄紱", example = "1")
+
+ @ApiModelProperty(value = "淇敼浜�", example = "1")
@TableField(exist = false)
private String updateUserName;
- @ApiModelProperty(value = "椁愭爣绛夐厤缃」闆嗗悎", example = "1")
- @TableField(exist = false)
- private JSONArray detailList;
@ApiModelProperty(value = "鍥炬爣鍏ㄨ矾寰�")
@TableField(exist = false)
diff --git a/server/services/src/main/java/com/doumee/dao/business/model/Multifile.java b/server/services/src/main/java/com/doumee/dao/business/model/Multifile.java
index 11bc06d..8ff48b7 100644
--- a/server/services/src/main/java/com/doumee/dao/business/model/Multifile.java
+++ b/server/services/src/main/java/com/doumee/dao/business/model/Multifile.java
@@ -53,7 +53,8 @@
@ApiModelProperty(value = "绫诲瀷0鍥剧墖 1瑙嗛 2鍏朵粬", example = "1")
private Integer type;
- @ApiModelProperty(value = "鍏宠仈瀵硅薄绫诲瀷锛�0=闂ㄥ簵鍏朵粬鏉愭枡锛�1=闂ㄥ簵鍐呴儴鐓х墖锛�2=璁㈠崟瀵勫瓨鍥剧墖锛�3=璁㈠崟鍙栦欢鍥剧墖锛�4=鍙告満鍙栦欢鍥剧墖锛�5=鍙告満瀹屾垚鍥剧墖锛�6=鍙告満瀹炲悕璁よ瘉杞﹁締鐓х墖锛�7=鍙告満瀹炲悕璁よ瘉椹鹃┒璇佺収鐗囷紱8=鍙告満瀹炲悕璁よ瘉鍏朵粬鍥剧墖锛�" +
+ @ApiModelProperty(value = "鍏宠仈瀵硅薄绫诲瀷锛�0=闂ㄥ簵鍏朵粬鏉愭枡锛�1=闂ㄥ簵鍐呴儴鐓х墖锛�2=璁㈠崟瀵勫瓨鍥剧墖锛�3=璁㈠崟鍙栦欢鍥剧墖锛�4=鍙告満鍙栦欢鍥剧墖锛�5=鍙告満瀹屾垚鍥剧墖锛�6=鍙告満瀹炲悕璁よ瘉杞﹁締鐓х墖锛�" +
+ "7=鍙告満瀹炲悕璁よ瘉椹鹃┒璇佺収鐗囷紱8=鍙告満瀹炲悕璁よ瘉鍏朵粬鍥剧墖锛�" +
"9=闂ㄥ簵闂ㄥご鐓э紱10=绀句繚缂寸撼璇佹槑锛�11=鏈夋晥鍔冲姩鍚堝悓锛�", example = "1")
private Integer objType;
diff --git a/server/services/src/main/java/com/doumee/dao/business/model/OrderLog.java b/server/services/src/main/java/com/doumee/dao/business/model/OrderLog.java
deleted file mode 100644
index 23af747..0000000
--- a/server/services/src/main/java/com/doumee/dao/business/model/OrderLog.java
+++ /dev/null
@@ -1,89 +0,0 @@
-package com.doumee.dao.business.model;
-
-import com.doumee.core.annotation.excel.ExcelColumn;
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
-import com.baomidou.mybatisplus.annotation.IdType;
-import com.baomidou.mybatisplus.annotation.TableId;
-import com.baomidou.mybatisplus.annotation.TableName;
-import lombok.Data;
-import com.fasterxml.jackson.annotation.JsonFormat;
-import java.util.Date;
-
-/**
- * 璁㈠崟鎿嶄綔鏃ュ織
- * @author 姹熻箘韫�
- * @date 2025/07/09 12:00
- */
-@Data
-@ApiModel("璁㈠崟鎿嶄綔鏃ュ織")
-@TableName("`order_log`")
-public class OrderLog {
-
- @TableId(type = IdType.AUTO)
- @ApiModelProperty(value = "涓婚敭", example = "1")
- @ExcelColumn(name="涓婚敭")
- private Integer id;
-
- @ApiModelProperty(value = "鏄惁宸插垹闄� 0鏈垹闄� 1宸插垹闄�", example = "1")
- @ExcelColumn(name="鏄惁宸插垹闄� 0鏈垹闄� 1宸插垹闄�")
- private Integer deleted;
-
- @ApiModelProperty(value = "鍒涘缓浜虹紪鐮�", example = "1")
- @ExcelColumn(name="鍒涘缓浜虹紪鐮�")
- private Integer createUser;
-
- @ApiModelProperty(value = "鍒涘缓鏃堕棿")
- @ExcelColumn(name="鍒涘缓鏃堕棿")
- private Date createTime;
-
- @ApiModelProperty(value = "鏇存柊浜虹紪鐮�", example = "1")
- @ExcelColumn(name="鏇存柊浜虹紪鐮�")
- private Integer updateUser;
-
- @ApiModelProperty(value = "鏇存柊鏃堕棿")
- @ExcelColumn(name="鏇存柊鏃堕棿")
- private Date updateTime;
-
- @ApiModelProperty(value = "澶囨敞")
- @ExcelColumn(name="澶囨敞")
- private String remark;
-
- @ApiModelProperty(value = "璁㈠崟涓婚敭锛坥rders锛�", example = "1")
- @ExcelColumn(name="璁㈠崟涓婚敭锛坥rders锛�")
- private Integer orderId;
-
- @ApiModelProperty(value = "鏍囬")
- @ExcelColumn(name="鏍囬")
- private String title;
-
- @ApiModelProperty(value = "鏃ュ織鍐呭")
- @ExcelColumn(name="鏃ュ織鍐呭")
- private String logInfo;
-
- @ApiModelProperty(value = "鎿嶄綔绫诲瀷", example = "1")
- @ExcelColumn(name="鎿嶄綔绫诲瀷")
- private Integer objType;
-
- @ApiModelProperty(value = "鎿嶄綔浜�", example = "1")
- @ExcelColumn(name="鎿嶄綔浜�")
- private Integer memberId;
-
- @ApiModelProperty(value = "鎿嶄綔鍓嶆暟鎹�")
- @ExcelColumn(name="鎿嶄綔鍓嶆暟鎹�")
- private String beforeInfo;
-
- @ApiModelProperty(value = "鎿嶄綔鍚庢暟鎹�")
- @ExcelColumn(name="鎿嶄綔鍚庢暟鎹�")
- private String afterInfo;
-
- @ApiModelProperty(value = "璁㈠崟鐘舵��:0=寰呮帴鍗曪紱1=宸叉帴鍗曪紱2=杩涜涓紱3=宸插畬鎴愶紱99=宸插彇娑堬紱", example = "1")
- @ExcelColumn(name="璁㈠崟鐘舵��:0=寰呮帴鍗曪紱1=宸叉帴鍗曪紱2=杩涜涓紱3=宸插畬鎴愶紱99=宸插彇娑堬紱")
- private Integer orderStatus;
-
-
-
- @ApiModelProperty(value = "鎿嶄綔浜虹被鍨嬶細0=鍙戝崟鏂�;1=鎺ュ崟鏂�;2=绯荤粺;", example = "1")
- @ExcelColumn(name="鎿嶄綔浜虹被鍨嬶細0=鍙戝崟鏂�;1=鎺ュ崟鏂�;2=绯荤粺;")
- private Integer optUserType;
-}
diff --git a/server/services/src/main/java/com/doumee/dao/business/model/Orders.java b/server/services/src/main/java/com/doumee/dao/business/model/Orders.java
index d0d91e4..f4a690c 100644
--- a/server/services/src/main/java/com/doumee/dao/business/model/Orders.java
+++ b/server/services/src/main/java/com/doumee/dao/business/model/Orders.java
@@ -1,402 +1,350 @@
package com.doumee.dao.business.model;
-import com.baomidou.mybatisplus.annotation.TableField;
-import com.doumee.core.annotation.excel.ExcelColumn;
-import com.doumee.dao.dto.CateringDTO;
-import com.doumee.dao.dto.WayInfoDTO;
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
-import io.swagger.v3.oas.annotations.media.Schema;
-import lombok.Data;
+import com.doumee.core.annotation.excel.ExcelColumn;
import com.fasterxml.jackson.annotation.JsonFormat;
-import java.util.Date;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
import java.math.BigDecimal;
-import java.util.List;
+import java.util.Date;
/**
- * 璁㈠崟淇℃伅璁板綍
- * @author 姹熻箘韫�
- * @date 2025/07/09 12:00
+ * 瀵勫瓨璁㈠崟淇℃伅
+ * @author rk
+ * @date 2026/04/10
*/
@Data
-@ApiModel("璁㈠崟淇℃伅璁板綍")
+@ApiModel("瀵勫瓨璁㈠崟淇℃伅")
@TableName("`orders`")
public class Orders {
@TableId(type = IdType.AUTO)
@ApiModelProperty(value = "涓婚敭", example = "1")
+ @ExcelColumn(name = "涓婚敭")
private Integer id;
- @ApiModelProperty(value = "鏄惁宸插垹闄� 0鏈垹闄� 1宸插垹闄�", example = "1")
+ @ApiModelProperty(value = "鏄惁宸插垹闄� 0鏈垹闄� 1宸插垹闄�", example = "0")
+ @ExcelColumn(name = "鏄惁宸插垹闄�")
private Integer deleted;
@ApiModelProperty(value = "鍒涘缓浜虹紪鐮�", example = "1")
+ @ExcelColumn(name = "鍒涘缓浜虹紪鐮�")
private Integer createUser;
@ApiModelProperty(value = "鍒涘缓鏃堕棿")
- @ExcelColumn(name = "鍙戝竷鏃堕棿",index = 8,width = 16,dateFormat = "yyyy-MM-dd HH:mm:ss")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ @ExcelColumn(name = "鍒涘缓鏃堕棿", width = 16, dateFormat = "yyyy-MM-dd HH:mm:ss")
private Date createTime;
@ApiModelProperty(value = "鏇存柊浜虹紪鐮�", example = "1")
+ @ExcelColumn(name = "鏇存柊浜虹紪鐮�")
private Integer updateUser;
@ApiModelProperty(value = "鏇存柊鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date updateTime;
@ApiModelProperty(value = "澶囨敞")
+ @ExcelColumn(name = "澶囨敞")
private String remark;
- @ApiModelProperty(value = "鍙戝崟鏂�", example = "1")
- private Integer releaseMemberId;
+ @ApiModelProperty(value = "浼氬憳涓婚敭", example = "1")
+ @ExcelColumn(name = "浼氬憳涓婚敭")
+ private Integer memberId;
- @ApiModelProperty(value = "绫诲瀷:0=鐢ㄥ伐锛�1=杩愯揣锛�2=璁㈤", example = "1")
- @ExcelColumn(name = "璁㈠崟绫诲瀷",valueMapping = "0=鐢ㄥ伐鍗�;1=璐ц繍鍗�;2=璁㈤鍗�;",index = 2,width = 10)
+ @ApiModelProperty(value = "瀵勫瓨鏂瑰紡:0=灏卞湴瀛樺彇锛�1=寮傚湴瀛樺彇", example = "0")
+ @ExcelColumn(name = "瀵勫瓨鏂瑰紡", valueMapping = "0=灏卞湴瀛樺彇;1=寮傚湴瀛樺彇;")
private Integer type;
- @ApiModelProperty(value = "寮�濮嬫椂闂� yyyy-MM-dd")
- @JsonFormat(pattern = "yyyy-MM-dd")
- private Date startDate;
+ @ApiModelProperty(value = "鏄惁蹇呴』鏈汉绛炬敹锛�0=鍚︼紱1=鏄�", example = "0")
+ @ExcelColumn(name = "鏈汉绛炬敹", valueMapping = "0=鍚�;1=鏄�;")
+ private Integer selfTake;
- @ApiModelProperty(value = "缁撴潫鏃堕棿 yyyy-MM-dd")
- @JsonFormat(pattern = "yyyy-MM-dd")
- private Date endDate;
-
- @ApiModelProperty(value = "鍦扮偣淇℃伅/鐢ㄨ溅璧风偣/鐢ㄩ鍦扮偣")
- private String location;
-
- @ApiModelProperty(value = "鍦扮偣鎻忚堪")
- private String locationRemark;
-
- @ApiModelProperty(value = "缁忓害", example = "1")
- private BigDecimal lat;
-
- @ApiModelProperty(value = "鐪佷唤")
- private String province;
-
- @ApiModelProperty(value = "鍩庡競")
- private String city;
-
- @ApiModelProperty(value = "鍖哄幙")
- private String area;
-
- @ApiModelProperty(value = "绾害", example = "1")
- private BigDecimal lgt;
-
- @ApiModelProperty(value = "闇�姹傜被鍨嬶紙杩愯揣/鐢ㄥ伐)锛氬叧鑱� category", example = "1")
- private Integer categoryId;
-
- @ApiModelProperty(value = "鐢ㄥ伐绫诲瀷:0=閲囨憳宸ワ紱1=鍒嗘嫞宸ワ紱2=鍖呰宸ワ紱锛堢敤宸ヨ鍗曪級", example = "1")
- private Integer workType;
-
- @ApiModelProperty(value = "璁′环鏁伴噺1((閲嶉噺/浜烘暟/锛堝ぉ鏁�/灏忔椂/閲嶉噺锛�/锛堝ぉ鏁�/娆℃暟锛�/鐢ㄩ澶╂暟)", example = "1")
- private Integer priceNum1;
-
- @ApiModelProperty(value = "璁′环鏁伴噺2(鍒嗘嫞宸�/鍖呰宸� 浜烘暟)", example = "1")
- private Integer priceNum2;
-
- @ApiModelProperty(value = "锛堝彂鍗曟柟璁剧疆锛夎浠锋暟閲�1((閲嶉噺/浜烘暟/锛堝ぉ鏁�/灏忔椂/閲嶉噺锛�/锛堝ぉ鏁�/娆℃暟锛�/鐢ㄩ澶╂暟)", example = "1")
- private Integer originPriceNum1;
-
- @ApiModelProperty(value = "锛堝彂鍗曟柟璁剧疆锛夎浠锋暟閲�2(鍒嗘嫞宸�/鍖呰宸� 浜烘暟)", example = "1")
- private Integer originPriceNum2;
-
- @ApiModelProperty(value = "闇�姹傝ˉ鍏�")
- private String supplement;
-
- @ApiModelProperty(value = "璐圭敤鏍囧噯", example = "1")
- private BigDecimal price;
-
- @ApiModelProperty(value = "棰勪及璐圭敤", example = "1")
- private Long estimatedAccount;
- @ApiModelProperty(value = "鎺ュ崟鏂圭‘璁ゅ叾浠栬垂鐢紙鍒嗭級", example = "1")
- private Long confirmOtherFee;
- @ApiModelProperty(value = "鎺ュ崟鏂圭‘璁よ垂鐢ㄥ娉�", example = "1")
- private String confirmFeeRemark;
-
- @ApiModelProperty(value = "(鍙戝崟鏂硅缃級棰勪及璐圭敤", example = "1")
- private Long originEstimatedAccount;
-
- @ApiModelProperty(value = "瀹為檯鏀粯璐圭敤", example = "1")
- private Long payAccount;
-
- @ApiModelProperty(value = "瀹炴敹璐圭敤", example = "1")
- private Long receiveAccount;
-
- @ApiModelProperty(value = "鐢ㄨ溅绫诲瀷(鐢ㄥ伐鍖呰/杩愯揣浣跨敤):0=澶�;1=娆�/灏忔椂;2=閲嶉噺", example = "1")
- private Integer carType;
-
- @ApiModelProperty(value = "杩愯緭鍝佺(杩愯揣浣跨敤) 鍏宠仈category琛�", example = "1")
- private Integer transportTypeId;
-
- @ApiModelProperty(value = "杩愯緭閲嶉噺/鏁伴噺", example = "1")
- private Integer transportNum;
-
- @ApiModelProperty(value = "杩愯緭鍗曚綅(涓�/鏂�)")
- private String transportUnit;
-
- @ApiModelProperty(value = "鐢ㄨ溅缁堢偣鍦板潃")
- private String locationEnd;
-
- @ApiModelProperty(value = "鐢ㄨ溅缁堢偣缁忓害")
- private String latEnd;
-
- @ApiModelProperty(value = "鐢ㄨ溅缁堢偣绾害")
- private String lgtEnd;
-
- @ApiModelProperty(value = "閫旂粡鐐�/椁愭爣淇℃伅")
- private String wayInfo;
-
- @ApiModelProperty(value = "璁㈠崟缂栧彿")
- @ExcelColumn(name = "璁㈠崟缂栧彿",index = 1,width = 10)
- private String code;
-
- @ApiModelProperty(value = "璁㈠崟鐘舵��:0=寰呮敮浠� 1=寰呮帴鍗曪紱2=宸叉帴鍗曪紱3=杩涜涓紱4=宸插畬鎴愶紱5=宸茬‘璁ら噾棰濓紱99=宸插彇娑堬紱", example = "1")
- @ExcelColumn(name = "璁㈠崟鐘舵��",index = 11,width = 10,valueMapping = "0=寰呮敮浠�;1=寰呮帴鍗�;2=宸叉帴鍗�;3=杩涜涓�;4=宸插畬鎴�;5=寰呮敮浠�;99=宸插彇娑�;")
+ @ApiModelProperty(value = "璁㈠崟鐘舵��", example = "0")
+ @ExcelColumn(name = "璁㈠崟鐘舵��", valueMapping = "0=寰呮敮浠�;1=寰呭瘎瀛�;2=宸插瘎瀛�;3=寰呭彇浠�;6=瀛樺湪閫炬湡;7=宸插畬鎴�;98=宸叉寕璧�;99=宸插彇娑�;")
private Integer status;
- @ApiModelProperty(value = "鏀粯鐘舵��:0=寰呮敮浠� 1=宸叉敮浠�", example = "1")
- private Integer payStatus;
+ @ApiModelProperty(value = "鏄惁寮傚父璁㈠崟锛�0=鍚︼紱1=鏄�", example = "0")
+ @ExcelColumn(name = "寮傚父璁㈠崟", valueMapping = "0=鍚�;1=鏄�;")
+ private Integer exceptionStatus;
+
+ @ApiModelProperty(value = "鍏宠仈涓昏鍗�")
+ @ExcelColumn(name = "鍏宠仈涓昏鍗�")
+ private Integer relationOrderId;
+
+ @ApiModelProperty(value = "寮傚父鍘熷洜")
+ @ExcelColumn(name = "寮傚父鍘熷洜")
+ private String exceptionInfo;
+
+ @ApiModelProperty(value = "鎵�灞炲煄甯傦紙areas:id锛�")
+ @ExcelColumn(name = "鎵�灞炲煄甯�")
+ private String cityId;
+
+ @ApiModelProperty(value = "瀛樹欢搴楅摵锛坰hop_info:id锛�", example = "1")
+ @ExcelColumn(name = "瀛樹欢搴楅摵")
+ private Integer depositShopId;
+
+ @ApiModelProperty(value = "棰勮鍒板簵瀛樹欢鏃堕棿璧�")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ private Date arriveStartTime;
+
+ @ApiModelProperty(value = "棰勮鍒板簵瀛樹欢鏃堕棿姝�")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ private Date arriveEndTime;
+
+ @ApiModelProperty(value = "瀛樹欢鍦扮偣")
+ @ExcelColumn(name = "瀛樹欢鍦扮偣")
+ private String depositLocation;
+
+ @ApiModelProperty(value = "瀛樹欢鍦扮偣鎻忚堪")
+ @ExcelColumn(name = "瀛樹欢鍦扮偣鎻忚堪")
+ private String depositLocationReamrk;
+
+ @ApiModelProperty(value = "瀛樹欢鐐圭粡搴�")
+ private BigDecimal depositLat;
+
+ @ApiModelProperty(value = "瀛樹欢鐐圭含搴�")
+ private BigDecimal depositLgt;
+
+ @ApiModelProperty(value = "鍙栦欢搴楅摵锛坰hop_info:id锛�", example = "1")
+ @ExcelColumn(name = "鍙栦欢搴楅摵")
+ private Integer takeShopId;
+
+ @ApiModelProperty(value = "鍙栦欢鍦扮偣")
+ @ExcelColumn(name = "鍙栦欢鍦扮偣")
+ private String takeLocation;
+
+ @ApiModelProperty(value = "鍙栦欢鍦扮偣璇︾粏鍦板潃")
+ @ExcelColumn(name = "鍙栦欢鍦扮偣璇︾粏鍦板潃")
+ private String takeLocationReamrk;
+
+ @ApiModelProperty(value = "鍙栦欢缁忓害")
+ private BigDecimal takeLat;
+
+ @ApiModelProperty(value = "鍙栦欢绾害")
+ private BigDecimal takeLgt;
+
+ @ApiModelProperty(value = "璺濈锛堝紓鍦板瓨鍙栦娇鐢級")
+ @ExcelColumn(name = "璺濈")
+ private BigDecimal distance;
+
+ @ApiModelProperty(value = "瀵勫瓨鏃堕棿锛堝瘎瀛樺紑濮嬭璐规椂闂达級")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ @ExcelColumn(name = "瀵勫瓨鏃堕棿", width = 16, dateFormat = "yyyy-MM-dd HH:mm:ss")
+ private Date depositTime;
@ApiModelProperty(value = "鎺ュ崟鏃堕棿")
- @ExcelColumn(name = "鎺ュ崟鏃堕棿",index = 9,width = 16,dateFormat = "yyyy-MM-dd HH:mm:ss")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date acceptTime;
- @ApiModelProperty(value = "鎺ュ崟浜�", example = "1")
- private Integer acceptMemberId;
+ @ApiModelProperty(value = "鎺ュ崟浜�")
+ @ExcelColumn(name = "鎺ュ崟浜�")
+ private Integer acceptDriver;
- @ApiModelProperty(value = "鎺ュ崟绫诲瀷:0=鎵嬪姩鎺ュ崟锛�1=绯荤粺娲惧崟锛�", example = "1")
- @ExcelColumn(name = "鎺ュ崟鏂瑰紡",index = 14,width = 10,valueMapping = "0=鎵嬪姩鎺ュ崟;1=绯荤粺娲惧崟;")
+ @ApiModelProperty(value = "鎺ュ崟绫诲瀷:0=鎵嬪姩鎺ュ崟锛�1=绯荤粺娲惧崟", example = "0")
+ @ExcelColumn(name = "鎺ュ崟绫诲瀷", valueMapping = "0=鎵嬪姩鎺ュ崟;1=绯荤粺娲惧崟;")
private Integer acceptType;
- @ApiModelProperty(value = "寮�濮嬩綔涓氭椂闂�")
- private Date workStartTime;
+ @ApiModelProperty(value = "鍙栦欢鏃堕棿锛堝瘎瀛樼粨鏉熻璐规椂闂达級")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ private Date takeTime;
- @ApiModelProperty(value = "瀹屾垚鏃堕棿")
- @ExcelColumn(name = "瀹屾垚鏃堕棿",index = 10,width = 16,dateFormat = "yyyy-MM-dd HH:mm:ss")
+ @ApiModelProperty(value = "鍙告満鍙栦欢鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ private Date driverTakeTime;
+
+ @ApiModelProperty(value = "鍙告満寮�濮嬫淳閫佹椂闂�")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ private Date sendTime;
+
+ @ApiModelProperty(value = "琛屾潕杞Щ鍒板簵鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ private Date arriveTime;
+
+ @ApiModelProperty(value = "瀹屾垚璁㈠崟鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date finishTime;
- @ApiModelProperty(value = "骞冲彴鎻愭垚姣斾緥", example = "1")
- private BigDecimal platformRata;
+ @ApiModelProperty(value = "纭浼氬憳鍒板簵鍙栦欢鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ private Date confirmArriveTime;
+
+ @ApiModelProperty(value = "鎸傝捣鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ private Date suspendTime;
+
+ @ApiModelProperty(value = "鍙栦欢浜烘墜鏈哄彿")
+ @ExcelColumn(name = "鍙栦欢浜烘墜鏈哄彿")
+ private String takePhone;
+
+ @ApiModelProperty(value = "鍙栦欢浜哄悕绉�")
+ @ExcelColumn(name = "鍙栦欢浜哄悕绉�")
+ private String takeUser;
+
+ @ApiModelProperty(value = "鍟嗗搧绫诲瀷锛坈ategory锛�")
+ @ExcelColumn(name = "鍟嗗搧绫诲瀷")
+ private Integer goodType;
+
+ @ApiModelProperty(value = "琛ュ厖淇℃伅")
+ @ExcelColumn(name = "琛ュ厖淇℃伅")
+ private String supplement;
+
+ @ApiModelProperty(value = "棰勮瀛樻斁澶╂暟 榛樿1澶�", example = "1")
+ @ExcelColumn(name = "棰勮瀛樻斁澶╂暟")
+ private Integer estimatedDepositDays;
+
+ @ApiModelProperty(value = "瀹為檯瀛樻斁澶╂暟")
+ @ExcelColumn(name = "瀹為檯瀛樻斁澶╂暟")
+ private Integer depositDays;
+
+ @ApiModelProperty(value = "棰勪及璐圭敤锛堝垎锛�")
+ @ExcelColumn(name = "棰勪及璐圭敤")
+ private Long estimatedAmount;
+
+ @ApiModelProperty(value = "鍩虹璐圭敤/鍗曚环锛堝垎锛�")
+ @ExcelColumn(name = "鍩虹璐圭敤")
+ private Long price;
+
+ @ApiModelProperty(value = "鍔犳�ョ郴鏁�")
+ private BigDecimal urgentRata;
+
+ @ApiModelProperty(value = "鏄惁鍔犳�ワ細0=鍚︼紱1=鏄�", example = "0")
+ @ExcelColumn(name = "鏄惁鍔犳��", valueMapping = "0=鍚�;1=鏄�;")
+ private Integer isUrgent;
+
+ @ApiModelProperty(value = "淇濅环閲戦锛堝垎锛�")
+ @ExcelColumn(name = "淇濅环閲戦")
+ private Long declaredAmount;
+
+ @ApiModelProperty(value = "淇濅环淇濊垂锛堝垎锛�")
+ @ExcelColumn(name = "淇濅环淇濊垂")
+ private Long declaredFee;
+
+ @ApiModelProperty(value = "鍔犳�ヨ垂鐢紙鍒嗭級")
+ @ExcelColumn(name = "鍔犳�ヨ垂鐢�")
+ private Long urgentAmount;
+
+ @ApiModelProperty(value = "骞冲彴濂栧姳鍙告満璐圭敤锛堝垎锛�")
+ @ExcelColumn(name = "骞冲彴濂栧姳鍙告満璐圭敤")
+ private Long platformRewardAmount;
+
+ @ApiModelProperty(value = "鎸囨淳鍙告満鐢ㄦ埛涓婚敭锛坢ember:id锛�")
+ @ExcelColumn(name = "鎸囨淳鍙告満")
+ private Integer assignDriverId;
+
+ @ApiModelProperty(value = "璁㈠崟鎬昏垂鐢紙鍒嗭級")
+ @ExcelColumn(name = "璁㈠崟鎬昏垂鐢�")
+ private Long totalAmount;
+
+ @ApiModelProperty(value = "瀹為檯鏀粯璐圭敤锛堝垎锛�")
+ @ExcelColumn(name = "瀹為檯鏀粯璐圭敤")
+ private Long payAmount;
+
+ @ApiModelProperty(value = "閫�娆捐垂鐢紙鍒嗭級")
+ @ExcelColumn(name = "閫�娆捐垂鐢�")
+ private Long refundAmount;
+
+ @ApiModelProperty(value = "閫炬湡璐圭敤锛堝垎锛�")
+ @ExcelColumn(name = "閫炬湡璐圭敤")
+ private Long overdueAmount;
+
+ @ApiModelProperty(value = "閫炬湡澶╂暟")
+ @ExcelColumn(name = "閫炬湡澶╂暟")
+ private Integer overdueDays;
+
+ @ApiModelProperty(value = "鏀粯鐘舵�侊細0=鏈敮浠橈紱1=宸叉敮浠�", example = "0")
+ @ExcelColumn(name = "鏀粯鐘舵��", valueMapping = "0=鏈敮浠�;1=宸叉敮浠�;")
+ private Integer payStatus;
+
+ @ApiModelProperty(value = "鏀粯鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ private Date payTime;
+
+ @ApiModelProperty(value = "璁㈠崟缂栧彿")
+ @ExcelColumn(name = "璁㈠崟缂栧彿")
+ private String code;
+
+ @ApiModelProperty(value = "鍙告満钖叕锛堝垎锛�")
+ @ExcelColumn(name = "鍙告満钖叕")
+ private Long driverFee;
+
+ @ApiModelProperty(value = "瀵勫瓨搴楅摵鏀剁泭锛堝垎锛�")
+ @ExcelColumn(name = "瀵勫瓨搴楅摵鏀剁泭")
+ private Long depositShopFee;
+
+ @ApiModelProperty(value = "鍙栦欢搴楅摵鏀剁泭锛堝垎锛�")
+ @ExcelColumn(name = "鍙栦欢搴楅摵鏀剁泭")
+ private Long takeShopFee;
+
+ @ApiModelProperty(value = "鍙告満鏀剁泭鍗犳瘮")
+ private BigDecimal driverFeeRata;
+
+ @ApiModelProperty(value = "瀵勫瓨搴楅摵鏀剁泭鍗犳瘮")
+ private BigDecimal depositShopFeeRata;
+
+ @ApiModelProperty(value = "鍙栦欢搴楅摵鏀剁泭鍗犳瘮")
+ private BigDecimal takeShopFeeRata;
@ApiModelProperty(value = "寰俊骞冲彴浜ゆ槗璁㈠崟鍙�")
private String wxExternalNo;
- @ApiModelProperty(value = "鏄惁璇勪环:0=鍚︼紱1=鏄�", example = "1")
+ @ApiModelProperty(value = "鏄惁璇勪环:0=鍚︼紱1=鏄�", example = "0")
+ @ExcelColumn(name = "鏄惁璇勪环", valueMapping = "0=鍚�;1=鏄�;")
private Integer commentStatus;
@ApiModelProperty(value = "璇勪环鍐呭")
+ @ExcelColumn(name = "璇勪环鍐呭")
private String commentInfo;
- @ApiModelProperty(value = "璇勪环鏄熺骇1-5", example = "1")
- private Integer commentLevel;
+ @ApiModelProperty(value = "璇勪环鍙告満鏄熺骇1-5")
+ private Integer commentDriverLevel;
+
+ @ApiModelProperty(value = "璇勪环瀵勫瓨鐐规槦绾�1-5")
+ private Integer commentDepositLevel;
+
+ @ApiModelProperty(value = "璇勪环鍙栦欢鐐规槦绾�1-5")
+ private Integer commentTakeLevel;
@ApiModelProperty(value = "璇勪环鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date commentTime;
- @ApiModelProperty(value = "璇勪环绫诲瀷:0=鎵嬪姩璇勪环锛�1=绯荤粺鑷姩璇勪环锛�", example = "1")
- private Integer commentType;
-
@ApiModelProperty(value = "鍙栨秷鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date cancelTime;
- @ApiModelProperty(value = "鏄惁宸蹭慨鏀�:0=鍚︼紱1=鏄紱2=宸茬‘璁�;", example = "1")
- private Integer isUpdate;
+ @ApiModelProperty(value = "寮傚父璐圭敤/瀹㈡埛鏀粯锛堝垎锛�")
+ @ExcelColumn(name = "寮傚父璐圭敤")
+ private Long exceptionAmount;
- @ApiModelProperty(value = "淇敼鏃堕棿", example = "1")
- private Date isUpdateTime;
+ @ApiModelProperty(value = "寮傚父琛ュ伩/琛ュ伩鍙告満锛堝垎锛�")
+ @ExcelColumn(name = "寮傚父琛ュ伩")
+ private Long exceptionFee;
- @ApiModelProperty(value = "鎺ュ崟鏂归粦鍚嶅崟member:id 澶氫釜浠�,鍒嗗壊")
- private String blackReceive;
+ @ApiModelProperty(value = "鐗╁搧淇℃伅")
+ @ExcelColumn(name = "鐗╁搧淇℃伅")
+ private String goodsInfo;
+ @ApiModelProperty(value = "缁撶畻鐘舵�侊細0=寰呯粨绠楋紱1=宸茬粨绠楋紱")
+ private Integer settlementStatus;
- @ApiModelProperty(value = "鎬诲ぉ鏁�", example = "1")
- private Integer totalDays;
-
- @ApiModelProperty(value = "鍙栨秷绫诲瀷锛�0=鍙戝崟鏂规棤璐e彇娑堬紱1=鍙戝崟鏂规湁璐e彇娑堬紱2=绯荤粺鍙栨秷锛�", example = "1")
- private Integer cancelType;
-
- @ApiModelProperty(value = "鏀粯鏂瑰紡锛�0=寰俊锛�1=鍏朵粬", example = "1")
- private Integer payMethod;
-
- @ApiModelProperty(value = "鏀粯鏃堕棿", example = "1")
- private Date payTime;
-
- @ApiModelProperty(value = "鑱旂郴浜�", example = "1")
- private String linkPhone;
-
- @ApiModelProperty(value = "鑱旂郴鏂瑰紡", example = "1")
- private String linkName;
-
- @ApiModelProperty(value = "杞﹁締瑙勬牸", example = "1")
- private String carUnit;
-
- @ApiModelProperty(value = "涓夋柟鏀粯璁㈠崟鍙�", example = "1")
- private String outTradeNo;
-
- @ApiModelProperty(value = "鎺ュ崟鏂圭‘璁ら噾棰濇椂闂�")
- private Date confirmFeeTime;
-
- @ApiModelProperty(value = "鍥剧墖")
@TableField(exist = false)
- private List<Multifile> multifileList;
+ @ApiModelProperty(value = "鍒涘缓寮�濮嬫椂闂�(鏌ヨ鐢�)", example = "2026-01-01")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ private Date createStartTime;
-
- @ApiModelProperty(value = "鏃ュ織鍒楄〃")
@TableField(exist = false)
- private List<OrderLog> orderLogList;
+ @ApiModelProperty(value = "鍒涘缓缁撴潫鏃堕棿(鏌ヨ鐢�)", example = "2026-12-31")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ private Date createEndTime;
- @ApiModelProperty(value = "璁㈠崟鐘舵�佹弿杩�", example = "1")
@TableField(exist = false)
- private String statusName;
-
-
- @ApiModelProperty(value = "閫旂粡鐐�")
- @TableField(exist = false)
- private List<WayInfoDTO> wayInfoDTOList;
-
- @ApiModelProperty(value = "椁愭爣")
- @TableField(exist = false)
- private List<CateringDTO> cateringDTOList;
-
- @ApiModelProperty(value = "绉诲姩绔敤鎴�")
- @TableField(exist = false)
- private Member member;
-
- @ApiModelProperty(value = "鏌ヨ鎴戠殑璁㈠崟锛�0=鍙戝崟鏂硅鍗曪紱1=鎺ュ崟鏂硅鍗曪紱2=鎺ュ崟澶у巺锛�", example = "1")
- @TableField(exist = false)
- private Integer queryMyOrderType;
-
- @Schema(description ="淇敼纭鍊掕鏃�")
- @TableField(exist = false)
- private Long confirmCountdown;
-
-
- @Schema(description ="鑷姩鍙栨秷鍊掕鏃�")
- @TableField(exist = false)
- private Long cancelCountdown;
-
-
- @ApiModelProperty(value = "闇�姹傜被鍨�")
- @TableField(exist = false)
- private String categoryName;
-
- @ApiModelProperty(value = "杩愯緭鍝佺")
- @TableField(exist = false)
- private String transportTypeName;
-
- @ApiModelProperty(value = "璺濈 鍗曚綅km")
- @TableField(exist = false)
- private double distance;
-
- @ApiModelProperty(value = "鎺ュ崟鏂瑰悕绉�")
- @TableField(exist = false)
- @ExcelColumn(name = "鎺ュ崟鏂瑰悕绉�",index = 6,width = 10)
- private String acceptName;
-
- @ApiModelProperty(value = "鎺ュ崟鏂规墜鏈哄彿")
- @TableField(exist = false)
- @ExcelColumn(name = "鎺ュ崟鏂硅仈绯绘柟寮�",index = 7,width = 10)
- private String acceptPhone;
-
- @ApiModelProperty(value = "鍙戝崟鏂瑰悕绉�")
- @TableField(exist = false)
- @ExcelColumn(name = "鍙戝崟鏂瑰悕绉�",index = 4,width = 10)
- private String releaseName;
-
- @ApiModelProperty(value = "鍙戝崟鏂规墜鏈哄彿")
- @TableField(exist = false)
- @ExcelColumn(name = "鍙戝崟鏂规墜鏈哄彿",index = 5,width = 10)
- private String releasePhone;
-
- @ApiModelProperty(value = "璁㈠崟鍐呭")
- @TableField(exist = false)
- @ExcelColumn(name = "璁㈠崟鍐呭",index = 3,width = 20)
- private String orderContent;
-
-
- @ApiModelProperty(value = "鍙戝崟鏃堕棿璧�")
- @TableField(exist = false)
- private Date createTimeStart;
-
- @ApiModelProperty(value = "鍙戝崟鏃堕棿姝�")
- @TableField(exist = false)
- private Date createTimeEnd;
-
- @ApiModelProperty(value = "璐圭敤鏍囧噯鍗曚綅", example = "1")
- @TableField(exist = false)
- private String priceUnit;
-
-
- @ApiModelProperty(value = "鎺ュ崟鏃堕棿璧�")
- @TableField(exist = false)
- private Date acceptTimeStart;
-
- @ApiModelProperty(value = "鎺ュ崟鏃堕棿姝�")
- @TableField(exist = false)
- private Date acceptTimeEnd;
-
-
- @ApiModelProperty(hidden = true)
- @TableField(exist = false)
- @ExcelColumn(name = "棰勪及閲戦锛堝厓锛�",index = 12,width = 10)
- private double estimatedAccountYuan;
-
- @ApiModelProperty(hidden = true)
- @TableField(exist = false)
- @ExcelColumn(name = "瀹炰粯閲戦锛堝厓锛�",index = 13,width = 10)
- private double payAccountYuan;
-
- @ApiModelProperty(value = "瀹屾垚鏃堕棿璧�")
- @TableField(exist = false)
- private Date doneTimeStart;
-
- @ApiModelProperty(value = "瀹屾垚鏃堕棿姝�")
- @TableField(exist = false)
- private Date doneTimeEnd;
-
- @ApiModelProperty(value = "鎺掑簭鏂瑰紡锛�0=鏈�鏂板彂甯�;1=璺濈浼樺厛;2=浠锋牸鍊掑簭", example = "1")
- @TableField(exist = false)
- private Integer sortType;
-
- @ApiModelProperty(value = "鎺ュ崟鏂硅瘎鍒�")
- @TableField(exist = false)
- private double score;
-
- @ApiModelProperty(value = "鎺ュ崟閲�")
- @TableField(exist = false)
- private Long receiveNum;
-
- @ApiModelProperty(value = "鍙戝崟閲�")
- @TableField(exist = false)
- private Long publishNum;
-
- @ApiModelProperty(value = "鍙戝崟鏂瑰ご鍍�")
- @TableField(exist = false)
- private String releaseCoverImage;
-
- @ApiModelProperty(value = "鎺ュ崟鏂瑰ご鍍�")
- @TableField(exist = false)
- private String acceptCoverImage;
-
- @ApiModelProperty(value = "缁忓害", example = "1")
- @TableField(exist = false)
- private BigDecimal queryLat;
-
- @ApiModelProperty(value = "绾害", example = "1")
- @TableField(exist = false)
- private BigDecimal queryLgt;
-
- @ApiModelProperty(value = "鏄惁鍙彇娑堬細0=鍙互锛�1=涓嶅彲浠�", example = "1")
- @TableField(exist = false)
- private Integer cancelStatus;
-
-
- @ApiModelProperty(value = "鏄惁鍙紑濮嬶細0=涓嶅彲浠ワ紱1=鍙互", example = "1")
- @TableField(exist = false)
- private Integer canStart;
+ @ApiModelProperty(value = "璁㈠崟绾у埆")
+ private String orderLevel;
}
-
diff --git a/server/services/src/main/java/com/doumee/dao/business/model/OrdersDetail.java b/server/services/src/main/java/com/doumee/dao/business/model/OrdersDetail.java
new file mode 100644
index 0000000..87d9a98
--- /dev/null
+++ b/server/services/src/main/java/com/doumee/dao/business/model/OrdersDetail.java
@@ -0,0 +1,87 @@
+package com.doumee.dao.business.model;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.doumee.core.annotation.excel.ExcelColumn;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.math.BigDecimal;
+import java.util.Date;
+
+/**
+ * 瀵勫瓨璁㈠崟锛屾槑缁嗕俊鎭�
+ *
+ * @author rk
+ * @date 2026/04/10
+ */
+@Data
+@ApiModel("瀵勫瓨璁㈠崟鏄庣粏淇℃伅")
+@TableName("`orders_detail`")
+public class OrdersDetail {
+
+ @TableId(type = IdType.AUTO)
+ @ApiModelProperty(value = "涓婚敭", example = "1")
+ private Integer id;
+
+ @ApiModelProperty(value = "鏄惁宸插垹闄� 0鏈垹闄� 1宸插垹闄�", example = "0")
+ private Integer deleted;
+
+ @ApiModelProperty(value = "鍒涘缓浜虹紪鐮�", example = "1")
+ private Integer createUser;
+
+ @ApiModelProperty(value = "鍒涘缓鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ @ExcelColumn(name = "鍒涘缓鏃堕棿", width = 16, dateFormat = "yyyy-MM-dd HH:mm:ss")
+ private Date createTime;
+
+ @ApiModelProperty(value = "鏇存柊浜虹紪鐮�", example = "1")
+ private Integer updateUser;
+
+ @ApiModelProperty(value = "鏇存柊鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ private Date updateTime;
+
+ @ApiModelProperty(value = "澶囨敞")
+ private String remark;
+
+ @ApiModelProperty(value = "瀵勫瓨璁㈠崟涓婚敭", example = "1")
+ @ExcelColumn(name = "瀵勫瓨璁㈠崟涓婚敭")
+ private Integer orderId;
+
+ @ApiModelProperty(value = "灏哄 鍏宠仈category type = 4", example = "1")
+ @ExcelColumn(name = "灏哄")
+ private Integer luggageId;
+
+ @ApiModelProperty(value = "灏哄鍚嶇О")
+ @ExcelColumn(name = "灏哄鍚嶇О")
+ private String luggageName;
+
+ @ApiModelProperty(value = "鏁伴噺", example = "1")
+ @ExcelColumn(name = "鏁伴噺")
+ private Integer num;
+
+ @ApiModelProperty(value = "灏卞湴瀛樺彇 - 鍗曚环锛堝垎锛�")
+ @ExcelColumn(name = "鍗曚环")
+ private Long unitPrice;
+
+ @ApiModelProperty(value = "寮傚湴瀛樺彇 - 閰嶉�佽捣姝ラ噷绋�")
+ @ExcelColumn(name = "閰嶉�佽捣姝ラ噷绋�")
+ private BigDecimal startDistance;
+
+ @ApiModelProperty(value = "寮傚湴瀛樺彇 - 閰嶉�佽捣姝ラ噷绋嬫瘡鍏噷鍗曚环锛堝垎锛�")
+ @ExcelColumn(name = "璧锋閲岀▼鍗曚环")
+ private Long startPrice;
+
+ @ApiModelProperty(value = "寮傚湴瀛樺彇 - 瓒呭嚭棣栧崟閲岀▼鍏噷鏁�")
+ @ExcelColumn(name = "瓒呭嚭棣栧崟閲岀▼")
+ private BigDecimal extraDistance;
+
+ @ApiModelProperty(value = "寮傚湴瀛樺彇 - 瓒呭嚭棣栧崟閲岀▼鍗曚环锛堝垎锛�")
+ @ExcelColumn(name = "瓒呭嚭棣栧崟閲岀▼鍗曚环")
+ private Long extraPrice;
+
+}
diff --git a/server/services/src/main/java/com/doumee/dao/business/model/Revenue.java b/server/services/src/main/java/com/doumee/dao/business/model/Revenue.java
new file mode 100644
index 0000000..71f8a58
--- /dev/null
+++ b/server/services/src/main/java/com/doumee/dao/business/model/Revenue.java
@@ -0,0 +1,103 @@
+package com.doumee.dao.business.model;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.doumee.core.annotation.excel.ExcelColumn;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.util.Date;
+
+/**
+ * 鏀舵敮璁板綍
+ * @author rk
+ * @date 2026/04/10
+ */
+@Data
+@ApiModel("鏀舵敮璁板綍")
+@TableName("`revenue`")
+public class Revenue {
+
+ @TableId(type = IdType.AUTO)
+ @ApiModelProperty(value = "涓婚敭", example = "1")
+ private Integer id;
+
+ @ApiModelProperty(value = "鏄惁宸插垹闄� 0鏈垹闄� 1宸插垹闄�", example = "0")
+ private Integer deleted;
+
+ @ApiModelProperty(value = "鍒涘缓浜虹紪鐮�", example = "1")
+ private Integer createUser;
+
+ @ApiModelProperty(value = "鍒涘缓鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ @ExcelColumn(name = "鍒涘缓鏃堕棿", index = 6, width = 16, dateFormat = "yyyy-MM-dd HH:mm:ss")
+ private Date createTime;
+
+ @ApiModelProperty(value = "鏇存柊浜虹紪鐮�", example = "1")
+ private Integer updateUser;
+
+ @ApiModelProperty(value = "鏇存柊鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ private Date updateTime;
+
+ @ApiModelProperty(value = "澶囨敞")
+ private String remark;
+
+ @ApiModelProperty(value = "浼氬憳涓婚敭", example = "1")
+ private Integer memberId;
+
+ @ApiModelProperty(value = "浼氬憳绫诲瀷锛�1=鍙告満锛�2=闂ㄥ簵", example = "1")
+ private Integer memberType;
+
+ @ApiModelProperty(value = "鏄惁鐢熸晥锛�0=鍏ヨ处涓紱1=宸插叆璐︼紱")
+ @ExcelColumn(name = "鏄惁鐢熸晥", valueMapping = "0=鍏ヨ处涓�;1=宸插叆璐�;", index = 5, width = 8)
+ private Integer vaildStatus;
+
+ @ApiModelProperty(value = "绫诲瀷锛�0=瀹屾垚璁㈠崟锛�1=鎻愮幇鏀嚭锛�2=鎻愮幇閫�鍥烇紱3=骞冲彴濂栧姳", example = "0")
+ @ExcelColumn(name = "鍙樺姩绫诲瀷", valueMapping = "0=瀹屾垚璁㈠崟;1=鎻愮幇鏀嚭;2=鎻愮幇閫�鍥�;3=骞冲彴濂栧姳;", index = 3, width = 10)
+ private Integer type;
+
+ @ApiModelProperty(value = "鏀舵敮绫诲瀷锛�1=鏀跺叆锛�-1=鏀嚭", example = "1")
+ @ExcelColumn(name = "鏀舵敮绫诲瀷", valueMapping = "1=鏀跺叆;-1=鏀嚭;", index = 1, width = 8)
+ private Integer optType;
+
+ @ApiModelProperty(value = "閲戦锛堝垎锛�")
+ private Long amount;
+
+ @ApiModelProperty(value = "鍙樺姩鍓嶉噾棰濓紙鍒嗭級")
+ private Long beforeAmount;
+
+ @ApiModelProperty(value = "鍙樺姩鍚庨噾棰濓紙鍒嗭級")
+ private Long afterAmount;
+
+ @ApiModelProperty(value = "鍏宠仈涓氬姟涓婚敭", example = "1")
+ private Integer objId;
+
+ @ApiModelProperty(value = "鍏宠仈涓氬姟绫诲瀷锛�0=璁㈠崟涓氬姟锛�1=鎻愮幇涓氬姟", example = "0")
+ private Integer objType;
+
+ @ApiModelProperty(value = "鐘舵�侊細0=鎴愬姛锛�1=澶辫触锛�2=澶勭悊涓�", example = "0")
+ private Integer status;
+
+ @ApiModelProperty(value = "璁㈠崟鍙�")
+ @ExcelColumn(name = "璁㈠崟鍙�", index = 4, width = 16)
+ private String orderNo;
+
+ @ApiModelProperty(value = "鏌ヨ寮�濮嬫椂闂�")
+ @TableField(exist = false)
+ private Date startTime;
+
+ @ApiModelProperty(value = "鏌ヨ缁撴潫鏃堕棿")
+ @TableField(exist = false)
+ private Date endTime;
+
+ @ApiModelProperty(value = "鍙樺姩閲戦锛堝厓锛�")
+ @TableField(exist = false)
+ @ExcelColumn(name = "鍙樺姩閲戦(鍏�)", index = 2, width = 10)
+ private Double amountInfo;
+
+}
diff --git a/server/services/src/main/java/com/doumee/dao/business/model/ShopInfo.java b/server/services/src/main/java/com/doumee/dao/business/model/ShopInfo.java
index deb42ac..9e9ff65 100644
--- a/server/services/src/main/java/com/doumee/dao/business/model/ShopInfo.java
+++ b/server/services/src/main/java/com/doumee/dao/business/model/ShopInfo.java
@@ -1,6 +1,7 @@
package com.doumee.dao.business.model;
import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.doumee.core.annotation.excel.ExcelColumn;
@@ -9,7 +10,9 @@
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
+import java.math.BigDecimal;
import java.util.Date;
+import java.util.List;
/**
* 闂ㄥ簵淇℃伅
@@ -95,21 +98,25 @@
@ApiModelProperty(value = "娉曚汉韬唤璇佸彿鐮侊紙浼佷笟绫诲瀷浣跨敤锛�")
private String legalPersonCard;
- @ApiModelProperty(value = "韬唤璇佹闈㈢収")
+ @ApiModelProperty(value = "韬唤璇佹闈㈢収锛堜紒涓氱被 涓烘硶浜鸿韩浠借瘉淇℃伅锛�")
private String idcardImg;
- @ApiModelProperty(value = "韬唤璇佸弽闈㈢収")
+ @ApiModelProperty(value = "韬唤璇佸弽闈㈢収锛堜紒涓氱被 涓烘硶浜鸿韩浠借瘉淇℃伅")
private String idcardImgBack;
@ApiModelProperty(value = "钀ヤ笟鎵х収")
private String businessImg;
- @ApiModelProperty(value = "鐘舵�侊細0=寰呭鎵癸紱1=瀹℃壒閫氳繃锛�2=瀹℃壒鏈�氳繃", example = "0")
- @ExcelColumn(name = "鐘舵��", index = 7, width = 10, valueMapping = "0=寰呭鎵�;1=瀹℃壒閫氳繃;2=瀹℃壒鏈�氳繃;")
+ @ApiModelProperty(value = "瀹℃壒鐘舵�侊細0=寰呭鎵癸紱1=瀹℃壒閫氳繃锛�2=瀹℃壒鏈�氳繃锛�3=宸叉敮浠樻娂閲�", example = "0")
+ @ExcelColumn(name = "瀹℃壒鐘舵��", index = 7, width = 10, valueMapping = "0=寰呭鎵�;1=瀹℃壒閫氳繃;2=瀹℃壒鏈�氳繃;3=宸叉敮浠樻娂閲�;")
+ private Integer auditStatus;
+
+ @ApiModelProperty(value = "鐘舵�侊細0=鍚敤锛�1=绂佺敤", example = "0")
+ @ExcelColumn(name = "鐘舵��", index = 8, width = 10, valueMapping = "0=鍚敤;1=绂佺敤;")
private Integer status;
@ApiModelProperty(value = "瀹℃壒鏃堕棿")
- @JsonFormat(pattern = "yyyy-MM-dd")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date auditTime;
@ApiModelProperty(value = "瀹℃壒浜�", example = "1")
@@ -121,4 +128,62 @@
@ApiModelProperty(value = "OPENID")
private String openid;
+ @ApiModelProperty(value = "鏀粯鐘舵�侊細0=寰呮敮浠橈紱1=宸叉敮浠�", example = "0")
+ private Integer payStatus;
+
+ @ApiModelProperty(value = "寰俊骞冲彴浜ゆ槗璁㈠崟鍙�")
+ private String wxExternalNo;
+
+ @ApiModelProperty(value = "璁㈠崟缂栧彿")
+ private String code;
+
+ @ApiModelProperty(value = "鏀粯鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ private Date payTime;
+
+ @ApiModelProperty(value = "鎶奸噾閲戦")
+ private Long depositAmount;
+
+ @ApiModelProperty(value = "闂ㄥ簵璇勫垎")
+ private BigDecimal score;
+
+ @ApiModelProperty(value = "娉ㄥ唽浼氬憳涓婚敭")
+ private Integer regionMemberId;
+
+ @ApiModelProperty(value = "鎶奸噾鏀粯浼氬憳openid")
+ private String payMemberOpenId;
+
+ @ApiModelProperty(value = "閰嶉�佽寖鍥�(km)")
+ private BigDecimal deliveryArea;
+ // 闈炴寔涔呭寲锛氶檮浠跺垪琛�
+ @TableField(exist = false)
+ @ApiModelProperty(value = "闂ㄥ簵闂ㄥご鐓�", hidden = true)
+ private List<String> storeFrontImgs;
+
+ @TableField(exist = false)
+ @ApiModelProperty(value = "闂ㄥ簵鍐呴儴鐓�", hidden = true)
+ private List<String> storeInteriorImgs;
+
+ @TableField(exist = false)
+ @ApiModelProperty(value = "鍏朵粬鏉愭枡", hidden = true)
+ private List<String> otherMaterialImgs;
+
+ @TableField(exist = false)
+ @ApiModelProperty(value = "鏈夋晥鍔冲姩鍚堝悓", hidden = true)
+ private List<String> laborContractImgs;
+
+ @TableField(exist = false)
+ @ApiModelProperty(value = "绀句繚缂寸撼璇佹槑", hidden = true)
+ private List<String> socialSecurityImgs;
+
+ @TableField(exist = false)
+ @ApiModelProperty(value = "娉ㄥ唽寮�濮嬫椂闂�(鏌ヨ鐢�)", example = "2026-01-01")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ private Date createStartTime;
+
+ @TableField(exist = false)
+ @ApiModelProperty(value = "娉ㄥ唽缁撴潫鏃堕棿(鏌ヨ鐢�)", example = "2026-12-31")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ private Date createEndTime;
+
}
diff --git a/server/services/src/main/java/com/doumee/dao/business/model/WithdrawalOrders.java b/server/services/src/main/java/com/doumee/dao/business/model/WithdrawalOrders.java
index 4b5050e..61ea0e9 100644
--- a/server/services/src/main/java/com/doumee/dao/business/model/WithdrawalOrders.java
+++ b/server/services/src/main/java/com/doumee/dao/business/model/WithdrawalOrders.java
@@ -1,19 +1,21 @@
package com.doumee.dao.business.model;
-import com.doumee.core.annotation.excel.ExcelColumn;
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
-import lombok.Data;
+import com.doumee.core.annotation.excel.ExcelColumn;
import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
import java.util.Date;
/**
* 鎻愮幇鐢宠璁板綍
- * @author 姹熻箘韫�
- * @date 2025/07/09 12:00
+ * @author rk
+ * @date 2026/04/10
*/
@Data
@ApiModel("鎻愮幇鐢宠璁板綍")
@@ -22,72 +24,78 @@
@TableId(type = IdType.AUTO)
@ApiModelProperty(value = "涓婚敭", example = "1")
- @ExcelColumn(name="涓婚敭")
+ @ExcelColumn(name = "涓婚敭")
private Integer id;
- @ApiModelProperty(value = "鏄惁宸插垹闄� 0鏈垹闄� 1宸插垹闄�", example = "1")
- @ExcelColumn(name="鏄惁宸插垹闄� 0鏈垹闄� 1宸插垹闄�")
+ @ApiModelProperty(value = "鏄惁宸插垹闄� 0鏈垹闄� 1宸插垹闄�", example = "0")
+ @ExcelColumn(name = "鏄惁宸插垹闄�")
private Integer deleted;
@ApiModelProperty(value = "鍒涘缓浜虹紪鐮�", example = "1")
- @ExcelColumn(name="鍒涘缓浜虹紪鐮�")
+ @ExcelColumn(name = "鍒涘缓浜虹紪鐮�")
private Integer createUser;
@ApiModelProperty(value = "鍒涘缓鏃堕棿")
- @ExcelColumn(name="鍒涘缓鏃堕棿")
- @JsonFormat(pattern = "yyyy-MM-dd")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ @ExcelColumn(name = "鍒涘缓鏃堕棿", width = 16, dateFormat = "yyyy-MM-dd HH:mm:ss")
private Date createTime;
@ApiModelProperty(value = "鏇存柊浜虹紪鐮�", example = "1")
- @ExcelColumn(name="鏇存柊浜虹紪鐮�")
+ @ExcelColumn(name = "鏇存柊浜虹紪鐮�")
private Integer updateUser;
@ApiModelProperty(value = "鏇存柊鏃堕棿")
- @ExcelColumn(name="鏇存柊鏃堕棿")
- @JsonFormat(pattern = "yyyy-MM-dd")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date updateTime;
@ApiModelProperty(value = "澶囨敞")
- @ExcelColumn(name="澶囨敞")
+ @ExcelColumn(name = "澶囨敞")
private String remark;
@ApiModelProperty(value = "浼氬憳涓婚敭", example = "1")
- @ExcelColumn(name="浼氬憳涓婚敭")
+ @ExcelColumn(name = "浼氬憳涓婚敭")
private Integer memberId;
- @ApiModelProperty(value = "鎻愮幇閲戦(鍗曚綅:鍒�)", example = "1")
- @ExcelColumn(name="鎻愮幇閲戦(鍗曚綅:鍒�)")
+ @ApiModelProperty(value = "鎻愮幇閲戦(鍗曚綅:鍒�)")
+ @ExcelColumn(name = "鎻愮幇閲戦")
private Long amount;
@ApiModelProperty(value = "寰俊骞冲彴浜ゆ槗璁㈠崟鍙�")
- @ExcelColumn(name="寰俊骞冲彴浜ゆ槗璁㈠崟鍙�")
+ @ExcelColumn(name = "寰俊浜ゆ槗璁㈠崟鍙�")
private String wxExternalNo;
- @ApiModelProperty(value = "鐘舵��:0=鎻愮幇鐢宠涓�:1=鎻愮幇鎴愬姛锛�2=鎻愮幇澶辫触锛�", example = "1")
- @ExcelColumn(name="鐘舵��:0=鎻愮幇鐢宠涓�:1=鎻愮幇鎴愬姛锛�2=鎻愮幇澶辫触锛�")
+ @ApiModelProperty(value = "鐘舵��:0=鎻愮幇鐢宠涓�;1=鎻愮幇鎴愬姛;2=鎻愮幇澶辫触;", example = "0")
+ @ExcelColumn(name = "鐘舵��", valueMapping = "0=鎻愮幇鐢宠涓�;1=鎻愮幇鎴愬姛;2=鎻愮幇澶辫触;")
private Integer status;
@ApiModelProperty(value = "鎻愮幇瀹屾垚鏃堕棿")
- @ExcelColumn(name="鎻愮幇瀹屾垚鏃堕棿")
- @JsonFormat(pattern = "yyyy-MM-dd")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date doneTime;
@ApiModelProperty(value = "瀹屾垚澶囨敞")
- @ExcelColumn(name="瀹屾垚澶囨敞")
+ @ExcelColumn(name = "瀹屾垚澶囨敞")
private String doneInfo;
-
- @ApiModelProperty(value = "涓氬姟绫诲瀷锛�0=鎻愮幇锛�1=閫�娆撅紱", example = "1")
- @ExcelColumn(name="涓氬姟绫诲瀷锛�0=鎻愮幇锛�1=閫�娆撅紱")
+ @ApiModelProperty(value = "涓氬姟绫诲瀷锛�0=鎻愮幇锛�1=閫�娆撅紱", example = "0")
+ @ExcelColumn(name = "涓氬姟绫诲瀷", valueMapping = "0=鎻愮幇;1=閫�娆�;")
private Integer type;
- @ApiModelProperty(value = "鍏宠仈璁㈠崟涓婚敭 orders", example = "1")
- @ExcelColumn(name="鍏宠仈璁㈠崟涓婚敭 orders")
+ @ApiModelProperty(value = "鍏宠仈璁㈠崟涓婚敭")
+ @ExcelColumn(name = "鍏宠仈璁㈠崟")
private Integer objId;
@ApiModelProperty(value = "鎻愮幇鐢宠鍗曞彿")
- @ExcelColumn(name="鎻愮幇鐢宠鍗曞彿")
+ @ExcelColumn(name = "鎻愮幇鐢宠鍗曞彿")
private String outBillNo;
+ @TableField(exist = false)
+ @ApiModelProperty(value = "鍒涘缓寮�濮嬫椂闂�(鏌ヨ鐢�)", example = "2026-01-01")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ private Date createStartTime;
+
+ @TableField(exist = false)
+ @ApiModelProperty(value = "鍒涘缓缁撴潫鏃堕棿(鏌ヨ鐢�)", example = "2026-12-31")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ private Date createEndTime;
}
diff --git a/server/services/src/main/java/com/doumee/dao/dto/ChangeStatusDTO.java b/server/services/src/main/java/com/doumee/dao/dto/ChangeStatusDTO.java
new file mode 100644
index 0000000..739acbf
--- /dev/null
+++ b/server/services/src/main/java/com/doumee/dao/dto/ChangeStatusDTO.java
@@ -0,0 +1,23 @@
+package com.doumee.dao.dto;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * 淇敼鐘舵�佽姹傜被
+ *
+ * @author rk
+ * @date 2026/04/10
+ */
+@Data
+@ApiModel("淇敼鐘舵�佽姹�")
+public class ChangeStatusDTO {
+
+ @ApiModelProperty(value = "涓婚敭", required = true)
+ private Integer id;
+
+ @ApiModelProperty(value = "鐘舵�侊細0=鍚敤锛�1=绂佺敤", required = true, example = "0")
+ private Integer status;
+
+}
diff --git a/server/services/src/main/java/com/doumee/dao/dto/CommentDTO.java b/server/services/src/main/java/com/doumee/dao/dto/CommentDTO.java
deleted file mode 100644
index 6204854..0000000
--- a/server/services/src/main/java/com/doumee/dao/dto/CommentDTO.java
+++ /dev/null
@@ -1,30 +0,0 @@
-package com.doumee.dao.dto;
-
-import com.doumee.dao.business.model.Member;
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Data;
-
-/**
- * Created by IntelliJ IDEA.
- *
- * @Author : Rk
- * @create 2023/3/23 9:50
- */
-@Data
-@ApiModel("璁㈠崟璇勪环")
-public class CommentDTO {
-
- @ApiModelProperty(value = "璁㈠崟涓婚敭")
- private Integer orderId;
-
- @ApiModelProperty(value = "璇勪环鏄熺骇 1 - 5 ")
- private Long level;
-
- @ApiModelProperty(value = "璇勪环鍐呭")
- private String info;
-
- @ApiModelProperty(hidden = true)
- private Member member;
-
-}
diff --git a/server/services/src/main/java/com/doumee/dao/dto/ConfirmFeeOrderDTO.java b/server/services/src/main/java/com/doumee/dao/dto/ConfirmFeeOrderDTO.java
deleted file mode 100644
index 9088524..0000000
--- a/server/services/src/main/java/com/doumee/dao/dto/ConfirmFeeOrderDTO.java
+++ /dev/null
@@ -1,30 +0,0 @@
-package com.doumee.dao.dto;
-
-import com.doumee.dao.business.model.Member;
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Data;
-
-/**
- * @author dm
- * @since 2025/03/31 16:44
- */
-@Data
-@ApiModel("纭璁㈠崟璐圭敤淇℃伅")
-public class ConfirmFeeOrderDTO {
-
- @ApiModelProperty(value = "璁㈠崟涓婚敭")
- private Integer orderId;
-
- @ApiModelProperty(value = "璁′环鏁伴噺1((閲嶉噺/浜烘暟/锛堝ぉ鏁�/灏忔椂/閲嶉噺锛�/锛堝ぉ鏁�/娆℃暟锛�/鐢ㄩ澶╂暟)", example = "1")
- private Integer priceNum1;
-
- @ApiModelProperty(value = "璁′环鏁伴噺2(鍒嗘嫞宸�/鍖呰宸� 浜烘暟)", example = "1")
- private Integer priceNum2;
- @ApiModelProperty(value = "鎺ュ崟鏂圭‘璁ゅ叾浠栬垂鐢紙鍒嗭級", example = "1")
- private Long confirmOtherFee;
- @ApiModelProperty(value = "鎺ュ崟鏂圭‘璁よ垂鐢ㄥ娉�" )
- private String confirmFeeRemark;
- @ApiModelProperty(hidden = true)
- private Member member;
-}
diff --git a/server/services/src/main/java/com/doumee/dao/dto/ConfirmUpdOrderDTO.java b/server/services/src/main/java/com/doumee/dao/dto/ConfirmUpdOrderDTO.java
deleted file mode 100644
index fb42c56..0000000
--- a/server/services/src/main/java/com/doumee/dao/dto/ConfirmUpdOrderDTO.java
+++ /dev/null
@@ -1,26 +0,0 @@
-package com.doumee.dao.dto;
-
-import com.doumee.dao.business.model.Member;
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Data;
-
-import java.util.Date;
-
-/**
- * @author dm
- * @since 2025/03/31 16:44
- */
-@Data
-@ApiModel("纭璁㈠崟淇敼淇℃伅")
-public class ConfirmUpdOrderDTO {
-
- @ApiModelProperty(value = "璁㈠崟涓婚敭")
- private Integer orderId;
-
- @ApiModelProperty(value = "鎿嶄綔绫诲瀷锛�0=鍚屾剰锛�1=涓嶅悓鎰忥紱")
- private Integer status;
-
- @ApiModelProperty(hidden = true)
- private Member member;
-}
diff --git a/server/services/src/main/java/com/doumee/dao/dto/DoneOrderDTO.java b/server/services/src/main/java/com/doumee/dao/dto/DoneOrderDTO.java
deleted file mode 100644
index 98d48ce..0000000
--- a/server/services/src/main/java/com/doumee/dao/dto/DoneOrderDTO.java
+++ /dev/null
@@ -1,27 +0,0 @@
-package com.doumee.dao.dto;
-
-import com.doumee.dao.business.model.Member;
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Data;
-
-/**
- * Created by IntelliJ IDEA.
- *
- * @Author : Rk
- * @create 2023/3/23 9:50
- */
-@Data
-@ApiModel("瀹屾垚璁㈠崟")
-public class DoneOrderDTO {
-
- @ApiModelProperty(value = "璁㈠崟涓婚敭")
- private Integer orderId;
-
- @ApiModelProperty(value = "鏀粯閲戦 鍗曚綅锛氬垎")
- private Long amount;
-
- @ApiModelProperty(hidden = true)
- private Member member;
-
-}
diff --git a/server/services/src/main/java/com/doumee/dao/dto/PlatformConfigDTO.java b/server/services/src/main/java/com/doumee/dao/dto/PlatformConfigDTO.java
deleted file mode 100644
index 414f941..0000000
--- a/server/services/src/main/java/com/doumee/dao/dto/PlatformConfigDTO.java
+++ /dev/null
@@ -1,38 +0,0 @@
-package com.doumee.dao.dto;
-
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Data;
-
-/**
- * Created by IntelliJ IDEA.
- *
- * @Author : Rk
- * @create 2023/3/23 9:50
- */
-@Data
-@ApiModel("绯荤粺璁㈠崟閰嶇疆")
-public class PlatformConfigDTO {
-
- @ApiModelProperty(value = "鍙戝崟鏂� - 姣忔棩鍙彇娑堟鏁�")
- private String releaseCancelTimes;
-
- @ApiModelProperty(value = "鍙戝崟鏂� - 鍙彁鍓峏灏忔椂鍙栨秷 锛堝崟浣嶏細灏忔椂锛�")
- private String releaseCancelTime;
-
- @ApiModelProperty(value = "鎺ュ崟鏂� - 姣忔棩鍙彇娑堟鏁�")
- private String receiveCancelTimes;
-
- @ApiModelProperty(value = "鎺ュ崟鏂� - 鍙彁鍓峏灏忔椂鍙栨秷 锛堝崟浣嶏細灏忔椂锛�")
- private String receiveCancelTime;
-
- @ApiModelProperty(value = "鑷姩娲惧崟鏃堕棿閰嶇疆锛堝崟浣嶅垎閽燂級")
- private String autoDispatch;
-
- @ApiModelProperty(value = "鑷姩娲惧崟璺濈锛堝崟浣嶏細km锛�")
- private String autoDispatchDistance;
-
- @ApiModelProperty(value = "璁㈠崟淇敼鏈‘璁よ嚜鍔ㄧ‘璁ゆ椂闂达紙鍗曚綅锛氬垎閽燂級")
- private String autoConfirm;
-
-}
diff --git a/server/services/src/main/java/com/doumee/dao/dto/ResetPasswordDTO.java b/server/services/src/main/java/com/doumee/dao/dto/ResetPasswordDTO.java
new file mode 100644
index 0000000..7863e0a
--- /dev/null
+++ b/server/services/src/main/java/com/doumee/dao/dto/ResetPasswordDTO.java
@@ -0,0 +1,23 @@
+package com.doumee.dao.dto;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import javax.validation.constraints.NotNull;
+
+/**
+ * 閲嶇疆瀵嗙爜璇锋眰绫�
+ *
+ * @author rk
+ * @date 2026/04/10
+ */
+@Data
+@ApiModel("閲嶇疆瀵嗙爜璇锋眰")
+public class ResetPasswordDTO {
+
+ @ApiModelProperty(value = "闂ㄥ簵涓婚敭", required = true)
+ @NotNull(message = "闂ㄥ簵涓婚敭涓嶈兘涓虹┖")
+ private Integer id;
+
+}
diff --git a/server/services/src/main/java/com/doumee/dao/dto/ReusePayDTO.java b/server/services/src/main/java/com/doumee/dao/dto/ReusePayDTO.java
deleted file mode 100644
index 7c35ffb..0000000
--- a/server/services/src/main/java/com/doumee/dao/dto/ReusePayDTO.java
+++ /dev/null
@@ -1,27 +0,0 @@
-package com.doumee.dao.dto;
-
-import com.doumee.dao.business.model.Member;
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Data;
-
-/**
- * Created by IntelliJ IDEA.
- *
- * @Author : Rk
- * @create 2023/3/23 9:50
- */
-@Data
-@ApiModel("閲嶆柊鏀粯")
-public class ReusePayDTO {
-
- @ApiModelProperty(value = "璁㈠崟涓婚敭")
- private Integer orderId;
-
- @ApiModelProperty(value = "鏀粯閲戦 鍗曚綅锛氬垎")
- private Long amount;
-
- @ApiModelProperty(hidden = true)
- private Member member;
-
-}
diff --git a/server/services/src/main/java/com/doumee/dao/dto/ShopApplyDTO.java b/server/services/src/main/java/com/doumee/dao/dto/ShopApplyDTO.java
new file mode 100644
index 0000000..28722ff
--- /dev/null
+++ b/server/services/src/main/java/com/doumee/dao/dto/ShopApplyDTO.java
@@ -0,0 +1,103 @@
+package com.doumee.dao.dto;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import javax.validation.constraints.NotBlank;
+import javax.validation.constraints.NotNull;
+import javax.validation.constraints.Size;
+import java.io.Serializable;
+import java.util.List;
+
+/**
+ * 闂ㄥ簵鍏ラ┗鐢宠璇锋眰
+ * @author rk
+ * @date 2026/04/10
+ */
+@Data
+@ApiModel("闂ㄥ簵鍏ラ┗鐢宠璇锋眰")
+public class ShopApplyDTO implements Serializable {
+
+ @ApiModelProperty(value = "浼佷笟绫诲瀷锛�0=涓汉锛�1=浼佷笟", required = true, example = "0")
+ @NotNull(message = "浼佷笟绫诲瀷涓嶈兘涓虹┖")
+ private Integer companyType;
+
+ @ApiModelProperty(value = "搴楅摵鍚嶇О", required = true)
+ @NotBlank(message = "搴楅摵鍚嶇О涓嶈兘涓虹┖")
+ private String name;
+
+ @ApiModelProperty(value = "娉ㄥ唽鎵嬫満鍙�", required = true)
+ @NotBlank(message = "娉ㄥ唽鎵嬫満鍙蜂笉鑳戒负绌�")
+ private String telephone;
+
+ @ApiModelProperty(value = "鑱旂郴浜哄悕绉�", required = true)
+ @NotBlank(message = "鑱旂郴浜哄悕绉颁笉鑳戒负绌�")
+ private String linkName;
+
+ @ApiModelProperty(value = "鑱旂郴浜虹數璇�", required = true)
+ @NotBlank(message = "鑱旂郴浜虹數璇濅笉鑳戒负绌�")
+ private String linkPhone;
+
+ @ApiModelProperty(value = "鑱旂郴浜鸿韩浠借瘉鍙风爜", required = true)
+ @NotBlank(message = "鑱旂郴浜鸿韩浠借瘉鍙风爜涓嶈兘涓虹┖")
+ private String idcard;
+
+ @ApiModelProperty(value = "鍖哄垝涓婚敭", required = true, example = "1")
+ @NotNull(message = "鍖哄垝涓嶈兘涓虹┖")
+ private Integer areaId;
+
+ @ApiModelProperty(value = "瀹氫綅缁忓害", required = true)
+ @NotNull(message = "缁忓害涓嶈兘涓虹┖")
+ private Double longitude;
+
+ @ApiModelProperty(value = "瀹氫綅绾害", required = true)
+ @NotNull(message = "绾害涓嶈兘涓虹┖")
+ private Double latitude;
+
+ @ApiModelProperty(value = "璇︾粏鍦板潃", required = true)
+ @NotBlank(message = "璇︾粏鍦板潃涓嶈兘涓虹┖")
+ private String address;
+
+ @ApiModelProperty(value = "韬唤璇佹闈㈢収", required = true)
+ @NotBlank(message = "韬唤璇佹闈㈢収涓嶈兘涓虹┖")
+ private String idcardImg;
+
+ @ApiModelProperty(value = "韬唤璇佸弽闈㈢収", required = true)
+ @NotBlank(message = "韬唤璇佸弽闈㈢収涓嶈兘涓虹┖")
+ private String idcardImgBack;
+
+ @ApiModelProperty(value = "钀ヤ笟鎵х収锛堜紒涓氱被鍨嬪繀濉級")
+ private String businessImg;
+
+ @ApiModelProperty(value = "娉曚汉濮撳悕锛堜紒涓氱被鍨嬪繀濉級")
+ private String legalPersonName;
+
+ @ApiModelProperty(value = "娉曚汉鐢佃瘽锛堜紒涓氱被鍨嬪繀濉級")
+ private String legalPersonPhone;
+
+ @ApiModelProperty(value = "娉曚汉韬唤璇佸彿鐮侊紙浼佷笟绫诲瀷蹇呭~锛�")
+ private String legalPersonCard;
+
+ @ApiModelProperty(value = "闂ㄥ簵闂ㄥご鐓э紙鏈�澶�3寮狅級", required = true)
+ @NotNull(message = "闂ㄥ簵闂ㄥご鐓т笉鑳戒负绌�")
+ @Size(min = 1, max = 3, message = "闂ㄥ簵闂ㄥご鐓�1-3寮�")
+ private List<String> storeFrontImgs;
+
+ @ApiModelProperty(value = "闂ㄥ簵鍐呴儴鐓э紙鏈�澶�3寮狅級", required = true)
+ @NotNull(message = "闂ㄥ簵鍐呴儴鐓т笉鑳戒负绌�")
+ @Size(min = 1, max = 3, message = "闂ㄥ簵鍐呴儴鐓�1-3寮�")
+ private List<String> storeInteriorImgs;
+
+ @ApiModelProperty(value = "鍏朵粬鏉愭枡锛堟渶澶�3寮狅級")
+ @Size(max = 3, message = "鍏朵粬鏉愭枡鏈�澶�3寮�")
+ private List<String> otherMaterialImgs;
+
+ @ApiModelProperty(value = "鏈夋晥鍔冲姩鍚堝悓锛堜釜浜虹被鍨嬪繀濉紝鏈�澶�3寮狅級")
+ @Size(max = 3, message = "鏈夋晥鍔冲姩鍚堝悓鏈�澶�3寮�")
+ private List<String> laborContractImgs;
+
+ @ApiModelProperty(value = "绀句繚缂寸撼璇佹槑锛堜釜浜虹被鍨嬪繀濉紝鏈�澶�3寮狅級")
+ @Size(max = 3, message = "绀句繚缂寸撼璇佹槑鏈�澶�3寮�")
+ private List<String> socialSecurityImgs;
+}
diff --git a/server/services/src/main/java/com/doumee/dao/dto/ShopUpdateDTO.java b/server/services/src/main/java/com/doumee/dao/dto/ShopUpdateDTO.java
new file mode 100644
index 0000000..f7f252d
--- /dev/null
+++ b/server/services/src/main/java/com/doumee/dao/dto/ShopUpdateDTO.java
@@ -0,0 +1,113 @@
+package com.doumee.dao.dto;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import javax.validation.constraints.NotBlank;
+import javax.validation.constraints.NotNull;
+import javax.validation.constraints.Size;
+import java.io.Serializable;
+import java.util.List;
+
+/**
+ * 闂ㄥ簵鍚庡彴淇敼璇锋眰
+ *
+ * @author rk
+ * @date 2026/04/10
+ */
+@Data
+@ApiModel("闂ㄥ簵鍚庡彴淇敼璇锋眰")
+public class ShopUpdateDTO implements Serializable {
+
+ @ApiModelProperty(value = "闂ㄥ簵涓婚敭", required = true)
+ @NotNull(message = "闂ㄥ簵涓婚敭涓嶈兘涓虹┖")
+ private Integer id;
+
+ @ApiModelProperty(value = "娉ㄥ唽鎵嬫満鍙�", required = true)
+ @NotBlank(message = "娉ㄥ唽鎵嬫満鍙蜂笉鑳戒负绌�")
+ private String telephone;
+
+ @ApiModelProperty(value = "闂ㄥ簵鍚嶇О", required = true)
+ @NotBlank(message = "闂ㄥ簵鍚嶇О涓嶈兘涓虹┖")
+ private String name;
+
+ @ApiModelProperty(value = "鑱旂郴浜�", required = true)
+ @NotBlank(message = "鑱旂郴浜轰笉鑳戒负绌�")
+ private String linkName;
+
+ @ApiModelProperty(value = "鑱旂郴鐢佃瘽", required = true)
+ @NotBlank(message = "鑱旂郴鐢佃瘽涓嶈兘涓虹┖")
+ private String linkPhone;
+
+ @ApiModelProperty(value = "韬唤璇佸彿鐮�", required = true)
+ @NotBlank(message = "韬唤璇佸彿鐮佷笉鑳戒负绌�")
+ private String idcard;
+
+ @ApiModelProperty(value = "鎵�鍦ㄥ尯鍒�", required = true, example = "1")
+ @NotNull(message = "鎵�鍦ㄥ尯鍒掍笉鑳戒负绌�")
+ private Integer areaId;
+
+ @ApiModelProperty(value = "闂ㄥ簵鍦板潃", required = true)
+ @NotBlank(message = "闂ㄥ簵鍦板潃涓嶈兘涓虹┖")
+ private String address;
+
+ @ApiModelProperty(value = "缁忓害", required = true)
+ @NotNull(message = "缁忓害涓嶈兘涓虹┖")
+ private Double longitude;
+
+ @ApiModelProperty(value = "绾害", required = true)
+ @NotNull(message = "绾害涓嶈兘涓虹┖")
+ private Double latitude;
+
+ @ApiModelProperty(value = "浼佷笟绫诲瀷锛�0=涓汉锛�1=浼佷笟", required = true, example = "0")
+ @NotNull(message = "浼佷笟绫诲瀷涓嶈兘涓虹┖")
+ private Integer companyType;
+
+ // ========== 浼佷笟绫讳俊鎭� ==========
+
+ @ApiModelProperty(value = "娉曚汉濮撳悕锛堜紒涓氱被鍨嬪繀濉級")
+ private String legalPersonName;
+
+ @ApiModelProperty(value = "娉曚汉鎵嬫満鍙凤紙浼佷笟绫诲瀷蹇呭~锛�")
+ private String legalPersonPhone;
+
+ @ApiModelProperty(value = "娉曚汉韬唤璇佸彿鐮侊紙浼佷笟绫诲瀷蹇呭~锛�")
+ private String legalPersonCard;
+
+ @ApiModelProperty(value = "韬唤璇佹闈㈢収/娉曚汉韬唤璇佹闈�", required = true)
+ @NotBlank(message = "韬唤璇佹闈㈢収涓嶈兘涓虹┖")
+ private String idcardImg;
+
+ @ApiModelProperty(value = "韬唤璇佸弽闈㈢収/娉曚汉韬唤璇佸弽闈�", required = true)
+ @NotBlank(message = "韬唤璇佸弽闈㈢収涓嶈兘涓虹┖")
+ private String idcardImgBack;
+
+ @ApiModelProperty(value = "钀ヤ笟鎵х収锛堜紒涓氱被鍨嬪繀濉級")
+ private String businessImg;
+
+ // ========== 鍥剧墖鍒楄〃 ==========
+
+ @ApiModelProperty(value = "闂ㄥご鐓э紙鏈�澶�3寮狅級", required = true)
+ @NotNull(message = "闂ㄥご鐓т笉鑳戒负绌�")
+ @Size(min = 1, max = 3, message = "闂ㄥご鐓�1-3寮�")
+ private List<String> storeFrontImgs;
+
+ @ApiModelProperty(value = "闂ㄥ簵鍐呴儴鐓х墖锛堟渶澶�3寮狅級", required = true)
+ @NotNull(message = "闂ㄥ簵鍐呴儴鐓х墖涓嶈兘涓虹┖")
+ @Size(min = 1, max = 3, message = "闂ㄥ簵鍐呴儴鐓х墖1-3寮�")
+ private List<String> storeInteriorImgs;
+
+ @ApiModelProperty(value = "鍏朵粬鏉愭枡锛堟渶澶�3寮狅級")
+ @Size(max = 3, message = "鍏朵粬鏉愭枡鏈�澶�3寮�")
+ private List<String> otherMaterialImgs;
+
+ @ApiModelProperty(value = "鏈夋晥鍔冲姩鍚堝悓锛堜釜浜虹被鍨嬪繀濉紝鏈�澶�3寮狅級")
+ @Size(max = 3, message = "鏈夋晥鍔冲姩鍚堝悓鏈�澶�3寮�")
+ private List<String> laborContractImgs;
+
+ @ApiModelProperty(value = "绀句繚缂寸撼璇佹槑锛堜釜浜虹被鍨嬪繀濉紝鏈�澶�3寮狅級")
+ @Size(max = 3, message = "绀句繚缂寸撼璇佹槑鏈�澶�3寮�")
+ private List<String> socialSecurityImgs;
+
+}
diff --git a/server/services/src/main/java/com/doumee/dao/dto/UpdOrderDataDTO.java b/server/services/src/main/java/com/doumee/dao/dto/UpdOrderDataDTO.java
deleted file mode 100644
index 659b469..0000000
--- a/server/services/src/main/java/com/doumee/dao/dto/UpdOrderDataDTO.java
+++ /dev/null
@@ -1,35 +0,0 @@
-package com.doumee.dao.dto;
-
-import com.doumee.dao.business.model.Member;
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Data;
-
-import javax.validation.constraints.NotBlank;
-import javax.validation.constraints.NotNull;
-import java.io.Serializable;
-import java.util.Date;
-
-/**
- * @author dm
- * @since 2025/03/31 16:44
- */
-@Data
-@ApiModel("淇敼璁㈠崟鏃ユ湡")
-public class UpdOrderDataDTO {
-
- @ApiModelProperty(value = "璁㈠崟涓婚敭")
- private Integer orderId;
-
- @ApiModelProperty(value = "寮�濮嬫椂闂�")
- private Date startDate;
-
- @ApiModelProperty(value = "缁撴潫鏃堕棿")
- private Date endDate;
-
- @ApiModelProperty(value = "澶╂暟")
- private Integer totalDays;
-
- @ApiModelProperty(hidden = true)
- private Member member;
-}
diff --git a/server/services/src/main/java/com/doumee/dao/vo/OrderReleaseVO.java b/server/services/src/main/java/com/doumee/dao/vo/OrderReleaseVO.java
deleted file mode 100644
index 011b69e..0000000
--- a/server/services/src/main/java/com/doumee/dao/vo/OrderReleaseVO.java
+++ /dev/null
@@ -1,21 +0,0 @@
-package com.doumee.dao.vo;
-
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Data;
-
-/**
- * Created by IntelliJ IDEA.
- *
- * @Author : Rk
- * @create 2025/7/10 15:09
- */
-@Data
-public class OrderReleaseVO {
-
- @ApiModelProperty(value = "璁㈠崟涓婚敭")
- private Integer id;
-
- @ApiModelProperty(value = "鏀粯璇︽儏")
- private Object object;
-
-}
diff --git a/server/services/src/main/java/com/doumee/dao/vo/PayResponse.java b/server/services/src/main/java/com/doumee/dao/vo/PayResponse.java
deleted file mode 100644
index 38456ff..0000000
--- a/server/services/src/main/java/com/doumee/dao/vo/PayResponse.java
+++ /dev/null
@@ -1,31 +0,0 @@
-package com.doumee.dao.vo;
-
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Data;
-
-import java.io.Serializable;
-
-/**
- * Created by IntelliJ IDEA.
- *
- * @Author : Rk
- * @create 2023/3/23 9:50
- */
-@Data
-@ApiModel("鏀粯鐩稿簲绫�")
-public class PayResponse implements Serializable {
-
- @ApiModelProperty(value = "鏀粯璁㈠崟涓婚敭")
- private Integer orderId;
-
- @ApiModelProperty(value = "鏀粯绫诲瀷锛�0=鐜伴噾鏀粯锛�1=绾Н鍒嗘敮浠�")
- private Integer payType;
-
- @ApiModelProperty(value = "寰俊璋冭捣涓氬姟")
- private Object response;
-
- @ApiModelProperty(value = "閿佸畾缂栧彿",hidden = true)
- private String lockKey;
-
-}
diff --git a/server/services/src/main/java/com/doumee/dao/vo/ShopDetailVO.java b/server/services/src/main/java/com/doumee/dao/vo/ShopDetailVO.java
new file mode 100644
index 0000000..7530b9c
--- /dev/null
+++ b/server/services/src/main/java/com/doumee/dao/vo/ShopDetailVO.java
@@ -0,0 +1,134 @@
+package com.doumee.dao.vo;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.util.Date;
+import java.util.List;
+
+/**
+ * 闂ㄥ簵璇︽儏杩斿洖锛堝惈闄勪欢鍒楄〃锛�
+ * @author rk
+ * @date 2026/04/10
+ */
+@Data
+@ApiModel("闂ㄥ簵璇︽儏杩斿洖")
+public class ShopDetailVO implements Serializable {
+
+ @ApiModelProperty(value = "闂ㄥ簵涓婚敭")
+ private Integer id;
+
+ @ApiModelProperty(value = "浼佷笟绫诲瀷锛�0=涓汉锛�1=浼佷笟")
+ private Integer companyType;
+
+ @ApiModelProperty(value = "搴楅摵鍚嶇О")
+ private String name;
+
+ @ApiModelProperty(value = "娉ㄥ唽鎵嬫満鍙�")
+ private String telephone;
+
+ @ApiModelProperty(value = "鑱旂郴浜哄悕绉�")
+ private String linkName;
+
+ @ApiModelProperty(value = "鑱旂郴浜虹數璇�")
+ private String linkPhone;
+
+ @ApiModelProperty(value = "鑱旂郴浜鸿韩浠借瘉鍙风爜")
+ private String idcard;
+
+ @ApiModelProperty(value = "鍖哄垝涓婚敭")
+ private Integer areaId;
+
+ @ApiModelProperty(value = "鐪佷唤涓婚敭")
+ private Integer provinceId;
+
+ @ApiModelProperty(value = "甯備富閿�")
+ private Integer cityId;
+
+ @ApiModelProperty(value = "鐪佷唤鍚嶇О")
+ private String provinceName;
+
+ @ApiModelProperty(value = "鍩庡競鍚嶇О")
+ private String cityName;
+
+ @ApiModelProperty(value = "鍖哄幙鍚嶇О")
+ private String areaName;
+
+ @ApiModelProperty(value = "瀹氫綅缁忓害")
+ private Double longitude;
+
+ @ApiModelProperty(value = "瀹氫綅绾害")
+ private Double latitude;
+
+ @ApiModelProperty(value = "璇︾粏鍦板潃")
+ private String address;
+
+ @ApiModelProperty(value = "娉曚汉濮撳悕")
+ private String legalPersonName;
+
+ @ApiModelProperty(value = "娉曚汉鐢佃瘽")
+ private String legalPersonPhone;
+
+ @ApiModelProperty(value = "娉曚汉韬唤璇佸彿鐮�")
+ private String legalPersonCard;
+
+ @ApiModelProperty(value = "韬唤璇佹闈㈢収")
+ private String idcardImg;
+
+ @ApiModelProperty(value = "韬唤璇佸弽闈㈢収")
+ private String idcardImgBack;
+
+ @ApiModelProperty(value = "钀ヤ笟鎵х収")
+ private String businessImg;
+
+ @ApiModelProperty(value = "瀹℃壒鐘舵�侊細0=寰呭鎵癸紱1=瀹℃壒閫氳繃锛�2=瀹℃壒鏈�氳繃锛�3=宸叉敮浠樻娂閲�")
+ private Integer auditStatus;
+
+ @ApiModelProperty(value = "鐘舵�侊細0=鍚敤锛�1=绂佺敤")
+ private Integer status;
+
+ @ApiModelProperty(value = "瀹℃壒鏃堕棿")
+ private Date auditTime;
+
+ @ApiModelProperty(value = "瀹℃壒澶囨敞")
+ private String auditRemark;
+
+ @ApiModelProperty(value = "OPENID")
+ private String openid;
+
+ @ApiModelProperty(value = "鏀粯鐘舵�侊細0=寰呮敮浠橈紱1=宸叉敮浠�")
+ private Integer payStatus;
+
+ @ApiModelProperty(value = "闂ㄥ簵璇勫垎")
+ private BigDecimal score;
+
+ @ApiModelProperty(value = "鍒涘缓鏃堕棿")
+ private Date createTime;
+
+ @ApiModelProperty(value = "閰嶉�佽寖鍥�(km)")
+ private BigDecimal deliveryArea;
+ // 闄勪欢鍒楄〃
+ @ApiModelProperty(value = "闂ㄥ簵闂ㄥご鐓�")
+ private List<String> storeFrontImgs;
+
+ @ApiModelProperty(value = "闂ㄥ簵鍐呴儴鐓�")
+ private List<String> storeInteriorImgs;
+
+ @ApiModelProperty(value = "鍏朵粬鏉愭枡")
+ private List<String> otherMaterialImgs;
+
+ @ApiModelProperty(value = "鏈夋晥鍔冲姩鍚堝悓")
+ private List<String> laborContractImgs;
+
+ @ApiModelProperty(value = "绀句繚缂寸撼璇佹槑")
+ private List<String> socialSecurityImgs;
+
+ @ApiModelProperty(value = "鍥剧墖鍓嶇紑鍦板潃")
+ private String imgPrefix;
+
+ @ApiModelProperty(value = "缁戝畾寮�鎴蜂細鍛樺ご鍍�")
+ private String payMemberCoverImage;
+}
diff --git a/server/services/src/main/java/com/doumee/service/business/AliSmsService.java b/server/services/src/main/java/com/doumee/service/business/AliSmsService.java
index b9b3174..43f915d 100644
--- a/server/services/src/main/java/com/doumee/service/business/AliSmsService.java
+++ b/server/services/src/main/java/com/doumee/service/business/AliSmsService.java
@@ -1,7 +1,6 @@
package com.doumee.service.business;
import com.alibaba.fastjson.JSON;
-import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.aliyuncs.DefaultAcsClient;
import com.aliyuncs.IAcsClient;
@@ -10,24 +9,10 @@
import com.aliyuncs.http.MethodType;
import com.aliyuncs.profile.DefaultProfile;
import com.aliyuncs.profile.IClientProfile;
-import com.doumee.core.constants.Constants;
-import com.doumee.core.utils.DateUtil;
-import com.doumee.dao.business.CategoryMapper;
-import com.doumee.dao.business.model.Category;
-import com.doumee.dao.business.model.IdentityInfo;
-import com.doumee.dao.business.model.Orders;
-import com.doumee.dao.dto.CateringDTO;
-import com.github.pagehelper.Constant;
-import com.github.xiaoymin.knife4j.core.util.CollectionUtils;
import lombok.extern.slf4j.Slf4j;
-import org.apache.commons.lang3.StringUtils;
-import org.apache.logging.log4j.LogManager;
-import org.apache.logging.log4j.Logger;
-import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
-import java.math.BigDecimal;
-import java.util.*;
+import java.util.Map;
/**
* Created by IntelliJ IDEA.
@@ -39,86 +24,13 @@
@Slf4j
public class AliSmsService {
- protected Logger logger = LogManager.getLogger("sms");
-
private final static String ACCESS_KEY_ID = "LTAI5tMkg7wwV74a8H6Bm3Ej";
private final static String ACCESS_KEY_SECRET = "FcHKST36sfwfo706L6bvrweGFIbp3n";
private final static String SING_NAME = "姗欐澶╀笅绉戞妧";
- public void businessSendSms(int type, String phone, Orders orders, BigDecimal distance,
- IdentityInfo identityInfo,CategoryMapper categoryMapper){
- try{
- Constants.smsContent smsContent = Constants.smsContent.getSmsContent(type);
- Map<String,Object> tempParam = new HashMap<>();
- if(smsContent.getName().indexOf("time1")>=Constants.ZERO){
- tempParam.put("time1", DateUtil.formatDate(orders.getStartDate(),"yyyy-MM-dd")+" ");
- }
- if(smsContent.getName().indexOf("time2")>=Constants.ZERO){
- tempParam.put("time2", " "+DateUtil.formatDate(orders.getEndDate(),"yyyy-MM-dd"));
- }
- if(smsContent.getName().indexOf("money")>=Constants.ZERO){
- tempParam.put("money", new BigDecimal(orders.getReceiveAccount().toString()).divide(new BigDecimal("100"),2,BigDecimal.ROUND_HALF_UP)+"鍏�");
- }
- if(smsContent.getName().indexOf("distance")>=Constants.ZERO){
- tempParam.put("distance", distance +"km");
- }
- //璁よ瘉鐭俊 鐗规畩澶勭悊
- if(Constants.equalsInteger(smsContent.getKey(),Constants.smsContent.authentication.getKey())){
- //璁よ瘉绫诲瀷
- if(smsContent.getName().indexOf("authentication")>=Constants.ZERO){
- tempParam.put("authentication", Constants.equalsInteger(identityInfo.getAuthType(),Constants.ZERO)?"涓汉":identityInfo.getCompanyName());
- }
- if(smsContent.getName().indexOf("order")>=Constants.ZERO){
- tempParam.put("oeder", Constants.orderType.getName(identityInfo.getType()).replace("鍗�",""));
- }
- if(smsContent.getName().indexOf("status")>=Constants.ZERO){
- tempParam.put("status", Constants.equalsInteger(identityInfo.getAuditStatus(),Constants.TWO)?"宸查�氳繃":"鏈�氳繃");
- }
- }else{
- if(smsContent.getName().indexOf("order")>=Constants.ZERO){
- String order = "";
- //鏌ヨ璁㈠崟鐨勭被鍨嬩俊鎭�
- if(Constants.equalsInteger(orders.getType(),Constants.ZERO)){
- order = Constants.workType.getName(orders.getWorkType());
- Category category = categoryMapper.selectById(orders.getCategoryId());
- if(Objects.nonNull(category)){
- order = category.getName() + order;
- }
- }else if(Constants.equalsInteger(orders.getType(),Constants.ZERO)){
- order = "杩愯緭";
- Category category = categoryMapper.selectById(orders.getTransportTypeId());
- if(Objects.nonNull(category)){
- order = category.getName() + order;
- }
- }else{
- List<CateringDTO> cateringDTOList = JSONArray.parseArray(orders.getWayInfo(),CateringDTO.class);
- if(CollectionUtils.isNotEmpty(cateringDTOList)){
- for (CateringDTO cateringDTO:cateringDTOList) {
- if(StringUtils.isBlank(order)){
- order = cateringDTO.getName();
- }else{
- order = order + "/" +cateringDTO.getName();
- }
- }
- }
- }
- tempParam.put("order",order);
- }
- }
- if(smsContent.getName().indexOf("distance")>=Constants.ZERO){
- tempParam.put("distance", distance +"km");
- }
- AliSmsService.sendSms(phone,smsContent.getCode(), JSONObject.toJSONString(tempParam));
- }catch (Exception e){
- log.error("鐭俊鍙戦�佸け璐");
- }
-
- }
-
-
public static void main(String[] args) {
- Map<String,Object> tempParam = new HashMap<>();
+ Map<String,Object> tempParam = new java.util.HashMap<>();
tempParam.put("order","钁¤悇閲囨憳宸�");
tempParam.put("time1","07-23");
tempParam.put("time2","07-24");
@@ -158,8 +70,8 @@
request.setSignName(SING_NAME);
//蹇呭~:鐭俊妯℃澘-鍙湪鐭俊鎺у埗鍙颁腑鎵惧埌
request.setTemplateCode(templateCode);
- //鍙��:妯℃澘涓殑鍙橀噺鏇挎崲JSON涓�,濡傛ā鏉垮唴瀹逛负"浜茬埍鐨�${name},鎮ㄧ殑楠岃瘉鐮佷负${code}"鏃�,姝ゅ鐨勫�间负
- //鍙嬫儏鎻愮ず:濡傛灉JSON涓渶瑕佸甫鎹㈣绗�,璇峰弬鐓ф爣鍑嗙殑JSON鍗忚瀵规崲琛岀鐨勮姹�,姣斿鐭俊鍐呭涓寘鍚玕r\n鐨勬儏鍐靛湪JSON涓渶瑕佽〃绀烘垚\\r\\n,鍚﹀垯浼氬鑷碕SON鍦ㄦ湇鍔$瑙f瀽澶辫触
+ //鍙��:妯℃澘涓殑鍙橀噺鏇挎崲JSON涓�,濡傛ā鏉垮唴瀹逛负"浜茬埍鐨�${name},鎮ㄧ殑楠岃瘉鐮佷负${code}"鏃讹紝姝ゅ鐨勫�间负
+ //鍙嬫儏鎻愮ず:濡傛灉JSON涓渶瑕佸甫鎹㈣绗�,璇峰弬鐓ф爣鍑嗙殑JSON鍗忚瀵规崲琛岀鐨勮姹�,姣斿鐭俊鍐呭涓寘鍚玕r\n鐨勬儏鍐靛湪JSON涓渶瑕佽〃绀烘垚\\r\n,鍚﹀垯浼氬鑷碕SON鍦ㄦ湇鍔$瑙f瀽澶辫触
request.setTemplateParam(templateParam);
//鍙��-涓婅鐭俊鎵╁睍鐮�(鎵╁睍鐮佸瓧娈垫帶鍒跺湪7浣嶆垨浠ヤ笅锛屾棤鐗规畩闇�姹傜敤鎴疯蹇界暐姝ゅ瓧娈�)
//dto.setSmsUpExtendCode("90997");
diff --git a/server/services/src/main/java/com/doumee/service/business/AppVersionService.java b/server/services/src/main/java/com/doumee/service/business/AppVersionService.java
new file mode 100644
index 0000000..c9e58cb
--- /dev/null
+++ b/server/services/src/main/java/com/doumee/service/business/AppVersionService.java
@@ -0,0 +1,107 @@
+package com.doumee.service.business;
+
+import com.doumee.core.model.PageData;
+import com.doumee.core.model.PageWrap;
+import com.doumee.dao.business.model.AppVersion;
+
+import java.util.List;
+
+/**
+ * APP鐗堟湰Service瀹氫箟
+ * @author rk
+ * @date 2026/04/10
+ */
+public interface AppVersionService {
+
+ /**
+ * 鍒涘缓
+ *
+ * @param appVersion 瀹炰綋瀵硅薄
+ * @return Integer
+ */
+ Integer create(AppVersion appVersion);
+
+ /**
+ * 涓婚敭鍒犻櫎
+ *
+ * @param id 涓婚敭
+ */
+ void deleteById(Integer id);
+
+ /**
+ * 鍒犻櫎
+ *
+ * @param appVersion 瀹炰綋瀵硅薄
+ */
+ void delete(AppVersion appVersion);
+
+ /**
+ * 鎵归噺涓婚敭鍒犻櫎
+ *
+ * @param ids 涓婚敭闆�
+ */
+ void deleteByIdInBatch(List<Integer> ids);
+
+ /**
+ * 涓婚敭鏇存柊
+ *
+ * @param appVersion 瀹炰綋瀵硅薄
+ */
+ void updateById(AppVersion appVersion);
+
+ /**
+ * 鎵归噺涓婚敭鏇存柊
+ *
+ * @param appVersions 瀹炰綋闆�
+ */
+ void updateByIdInBatch(List<AppVersion> appVersions);
+
+ /**
+ * 涓婚敭鏌ヨ
+ *
+ * @param id 涓婚敭
+ * @return AppVersion
+ */
+ AppVersion findById(Integer id);
+
+ /**
+ * 鏉′欢鏌ヨ鍗曟潯璁板綍
+ *
+ * @param appVersion 瀹炰綋瀵硅薄
+ * @return AppVersion
+ */
+ AppVersion findOne(AppVersion appVersion);
+
+ /**
+ * 鏉′欢鏌ヨ
+ *
+ * @param appVersion 瀹炰綋瀵硅薄
+ * @return List<AppVersion>
+ */
+ List<AppVersion> findList(AppVersion appVersion);
+
+ /**
+ * 鍒嗛〉鏌ヨ
+ *
+ * @param pageWrap 鍒嗛〉瀵硅薄
+ * @return PageData<AppVersion>
+ */
+ PageData<AppVersion> findPage(PageWrap<AppVersion> pageWrap);
+
+ /**
+ * 鏉′欢缁熻
+ *
+ * @param appVersion 瀹炰綋瀵硅薄
+ * @return long
+ */
+ long count(AppVersion appVersion);
+
+ /**
+ * 鑾峰彇鏈�鏂版湁鏁堢殑APP鐗堟湰
+ *
+ * @param type 骞冲彴绫诲瀷 0=Android 1=IOS
+ * @return 鏈�鏂扮増鏈俊鎭�
+ */
+ AppVersion getLatestVersion(Integer type);
+
+}
diff --git a/server/services/src/main/java/com/doumee/service/business/OrderLogService.java b/server/services/src/main/java/com/doumee/service/business/OrderLogService.java
deleted file mode 100644
index 0cf42ee..0000000
--- a/server/services/src/main/java/com/doumee/service/business/OrderLogService.java
+++ /dev/null
@@ -1,97 +0,0 @@
-package com.doumee.service.business;
-
-import com.doumee.core.model.PageData;
-import com.doumee.core.model.PageWrap;
-import com.doumee.dao.business.model.OrderLog;
-import java.util.List;
-
-/**
- * 璁㈠崟鎿嶄綔鏃ュ織Service瀹氫箟
- * @author 姹熻箘韫�
- * @date 2025/07/09 12:00
- */
-public interface OrderLogService {
-
- /**
- * 鍒涘缓
- *
- * @param orderLog 瀹炰綋瀵硅薄
- * @return Integer
- */
- Integer create(OrderLog orderLog);
-
- /**
- * 涓婚敭鍒犻櫎
- *
- * @param id 涓婚敭
- */
- void deleteById(Integer id);
-
- /**
- * 鍒犻櫎
- *
- * @param orderLog 瀹炰綋瀵硅薄
- */
- void delete(OrderLog orderLog);
-
- /**
- * 鎵归噺涓婚敭鍒犻櫎
- *
- * @param ids 涓婚敭闆�
- */
- void deleteByIdInBatch(List<Integer> ids);
-
- /**
- * 涓婚敭鏇存柊
- *
- * @param orderLog 瀹炰綋瀵硅薄
- */
- void updateById(OrderLog orderLog);
-
- /**
- * 鎵归噺涓婚敭鏇存柊
- *
- * @param orderLogs 瀹炰綋闆�
- */
- void updateByIdInBatch(List<OrderLog> orderLogs);
-
- /**
- * 涓婚敭鏌ヨ
- *
- * @param id 涓婚敭
- * @return OrderLog
- */
- OrderLog findById(Integer id);
-
- /**
- * 鏉′欢鏌ヨ鍗曟潯璁板綍
- *
- * @param orderLog 瀹炰綋瀵硅薄
- * @return OrderLog
- */
- OrderLog findOne(OrderLog orderLog);
-
- /**
- * 鏉′欢鏌ヨ
- *
- * @param orderLog 瀹炰綋瀵硅薄
- * @return List<OrderLog>
- */
- List<OrderLog> findList(OrderLog orderLog);
-
- /**
- * 鍒嗛〉鏌ヨ
- *
- * @param pageWrap 鍒嗛〉瀵硅薄
- * @return PageData<OrderLog>
- */
- PageData<OrderLog> findPage(PageWrap<OrderLog> pageWrap);
-
- /**
- * 鏉′欢缁熻
- *
- * @param orderLog 瀹炰綋瀵硅薄
- * @return long
- */
- long count(OrderLog orderLog);
-}
diff --git a/server/services/src/main/java/com/doumee/service/business/OrdersDetailService.java b/server/services/src/main/java/com/doumee/service/business/OrdersDetailService.java
new file mode 100644
index 0000000..20ed30d
--- /dev/null
+++ b/server/services/src/main/java/com/doumee/service/business/OrdersDetailService.java
@@ -0,0 +1,100 @@
+package com.doumee.service.business;
+
+import com.doumee.core.model.PageData;
+import com.doumee.core.model.PageWrap;
+import com.doumee.dao.business.model.OrdersDetail;
+
+import java.util.List;
+
+/**
+ * 瀵勫瓨璁㈠崟鏄庣粏 Service瀹氫箟
+ *
+ * @author rk
+ * @date 2026/04/10
+ */
+public interface OrdersDetailService {
+
+ /**
+ * 鍒涘缓
+ *
+ * @param ordersDetail 瀹炰綋瀵硅薄
+ * @return Integer
+ */
+ Integer create(OrdersDetail ordersDetail);
+
+ /**
+ * 涓婚敭鍒犻櫎
+ *
+ * @param id 涓婚敭
+ */
+ void deleteById(Integer id);
+
+ /**
+ * 鍒犻櫎
+ *
+ * @param ordersDetail 瀹炰綋瀵硅薄
+ */
+ void delete(OrdersDetail ordersDetail);
+
+ /**
+ * 鎵归噺涓婚敭鍒犻櫎
+ *
+ * @param ids 涓婚敭闆�
+ */
+ void deleteByIdInBatch(List<Integer> ids);
+
+ /**
+ * 涓婚敭鏇存柊
+ *
+ * @param ordersDetail 瀹炰綋瀵硅薄
+ */
+ void updateById(OrdersDetail ordersDetail);
+
+ /**
+ * 鎵归噺涓婚敭鏇存柊
+ *
+ * @param ordersDetails 瀹炰綋闆�
+ */
+ void updateByIdInBatch(List<OrdersDetail> ordersDetails);
+
+ /**
+ * 涓婚敭鏌ヨ
+ *
+ * @param id 涓婚敭
+ * @return OrdersDetail
+ */
+ OrdersDetail findById(Integer id);
+
+ /**
+ * 鏉′欢鏌ヨ鍗曟潯璁板綍
+ *
+ * @param ordersDetail 瀹炰綋瀵硅薄
+ * @return OrdersDetail
+ */
+ OrdersDetail findOne(OrdersDetail ordersDetail);
+
+ /**
+ * 鏉′欢鏌ヨ
+ *
+ * @param ordersDetail 瀹炰綋瀵硅薄
+ * @return List<OrdersDetail>
+ */
+ List<OrdersDetail> findList(OrdersDetail ordersDetail);
+
+ /**
+ * 鍒嗛〉鏌ヨ
+ *
+ * @param pageWrap 鍒嗛〉瀵硅薄
+ * @return PageData<OrdersDetail>
+ */
+ PageData<OrdersDetail> findPage(PageWrap<OrdersDetail> pageWrap);
+
+ /**
+ * 鏉′欢缁熻
+ *
+ * @param ordersDetail 瀹炰綋瀵硅薄
+ * @return long
+ */
+ long count(OrdersDetail ordersDetail);
+
+}
diff --git a/server/services/src/main/java/com/doumee/service/business/OrdersService.java b/server/services/src/main/java/com/doumee/service/business/OrdersService.java
index f2695ea..c33fe57 100644
--- a/server/services/src/main/java/com/doumee/service/business/OrdersService.java
+++ b/server/services/src/main/java/com/doumee/service/business/OrdersService.java
@@ -1,30 +1,25 @@
package com.doumee.service.business;
-import com.doumee.core.model.LoginUserInfo;
import com.doumee.core.model.PageData;
import com.doumee.core.model.PageWrap;
-import com.doumee.dao.business.model.Member;
import com.doumee.dao.business.model.Orders;
-import com.doumee.dao.dto.*;
-import com.doumee.dao.vo.OrderReleaseVO;
-import com.wechat.pay.java.service.refund.model.RefundNotification;
import java.util.List;
/**
- * 璁㈠崟淇℃伅璁板綍Service瀹氫箟
- * @author 姹熻箘韫�
- * @date 2025/07/09 12:00
+ * 瀵勫瓨璁㈠崟淇℃伅Service瀹氫箟
+ * @author rk
+ * @date 2026/04/10
*/
public interface OrdersService {
/**
* 鍒涘缓
- *
+ *
* @param orders 瀹炰綋瀵硅薄
* @return Integer
*/
- OrderReleaseVO create(Orders orders);
+ Integer create(Orders orders);
/**
* 涓婚敭鍒犻櫎
@@ -52,15 +47,14 @@
*
* @param orders 瀹炰綋瀵硅薄
*/
-// void updateById(Orders orders);
+ void updateById(Orders orders);
- void update(Orders orders);
/**
* 鎵归噺涓婚敭鏇存柊
*
- * @param orderss 瀹炰綋闆�
+ * @param ordersList 瀹炰綋闆�
*/
- void updateByIdInBatch(List<Orders> orderss);
+ void updateByIdInBatch(List<Orders> ordersList);
/**
* 涓婚敭鏌ヨ
@@ -85,7 +79,7 @@
* @return List<Orders>
*/
List<Orders> findList(Orders orders);
-
+
/**
* 鍒嗛〉鏌ヨ
*
@@ -102,56 +96,4 @@
*/
long count(Orders orders);
- void accept(Integer orderId, Member member);
-
- void begin(Integer orderId,Member member);
-
-// void updOrderData(UpdOrderDataDTO updOrderDataDTO);
-//
- void confirmUpd(ConfirmUpdOrderDTO confirmUpdOrderDTO);
-
- /**
- * 璁㈠崟鍙栨秷鍓嶇疆鎻愮ず
- * @param orderId
- * @param member
- * @return
- */
- String cancelTips(Integer orderId,Member member);
-
- void cancelOrder(Integer orderId,Member member);
-
- OrderReleaseVO doneOrder(DoneOrderDTO doneOrderDTO);
-
- void comment(CommentDTO commentDTO);
-
- /**
- * 鏀粯鍥炶皟涓氬姟
- * @param preOrderId
- * @return
- */
- String payNotify(String preOrderId,String paymentNo);
-
- void platformCancel(Integer orderId, LoginUserInfo loginUserInfo);
-
- PageData<Orders> findPageForMini(PageWrap<Orders> pageWrap);
-
- Orders getDetail(Integer id,Member member);
-
- void refundCallback(RefundNotification refundNotification);
-
- void autoComment();
-
- void autoConfirm();
-
- Long getTotal(Orders orders);
-
- void autoGrabOrders();
-
- void initializeCode();
-
- OrderReleaseVO reusePay(ReusePayDTO reusePayDTO);
-
- void confirmFee(ConfirmFeeOrderDTO orders);
-
- void autoCancelWaitPay();
}
diff --git a/server/services/src/main/java/com/doumee/service/business/RevenueService.java b/server/services/src/main/java/com/doumee/service/business/RevenueService.java
new file mode 100644
index 0000000..48653ec
--- /dev/null
+++ b/server/services/src/main/java/com/doumee/service/business/RevenueService.java
@@ -0,0 +1,99 @@
+package com.doumee.service.business;
+
+import com.doumee.core.model.PageData;
+import com.doumee.core.model.PageWrap;
+import com.doumee.dao.business.model.Revenue;
+
+import java.util.List;
+
+/**
+ * 鏀舵敮璁板綍Service瀹氫箟
+ * @author rk
+ * @date 2026/04/10
+ */
+public interface RevenueService {
+
+ /**
+ * 鍒涘缓
+ *
+ * @param revenue 瀹炰綋瀵硅薄
+ * @return Integer
+ */
+ Integer create(Revenue revenue);
+
+ /**
+ * 涓婚敭鍒犻櫎
+ *
+ * @param id 涓婚敭
+ */
+ void deleteById(Integer id);
+
+ /**
+ * 鍒犻櫎
+ *
+ * @param revenue 瀹炰綋瀵硅薄
+ */
+ void delete(Revenue revenue);
+
+ /**
+ * 鎵归噺涓婚敭鍒犻櫎
+ *
+ * @param ids 涓婚敭闆�
+ */
+ void deleteByIdInBatch(List<Integer> ids);
+
+ /**
+ * 涓婚敭鏇存柊
+ *
+ * @param revenue 瀹炰綋瀵硅薄
+ */
+ void updateById(Revenue revenue);
+
+ /**
+ * 鎵归噺涓婚敭鏇存柊
+ *
+ * @param revenues 瀹炰綋闆�
+ */
+ void updateByIdInBatch(List<Revenue> revenues);
+
+ /**
+ * 涓婚敭鏌ヨ
+ *
+ * @param id 涓婚敭
+ * @return Revenue
+ */
+ Revenue findById(Integer id);
+
+ /**
+ * 鏉′欢鏌ヨ鍗曟潯璁板綍
+ *
+ * @param revenue 瀹炰綋瀵硅薄
+ * @return Revenue
+ */
+ Revenue findOne(Revenue revenue);
+
+ /**
+ * 鏉′欢鏌ヨ
+ *
+ * @param revenue 瀹炰綋瀵硅薄
+ * @return List<Revenue>
+ */
+ List<Revenue> findList(Revenue revenue);
+
+ /**
+ * 鍒嗛〉鏌ヨ
+ *
+ * @param pageWrap 鍒嗛〉瀵硅薄
+ * @return PageData<Revenue>
+ */
+ PageData<Revenue> findPage(PageWrap<Revenue> pageWrap);
+
+ /**
+ * 鏉′欢缁熻
+ *
+ * @param revenue 瀹炰綋瀵硅薄
+ * @return long
+ */
+ long count(Revenue revenue);
+
+}
diff --git a/server/services/src/main/java/com/doumee/service/business/ShopInfoService.java b/server/services/src/main/java/com/doumee/service/business/ShopInfoService.java
index 8114534..d7b24e0 100644
--- a/server/services/src/main/java/com/doumee/service/business/ShopInfoService.java
+++ b/server/services/src/main/java/com/doumee/service/business/ShopInfoService.java
@@ -3,6 +3,13 @@
import com.doumee.core.model.PageData;
import com.doumee.core.model.PageWrap;
import com.doumee.dao.business.model.ShopInfo;
+import com.doumee.dao.business.model.Member;
+import com.doumee.dao.dto.AuditDTO;
+import com.doumee.dao.dto.ChangeStatusDTO;
+import com.doumee.dao.dto.ResetPasswordDTO;
+import com.doumee.dao.dto.ShopApplyDTO;
+import com.doumee.dao.dto.ShopUpdateDTO;
+import com.doumee.dao.vo.ShopDetailVO;
import java.util.List;
@@ -96,4 +103,49 @@
*/
long count(ShopInfo shopInfo);
+ /**
+ * 闂ㄥ簵鍏ラ┗鐢宠/淇敼
+ * @param request 鐢宠璇锋眰
+ * @param member 褰撳墠鐧诲綍浼氬憳
+ */
+ void applyShop(ShopApplyDTO request, Member member);
+
+ /**
+ * 鏌ヨ闂ㄥ簵璇︽儏锛堝惈闄勪欢锛�
+ * @param shopId 闂ㄥ簵涓婚敭
+ * @return 闂ㄥ簵璇︽儏
+ */
+ ShopDetailVO getShopDetail(Integer shopId);
+
+ /**
+ * 鏌ヨ褰撳墠浼氬憳鐨勯棬搴椾俊鎭�
+ * @param memberId 浼氬憳涓婚敭
+ * @return 闂ㄥ簵璇︽儏锛屾棤鍒欒繑鍥瀗ull
+ */
+ ShopDetailVO getMyShop(Integer memberId);
+
+ /**
+ * 瀹℃壒闂ㄥ簵鐢宠
+ * @param auditDTO 瀹℃壒璇锋眰
+ */
+ void auditShop(AuditDTO auditDTO);
+
+ /**
+ * 淇敼闂ㄥ簵鐘舵�侊紙鍚敤/绂佺敤锛�
+ * @param dto 淇敼鐘舵�佽姹�
+ */
+ void changeStatus(ChangeStatusDTO dto);
+
+ /**
+ * 閲嶇疆闂ㄥ簵瀵嗙爜锛堟墜鏈哄彿鍚�6浣� + @123456锛�
+ * @param dto 閲嶇疆瀵嗙爜璇锋眰
+ */
+ void resetPassword(ResetPasswordDTO dto);
+
+ /**
+ * 鍚庡彴淇敼闂ㄥ簵淇℃伅
+ * @param dto 淇敼璇锋眰
+ */
+ void updateShop(ShopUpdateDTO dto);
+
}
diff --git a/server/services/src/main/java/com/doumee/service/business/WithdrawalOrdersService.java b/server/services/src/main/java/com/doumee/service/business/WithdrawalOrdersService.java
index 53ebbc0..f3a6ed2 100644
--- a/server/services/src/main/java/com/doumee/service/business/WithdrawalOrdersService.java
+++ b/server/services/src/main/java/com/doumee/service/business/WithdrawalOrdersService.java
@@ -3,20 +3,19 @@
import com.doumee.core.model.PageData;
import com.doumee.core.model.PageWrap;
import com.doumee.dao.business.model.WithdrawalOrders;
-import com.doumee.dao.dto.WithdrawalDTO;
import java.util.List;
/**
* 鎻愮幇鐢宠璁板綍Service瀹氫箟
- * @author 姹熻箘韫�
- * @date 2025/07/09 12:00
+ * @author rk
+ * @date 2026/04/10
*/
public interface WithdrawalOrdersService {
/**
* 鍒涘缓
- *
+ *
* @param withdrawalOrders 瀹炰綋瀵硅薄
* @return Integer
*/
@@ -53,9 +52,9 @@
/**
* 鎵归噺涓婚敭鏇存柊
*
- * @param withdrawalOrderss 瀹炰綋闆�
+ * @param withdrawalOrdersList 瀹炰綋闆�
*/
- void updateByIdInBatch(List<WithdrawalOrders> withdrawalOrderss);
+ void updateByIdInBatch(List<WithdrawalOrders> withdrawalOrdersList);
/**
* 涓婚敭鏌ヨ
@@ -80,7 +79,7 @@
* @return List<WithdrawalOrders>
*/
List<WithdrawalOrders> findList(WithdrawalOrders withdrawalOrders);
-
+
/**
* 鍒嗛〉鏌ヨ
*
@@ -96,8 +95,5 @@
* @return long
*/
long count(WithdrawalOrders withdrawalOrders);
-
-
- void transferSuccess(String outBillNo,Boolean isSuccess);
}
diff --git a/server/services/src/main/java/com/doumee/service/business/impl/AppVersionServiceImpl.java b/server/services/src/main/java/com/doumee/service/business/impl/AppVersionServiceImpl.java
new file mode 100644
index 0000000..814ee65
--- /dev/null
+++ b/server/services/src/main/java/com/doumee/service/business/impl/AppVersionServiceImpl.java
@@ -0,0 +1,179 @@
+package com.doumee.service.business.impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.doumee.core.constants.Constants;
+import com.doumee.core.constants.ResponseStatus;
+import com.doumee.core.exception.BusinessException;
+import com.doumee.core.model.PageData;
+import com.doumee.core.model.PageWrap;
+import com.doumee.core.utils.Utils;
+import com.doumee.dao.business.AppVersionMapper;
+import com.doumee.dao.business.model.AppVersion;
+import com.doumee.service.business.AppVersionService;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+import java.util.Objects;
+
+/**
+ * APP鐗堟湰Service瀹炵幇
+ * @author rk
+ * @date 2026/04/10
+ */
+@Service
+public class AppVersionServiceImpl implements AppVersionService {
+
+ @Autowired
+ private AppVersionMapper appVersionMapper;
+
+ @Override
+ public Integer create(AppVersion appVersion) {
+ if (StringUtils.isBlank(appVersion.getVersionInfo())
+ || StringUtils.isBlank(appVersion.getFileUrl())
+ || StringUtils.isBlank(appVersion.getName())
+ || StringUtils.isBlank(appVersion.getContent())
+ || StringUtils.isBlank(appVersion.getTitle())
+ || Objects.isNull(appVersion.getIsForce())
+ || Objects.isNull(appVersion.getType())
+ || Objects.isNull(appVersion.getFileSize())
+ || Objects.isNull(appVersion.getVersionNum())) {
+ throw new BusinessException(ResponseStatus.BAD_REQUEST);
+ }
+ appVersionMapper.insert(appVersion);
+ return appVersion.getId();
+ }
+
+ @Override
+ public void deleteById(Integer id) {
+ appVersionMapper.update(new UpdateWrapper<AppVersion>().lambda()
+ .set(AppVersion::getDeleted, Constants.ONE)
+ .eq(AppVersion::getId, id));
+ }
+
+ @Override
+ public void delete(AppVersion appVersion) {
+ UpdateWrapper<AppVersion> deleteWrapper = new UpdateWrapper<>(appVersion);
+ appVersionMapper.delete(deleteWrapper);
+ }
+
+ @Override
+ public void deleteByIdInBatch(List<Integer> ids) {
+ if (ids == null || ids.isEmpty()) {
+ return;
+ }
+ appVersionMapper.deleteBatchIds(ids);
+ }
+
+ @Override
+ public void updateById(AppVersion appVersion) {
+ appVersionMapper.updateById(appVersion);
+ }
+
+ @Override
+ public void updateByIdInBatch(List<AppVersion> appVersions) {
+ if (appVersions == null || appVersions.isEmpty()) {
+ return;
+ }
+ for (AppVersion appVersion : appVersions) {
+ this.updateById(appVersion);
+ }
+ }
+
+ @Override
+ public AppVersion findById(Integer id) {
+ AppVersion appVersion = appVersionMapper.selectById(id);
+ if (Objects.isNull(appVersion)) {
+ throw new BusinessException(ResponseStatus.DATA_EMPTY);
+ }
+ return appVersion;
+ }
+
+ @Override
+ public AppVersion findOne(AppVersion appVersion) {
+ QueryWrapper<AppVersion> wrapper = new QueryWrapper<>(appVersion);
+ return appVersionMapper.selectOne(wrapper);
+ }
+
+ @Override
+ public List<AppVersion> findList(AppVersion appVersion) {
+ QueryWrapper<AppVersion> wrapper = new QueryWrapper<>(appVersion);
+ return appVersionMapper.selectList(wrapper);
+ }
+
+ @Override
+ public PageData<AppVersion> findPage(PageWrap<AppVersion> pageWrap) {
+ IPage<AppVersion> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
+ QueryWrapper<AppVersion> queryWrapper = new QueryWrapper<>();
+ Utils.MP.blankToNull(pageWrap.getModel());
+ pageWrap.getModel().setDeleted(Constants.ZERO);
+ if (pageWrap.getModel().getId() != null) {
+ queryWrapper.lambda().eq(AppVersion::getId, pageWrap.getModel().getId());
+ }
+ if (pageWrap.getModel().getDeleted() != null) {
+ queryWrapper.lambda().eq(AppVersion::getDeleted, pageWrap.getModel().getDeleted());
+ }
+ if (pageWrap.getModel().getCreateUser() != null) {
+ queryWrapper.lambda().eq(AppVersion::getCreateUser, pageWrap.getModel().getCreateUser());
+ }
+ if (pageWrap.getModel().getCreateTime() != null) {
+ queryWrapper.lambda().ge(AppVersion::getCreateTime, Utils.Date.getStart(pageWrap.getModel().getCreateTime()));
+ queryWrapper.lambda().le(AppVersion::getCreateTime, Utils.Date.getEnd(pageWrap.getModel().getCreateTime()));
+ }
+ if (pageWrap.getModel().getUpdateUser() != null) {
+ queryWrapper.lambda().eq(AppVersion::getUpdateUser, pageWrap.getModel().getUpdateUser());
+ }
+ if (pageWrap.getModel().getUpdateTime() != null) {
+ queryWrapper.lambda().ge(AppVersion::getUpdateTime, Utils.Date.getStart(pageWrap.getModel().getUpdateTime()));
+ queryWrapper.lambda().le(AppVersion::getUpdateTime, Utils.Date.getEnd(pageWrap.getModel().getUpdateTime()));
+ }
+ if (pageWrap.getModel().getRemark() != null) {
+ queryWrapper.lambda().eq(AppVersion::getRemark, pageWrap.getModel().getRemark());
+ }
+ if (pageWrap.getModel().getVersionInfo() != null) {
+ queryWrapper.lambda().like(AppVersion::getVersionInfo, pageWrap.getModel().getVersionInfo());
+ }
+ if (pageWrap.getModel().getName() != null) {
+ queryWrapper.lambda().like(AppVersion::getName, pageWrap.getModel().getName());
+ }
+ if (pageWrap.getModel().getTitle() != null) {
+ queryWrapper.lambda().like(AppVersion::getTitle, pageWrap.getModel().getTitle());
+ }
+ if (pageWrap.getModel().getIsForce() != null) {
+ queryWrapper.lambda().eq(AppVersion::getIsForce, pageWrap.getModel().getIsForce());
+ }
+ if (pageWrap.getModel().getType() != null) {
+ queryWrapper.lambda().eq(AppVersion::getType, pageWrap.getModel().getType());
+ }
+ for (PageWrap.SortData sortData : pageWrap.getSorts()) {
+ if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) {
+ queryWrapper.orderByDesc(sortData.getProperty());
+ } else {
+ queryWrapper.orderByAsc(sortData.getProperty());
+ }
+ }
+ return PageData.from(appVersionMapper.selectPage(page, queryWrapper));
+ }
+
+ @Override
+ public long count(AppVersion appVersion) {
+ QueryWrapper<AppVersion> wrapper = new QueryWrapper<>(appVersion);
+ return appVersionMapper.selectCount(wrapper);
+ }
+
+ @Override
+ public AppVersion getLatestVersion(Integer type) {
+ QueryWrapper<AppVersion> qw = new QueryWrapper<>();
+ qw.lambda()
+ .eq(AppVersion::getDeleted, Constants.ZERO)
+ .eq(AppVersion::getType, type)
+ .orderByDesc(AppVersion::getVersionNum)
+ .last("limit 1");
+ return appVersionMapper.selectOne(qw);
+ }
+
+}
diff --git a/server/services/src/main/java/com/doumee/service/business/impl/CategoryServiceImpl.java b/server/services/src/main/java/com/doumee/service/business/impl/CategoryServiceImpl.java
index 56d9001..5fb7a02 100644
--- a/server/services/src/main/java/com/doumee/service/business/impl/CategoryServiceImpl.java
+++ b/server/services/src/main/java/com/doumee/service/business/impl/CategoryServiceImpl.java
@@ -52,24 +52,17 @@
if(Objects.isNull(category)
|| Objects.isNull(category.getType())
|| Objects.isNull(category.getName())
- || (!Constants.equalsInteger(category.getType(),Constants.ZERO)&& CollectionUtils.isEmpty(category.getDetailList()))
- || (Constants.equalsInteger(category.getType(),Constants.ONE) && (Objects.isNull(category.getIcon())||Objects.isNull(category.getIsFixed())) )
+ || StringUtils.isBlank(category.getDetail())
){
throw new BusinessException(ResponseStatus.BAD_REQUEST);
}
+ validateByType(category);
LoginUserInfo loginUserInfo = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
category.setDeleted(Constants.ZERO);
category.setCreateTime(new Date());
category.setCreateUser(loginUserInfo.getId());
category.setUpdateTime(new Date());
category.setUpdateUser(loginUserInfo.getId());
- if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(category.getDetailList())
- && !Constants.equalsInteger(category.getType(),Constants.THREE)){
- category.setDetail(category.getDetailList().toJSONString());
- }
- if(!Constants.equalsInteger(category.getType(),Constants.ONE)){
- category.setIsFixed(Constants.ZERO);
- }
categoryMapper.insert(category);
return category.getId();
}
@@ -102,19 +95,14 @@
|| Objects.isNull(category.getId())
|| Objects.isNull(category.getType())
|| Objects.isNull(category.getName())
- || (!Constants.equalsInteger(category.getType(),Constants.ZERO)&& CollectionUtils.isEmpty(category.getDetailList()))
- || (Constants.equalsInteger(category.getType(),Constants.ONE) && (Objects.isNull(category.getIcon())||Objects.isNull(category.getIsFixed())) )
+ || StringUtils.isBlank(category.getDetail())
){
throw new BusinessException(ResponseStatus.BAD_REQUEST);
}
+ validateByType(category);
LoginUserInfo loginUserInfo = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
category.setUpdateTime(new Date());
- category.setIsFixed(null);
category.setUpdateUser(loginUserInfo.getId());
- if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(category.getDetailList())
- && !Constants.equalsInteger(category.getType(),Constants.THREE)){
- category.setDetail(category.getDetailList().toJSONString());
- }
categoryMapper.updateById(category);
}
@Override
@@ -125,11 +113,7 @@
}
LoginUserInfo loginUserInfo = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
category.setUpdateTime(new Date());
- category.setIsFixed(null);
category.setUpdateUser(loginUserInfo.getId());
- if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(category.getDetailList())){
- category.setDetail(category.getDetailList().toJSONString());
- }
categoryMapper.updateById(category);
}
@@ -148,9 +132,6 @@
Category category = categoryMapper.selectById(id);
if(Objects.isNull(category)){
throw new BusinessException(ResponseStatus.DATA_EMPTY);
- }
- if(StringUtils.isNotBlank(category.getDetail())){
- category.setDetailList(JSONArray.parseArray(category.getDetail()));
}
if(StringUtils.isNotBlank(category.getIcon())){
String path = systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.RESOURCE_PATH).getCode()
@@ -219,9 +200,6 @@
if (pageWrap.getModel().getIcon() != null) {
queryWrapper.eq(Category::getIcon, pageWrap.getModel().getIcon());
}
- if (pageWrap.getModel().getIsFixed() != null) {
- queryWrapper.eq(Category::getIsFixed, pageWrap.getModel().getIsFixed());
- }
queryWrapper.orderByAsc(Category::getSortnum);
PageData<Category> result =PageData.from(categoryMapper.selectJoinPage(page, Category.class,queryWrapper));
if(result!=null && result.getRecords()!=null){
@@ -229,9 +207,6 @@
+systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.CATEGORY_FILES).getCode();
for(Category cate : result.getRecords()){
try {
- if(StringUtils.isNotBlank(cate.getDetail())){
- cate.setDetailList(JSONArray.parseArray(cate.getDetail()));
- }
if(StringUtils.isNotBlank(cate.getIcon())){
cate.setIconFull(path + cate.getIcon());
}
@@ -259,9 +234,6 @@
String path = systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.RESOURCE_PATH).getCode()
+systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.CATEGORY_FILES).getCode();
for (Category category:categoryList) {
- if(StringUtils.isNotBlank(category.getDetail())){
- category.setDetailList(JSONArray.parseArray(category.getDetail()));
- }
if(StringUtils.isNotBlank(category.getIcon())){
category.setIconFull(path + category.getIcon());
}
@@ -270,5 +242,20 @@
return categoryList;
}
+ private void validateByType(Category category) {
+ if (Constants.equalsInteger(category.getType(), Constants.ONE)) {
+ if (StringUtils.isBlank(category.getOtherField())) {
+ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "杞﹁締绫诲瀷蹇呴』濉啓闄勫睘瀛楁");
+ }
+ } else if (Constants.equalsInteger(category.getType(), Constants.TWO)) {
+ if (Objects.isNull(category.getRelationId())) {
+ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "鐗╁搧鍒嗙被蹇呴』閫夋嫨鍏宠仈鐗╁搧绛夌骇");
+ }
+ } else if (Constants.equalsInteger(category.getType(), Constants.FOUR)) {
+ if (StringUtils.isBlank(category.getIcon())) {
+ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "鐗╁搧灏哄蹇呴』涓婁紶鍥炬爣");
+ }
+ }
+ }
}
diff --git a/server/services/src/main/java/com/doumee/service/business/impl/IdentityInfoServiceImpl.java b/server/services/src/main/java/com/doumee/service/business/impl/IdentityInfoServiceImpl.java
index fd591be..93068ad 100644
--- a/server/services/src/main/java/com/doumee/service/business/impl/IdentityInfoServiceImpl.java
+++ b/server/services/src/main/java/com/doumee/service/business/impl/IdentityInfoServiceImpl.java
@@ -486,10 +486,5 @@
sendWxMessage.identityInfoMessage(member.getOpenid(),identityInfo);
}
- //鐭俊閫氱煡
- aliSmsService.businessSendSms(Constants.smsContent.authentication.getKey(),
- member.getTelephone(),null,null,
- identityInfo,categoryMapper);
-
}
}
diff --git a/server/services/src/main/java/com/doumee/service/business/impl/MemberRevenueServiceImpl.java b/server/services/src/main/java/com/doumee/service/business/impl/MemberRevenueServiceImpl.java
index a24c980..bdeeffe 100644
--- a/server/services/src/main/java/com/doumee/service/business/impl/MemberRevenueServiceImpl.java
+++ b/server/services/src/main/java/com/doumee/service/business/impl/MemberRevenueServiceImpl.java
@@ -7,7 +7,6 @@
import com.doumee.dao.business.MemberRevenueMapper;
import com.doumee.dao.business.model.Member;
import com.doumee.dao.business.model.MemberRevenue;
-import com.doumee.dao.business.model.Orders;
import com.doumee.service.business.MemberRevenueService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
@@ -98,9 +97,7 @@
.selectAs(Member::getName,MemberRevenue::getMemberName)
.selectAs(Member::getNickName,MemberRevenue::getMemberNickname)
.selectAs(Member::getTelephone,MemberRevenue::getMemberPhone)
- .selectAs(Orders::getWorkType,MemberRevenue::getWorkType)
- .leftJoin(Member.class,Member::getId,MemberRevenue::getMemberId)
- .leftJoin(Orders.class,Orders::getId,MemberRevenue::getObjId);
+ .leftJoin(Member.class,Member::getId,MemberRevenue::getMemberId);
Utils.MP.blankToNull(pageWrap.getModel());
pageWrap.getModel().setDeleted(Constants.ZERO);
queryWrapper.eq(pageWrap.getModel().getId() != null,MemberRevenue::getId, pageWrap.getModel().getId());
@@ -120,7 +117,7 @@
PageData<MemberRevenue> result = PageData.from(memberRevenueMapper.selectJoinPage(page,MemberRevenue.class, queryWrapper));
if(result!=null && result.getRecords()!=null){
for(MemberRevenue model :result.getRecords()){
- model.setTypeName(Constants.RevenueType.getObjName(model.getType()));
+ model.setTypeName(null);
model.setAmountInfo(Constants.getFormatMoney(model.getAmount()));
}
}
diff --git a/server/services/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java b/server/services/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java
index 33dc998..fffe79b 100644
--- a/server/services/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java
+++ b/server/services/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java
@@ -14,11 +14,9 @@
import com.doumee.core.utils.Utils;
import com.doumee.dao.business.IdentityInfoMapper;
import com.doumee.dao.business.MemberMapper;
-import com.doumee.dao.business.OrdersMapper;
import com.doumee.dao.business.model.IdentityInfo;
import com.doumee.dao.business.model.Member;
import com.doumee.dao.business.model.MemberRevenue;
-import com.doumee.dao.business.model.Orders;
import com.doumee.dao.dto.WxPhoneRequest;
import com.doumee.dao.vo.AccountResponse;
import com.doumee.dao.vo.UserCenterVO;
@@ -59,9 +57,6 @@
@Autowired
private IdentityInfoMapper identityInfoMapper;
-
- @Autowired
- private OrdersMapper ordersMapper;
@Autowired
private JwtTokenUtil jwtTokenUtil;
diff --git a/server/services/src/main/java/com/doumee/service/business/impl/OrderLogServiceImpl.java b/server/services/src/main/java/com/doumee/service/business/impl/OrderLogServiceImpl.java
deleted file mode 100644
index 945b237..0000000
--- a/server/services/src/main/java/com/doumee/service/business/impl/OrderLogServiceImpl.java
+++ /dev/null
@@ -1,154 +0,0 @@
-package com.doumee.service.business.impl;
-
-import com.doumee.core.model.PageData;
-import com.doumee.core.model.PageWrap;
-import com.doumee.core.utils.Utils;
-import com.doumee.dao.business.OrderLogMapper;
-import com.doumee.dao.business.model.OrderLog;
-import com.doumee.service.business.OrderLogService;
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
-import com.baomidou.mybatisplus.core.metadata.IPage;
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Service;
-import org.springframework.util.CollectionUtils;
-
-import java.util.List;
-
-/**
- * 璁㈠崟鎿嶄綔鏃ュ織Service瀹炵幇
- * @author 姹熻箘韫�
- * @date 2025/07/09 12:00
- */
-@Service
-public class OrderLogServiceImpl implements OrderLogService {
-
- @Autowired
- private OrderLogMapper orderLogMapper;
-
- @Override
- public Integer create(OrderLog orderLog) {
- orderLogMapper.insert(orderLog);
- return orderLog.getId();
- }
-
- @Override
- public void deleteById(Integer id) {
- orderLogMapper.deleteById(id);
- }
-
- @Override
- public void delete(OrderLog orderLog) {
- UpdateWrapper<OrderLog> deleteWrapper = new UpdateWrapper<>(orderLog);
- orderLogMapper.delete(deleteWrapper);
- }
-
- @Override
- public void deleteByIdInBatch(List<Integer> ids) {
- if (CollectionUtils.isEmpty(ids)) {
- return;
- }
- orderLogMapper.deleteBatchIds(ids);
- }
-
- @Override
- public void updateById(OrderLog orderLog) {
- orderLogMapper.updateById(orderLog);
- }
-
- @Override
- public void updateByIdInBatch(List<OrderLog> orderLogs) {
- if (CollectionUtils.isEmpty(orderLogs)) {
- return;
- }
- for (OrderLog orderLog: orderLogs) {
- this.updateById(orderLog);
- }
- }
-
- @Override
- public OrderLog findById(Integer id) {
- return orderLogMapper.selectById(id);
- }
-
- @Override
- public OrderLog findOne(OrderLog orderLog) {
- QueryWrapper<OrderLog> wrapper = new QueryWrapper<>(orderLog);
- return orderLogMapper.selectOne(wrapper);
- }
-
- @Override
- public List<OrderLog> findList(OrderLog orderLog) {
- QueryWrapper<OrderLog> wrapper = new QueryWrapper<>(orderLog);
- return orderLogMapper.selectList(wrapper);
- }
-
- @Override
- public PageData<OrderLog> findPage(PageWrap<OrderLog> pageWrap) {
- IPage<OrderLog> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
- QueryWrapper<OrderLog> queryWrapper = new QueryWrapper<>();
- Utils.MP.blankToNull(pageWrap.getModel());
- if (pageWrap.getModel().getId() != null) {
- queryWrapper.lambda().eq(OrderLog::getId, pageWrap.getModel().getId());
- }
- if (pageWrap.getModel().getDeleted() != null) {
- queryWrapper.lambda().eq(OrderLog::getDeleted, pageWrap.getModel().getDeleted());
- }
- if (pageWrap.getModel().getCreateUser() != null) {
- queryWrapper.lambda().eq(OrderLog::getCreateUser, pageWrap.getModel().getCreateUser());
- }
- if (pageWrap.getModel().getCreateTime() != null) {
- queryWrapper.lambda().ge(OrderLog::getCreateTime, Utils.Date.getStart(pageWrap.getModel().getCreateTime()));
- queryWrapper.lambda().le(OrderLog::getCreateTime, Utils.Date.getEnd(pageWrap.getModel().getCreateTime()));
- }
- if (pageWrap.getModel().getUpdateUser() != null) {
- queryWrapper.lambda().eq(OrderLog::getUpdateUser, pageWrap.getModel().getUpdateUser());
- }
- if (pageWrap.getModel().getUpdateTime() != null) {
- queryWrapper.lambda().ge(OrderLog::getUpdateTime, Utils.Date.getStart(pageWrap.getModel().getUpdateTime()));
- queryWrapper.lambda().le(OrderLog::getUpdateTime, Utils.Date.getEnd(pageWrap.getModel().getUpdateTime()));
- }
- if (pageWrap.getModel().getRemark() != null) {
- queryWrapper.lambda().eq(OrderLog::getRemark, pageWrap.getModel().getRemark());
- }
- if (pageWrap.getModel().getOrderId() != null) {
- queryWrapper.lambda().eq(OrderLog::getOrderId, pageWrap.getModel().getOrderId());
- }
- if (pageWrap.getModel().getTitle() != null) {
- queryWrapper.lambda().eq(OrderLog::getTitle, pageWrap.getModel().getTitle());
- }
- if (pageWrap.getModel().getLogInfo() != null) {
- queryWrapper.lambda().eq(OrderLog::getLogInfo, pageWrap.getModel().getLogInfo());
- }
- if (pageWrap.getModel().getObjType() != null) {
- queryWrapper.lambda().eq(OrderLog::getObjType, pageWrap.getModel().getObjType());
- }
- if (pageWrap.getModel().getMemberId() != null) {
- queryWrapper.lambda().eq(OrderLog::getMemberId, pageWrap.getModel().getMemberId());
- }
- if (pageWrap.getModel().getBeforeInfo() != null) {
- queryWrapper.lambda().eq(OrderLog::getBeforeInfo, pageWrap.getModel().getBeforeInfo());
- }
- if (pageWrap.getModel().getAfterInfo() != null) {
- queryWrapper.lambda().eq(OrderLog::getAfterInfo, pageWrap.getModel().getAfterInfo());
- }
- if (pageWrap.getModel().getOrderStatus() != null) {
- queryWrapper.lambda().eq(OrderLog::getOrderStatus, pageWrap.getModel().getOrderStatus());
- }
- for(PageWrap.SortData sortData: pageWrap.getSorts()) {
- if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) {
- queryWrapper.orderByDesc(sortData.getProperty());
- } else {
- queryWrapper.orderByAsc(sortData.getProperty());
- }
- }
- return PageData.from(orderLogMapper.selectPage(page, queryWrapper));
- }
-
- @Override
- public long count(OrderLog orderLog) {
- QueryWrapper<OrderLog> wrapper = new QueryWrapper<>(orderLog);
- return orderLogMapper.selectCount(wrapper);
- }
-}
diff --git a/server/services/src/main/java/com/doumee/service/business/impl/OrdersDetailServiceImpl.java b/server/services/src/main/java/com/doumee/service/business/impl/OrdersDetailServiceImpl.java
new file mode 100644
index 0000000..2cc489b
--- /dev/null
+++ b/server/services/src/main/java/com/doumee/service/business/impl/OrdersDetailServiceImpl.java
@@ -0,0 +1,148 @@
+package com.doumee.service.business.impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.doumee.core.constants.Constants;
+import com.doumee.core.model.PageData;
+import com.doumee.core.model.PageWrap;
+import com.doumee.core.utils.Utils;
+import com.doumee.dao.business.OrdersDetailMapper;
+import com.doumee.dao.business.model.OrdersDetail;
+import com.doumee.service.business.OrdersDetailService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+/**
+ * 瀵勫瓨璁㈠崟鏄庣粏 Service瀹炵幇
+ *
+ * @author rk
+ * @date 2026/04/10
+ */
+@Service
+public class OrdersDetailServiceImpl implements OrdersDetailService {
+
+ @Autowired
+ private OrdersDetailMapper ordersDetailMapper;
+
+ @Override
+ public Integer create(OrdersDetail ordersDetail) {
+ ordersDetailMapper.insert(ordersDetail);
+ return ordersDetail.getId();
+ }
+
+ @Override
+ public void deleteById(Integer id) {
+ ordersDetailMapper.deleteById(id);
+ }
+
+ @Override
+ public void delete(OrdersDetail ordersDetail) {
+ UpdateWrapper<OrdersDetail> deleteWrapper = new UpdateWrapper<>(ordersDetail);
+ ordersDetailMapper.delete(deleteWrapper);
+ }
+
+ @Override
+ public void deleteByIdInBatch(List<Integer> ids) {
+ if (ids == null || ids.isEmpty()) {
+ return;
+ }
+ ordersDetailMapper.deleteBatchIds(ids);
+ }
+
+ @Override
+ public void updateById(OrdersDetail ordersDetail) {
+ ordersDetailMapper.updateById(ordersDetail);
+ }
+
+ @Override
+ public void updateByIdInBatch(List<OrdersDetail> ordersDetails) {
+ if (ordersDetails == null || ordersDetails.isEmpty()) {
+ return;
+ }
+ for (OrdersDetail ordersDetail : ordersDetails) {
+ this.updateById(ordersDetail);
+ }
+ }
+
+ @Override
+ public OrdersDetail findById(Integer id) {
+ return ordersDetailMapper.selectById(id);
+ }
+
+ @Override
+ public OrdersDetail findOne(OrdersDetail ordersDetail) {
+ QueryWrapper<OrdersDetail> wrapper = new QueryWrapper<>(ordersDetail);
+ return ordersDetailMapper.selectOne(wrapper);
+ }
+
+ @Override
+ public List<OrdersDetail> findList(OrdersDetail ordersDetail) {
+ QueryWrapper<OrdersDetail> wrapper = new QueryWrapper<>(ordersDetail);
+ return ordersDetailMapper.selectList(wrapper);
+ }
+
+ @Override
+ public PageData<OrdersDetail> findPage(PageWrap<OrdersDetail> pageWrap) {
+ IPage<OrdersDetail> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
+ QueryWrapper<OrdersDetail> queryWrapper = new QueryWrapper<>();
+ Utils.MP.blankToNull(pageWrap.getModel());
+ pageWrap.getModel().setDeleted(Constants.ZERO);
+ if (pageWrap.getModel().getId() != null) {
+ queryWrapper.lambda().eq(OrdersDetail::getId, pageWrap.getModel().getId());
+ }
+ if (pageWrap.getModel().getDeleted() != null) {
+ queryWrapper.lambda().eq(OrdersDetail::getDeleted, pageWrap.getModel().getDeleted());
+ }
+ if (pageWrap.getModel().getCreateUser() != null) {
+ queryWrapper.lambda().eq(OrdersDetail::getCreateUser, pageWrap.getModel().getCreateUser());
+ }
+ if (pageWrap.getModel().getCreateTime() != null) {
+ queryWrapper.lambda().ge(OrdersDetail::getCreateTime, Utils.Date.getStart(pageWrap.getModel().getCreateTime()));
+ queryWrapper.lambda().le(OrdersDetail::getCreateTime, Utils.Date.getEnd(pageWrap.getModel().getCreateTime()));
+ }
+ if (pageWrap.getModel().getUpdateUser() != null) {
+ queryWrapper.lambda().eq(OrdersDetail::getUpdateUser, pageWrap.getModel().getUpdateUser());
+ }
+ if (pageWrap.getModel().getUpdateTime() != null) {
+ queryWrapper.lambda().ge(OrdersDetail::getUpdateTime, Utils.Date.getStart(pageWrap.getModel().getUpdateTime()));
+ queryWrapper.lambda().le(OrdersDetail::getUpdateTime, Utils.Date.getEnd(pageWrap.getModel().getUpdateTime()));
+ }
+ if (pageWrap.getModel().getRemark() != null) {
+ queryWrapper.lambda().like(OrdersDetail::getRemark, pageWrap.getModel().getRemark());
+ }
+ if (pageWrap.getModel().getOrderId() != null) {
+ queryWrapper.lambda().eq(OrdersDetail::getOrderId, pageWrap.getModel().getOrderId());
+ }
+ if (pageWrap.getModel().getLuggageId() != null) {
+ queryWrapper.lambda().eq(OrdersDetail::getLuggageId, pageWrap.getModel().getLuggageId());
+ }
+ if (pageWrap.getModel().getLuggageName() != null) {
+ queryWrapper.lambda().like(OrdersDetail::getLuggageName, pageWrap.getModel().getLuggageName());
+ }
+ if (pageWrap.getModel().getNum() != null) {
+ queryWrapper.lambda().eq(OrdersDetail::getNum, pageWrap.getModel().getNum());
+ }
+ if (pageWrap.getModel().getUnitPrice() != null) {
+ queryWrapper.lambda().eq(OrdersDetail::getUnitPrice, pageWrap.getModel().getUnitPrice());
+ }
+ for (PageWrap.SortData sortData : pageWrap.getSorts()) {
+ if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) {
+ queryWrapper.orderByDesc(sortData.getProperty());
+ } else {
+ queryWrapper.orderByAsc(sortData.getProperty());
+ }
+ }
+ return PageData.from(ordersDetailMapper.selectPage(page, queryWrapper));
+ }
+
+ @Override
+ public long count(OrdersDetail ordersDetail) {
+ QueryWrapper<OrdersDetail> wrapper = new QueryWrapper<>(ordersDetail);
+ return ordersDetailMapper.selectCount(wrapper);
+ }
+
+}
diff --git a/server/services/src/main/java/com/doumee/service/business/impl/OrdersServiceImpl.java b/server/services/src/main/java/com/doumee/service/business/impl/OrdersServiceImpl.java
index 68a4903..414e48e 100644
--- a/server/services/src/main/java/com/doumee/service/business/impl/OrdersServiceImpl.java
+++ b/server/services/src/main/java/com/doumee/service/business/impl/OrdersServiceImpl.java
@@ -1,384 +1,49 @@
package com.doumee.service.business.impl;
-import com.alibaba.fastjson.JSONArray;
-import com.alibaba.fastjson.JSONObject;
-import com.doumee.biz.system.SystemDictDataBiz;
-import com.doumee.config.wx.SendWxMessage;
-import com.doumee.config.wx.WxMiniConfig;
-import com.doumee.config.wx.WxMiniUtilService;
-import com.doumee.core.constants.Constants;
-import com.doumee.core.constants.ResponseStatus;
-import com.doumee.core.exception.BusinessException;
-import com.doumee.core.model.LoginUserInfo;
-import com.doumee.core.model.PageData;
-import com.doumee.core.model.PageWrap;
-import com.doumee.core.utils.DateUtil;
-import com.doumee.core.utils.GeoUtils;
-import com.doumee.core.utils.Utils;
-import com.doumee.dao.business.*;
-import com.doumee.dao.business.model.*;
-import com.doumee.dao.dto.*;
-import com.doumee.dao.vo.OrderReleaseVO;
-import com.doumee.dao.vo.PayResponse;
-import com.doumee.service.business.AliSmsService;
-import com.doumee.service.business.OrdersService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import com.github.binarywang.wxpay.bean.request.BaseWxPayRequest;
-import com.github.binarywang.wxpay.bean.request.WxPayUnifiedOrderRequest;
-import com.github.binarywang.wxpay.exception.WxPayException;
+import com.doumee.core.constants.Constants;
+import com.doumee.core.constants.ResponseStatus;
+import com.doumee.core.exception.BusinessException;
+import com.doumee.core.model.PageData;
+import com.doumee.core.model.PageWrap;
+import com.doumee.core.utils.Utils;
+import com.doumee.dao.business.OrdersMapper;
+import com.doumee.dao.business.model.Category;
+import com.doumee.dao.business.model.Orders;
+import com.doumee.service.business.OrdersService;
import com.github.yulichang.wrapper.MPJLambdaWrapper;
-import com.wechat.pay.java.service.partnerpayments.jsapi.model.Amount;
-import com.wechat.pay.java.service.partnerpayments.jsapi.model.Payer;
-import com.wechat.pay.java.service.partnerpayments.jsapi.model.PrepayRequest;
-import com.wechat.pay.java.service.partnerpayments.jsapi.model.PrepayWithRequestPaymentResponse;
-import com.wechat.pay.java.service.refund.model.RefundNotification;
-import jodd.util.StringUtil;
-import lombok.With;
-import lombok.extern.slf4j.Slf4j;
-import nonapi.io.github.classgraph.json.Id;
-import org.apache.poi.sl.image.ImageHeaderEMF;
-import org.checkerframework.checker.units.qual.A;
-import org.springframework.beans.BeanUtils;
+import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Service;
-import org.springframework.transaction.annotation.Transactional;
-import org.springframework.util.CollectionUtils;
-import org.springframework.util.StringUtils;
-import org.springframework.web.context.request.RequestContextHolder;
-import org.springframework.web.context.request.ServletRequestAttributes;
-import javax.annotation.Resource;
-import javax.servlet.http.HttpServletRequest;
-import java.math.BigDecimal;
-import java.math.RoundingMode;
-import java.net.InetAddress;
-import java.net.UnknownHostException;
-import java.util.*;
-import java.util.concurrent.TimeUnit;
-import java.util.stream.Collectors;
+import java.util.List;
+import java.util.Objects;
/**
- * 璁㈠崟淇℃伅璁板綍Service瀹炵幇
- * @author 姹熻箘韫�
- * @date 2025/07/09 12:00
+ * 瀵勫瓨璁㈠崟淇℃伅Service瀹炵幇
+ * @author rk
+ * @date 2026/04/10
*/
-@Slf4j
@Service
public class OrdersServiceImpl implements OrdersService {
@Autowired
private OrdersMapper ordersMapper;
- @Autowired
- private SystemDictDataBiz systemDictDataBiz;
-
- @Autowired
- private CategoryMapper categoryMapper;
-
- @Autowired
- private MultifileMapper multifileMapper;
-
- @Autowired
- private OrderLogMapper orderLogMapper;
-
- @Autowired
- private MemberMapper memberMapper;
-
- @Autowired
- private MemberRevenueMapper memberRevenueMapper;
-
- @Autowired
- private IdentityInfoMapper identityInfoMapper;
-
- @Autowired
- private WithdrawalOrdersMapper withdrawalOrdersMapper;
-
- @Autowired
- private ReceiveWeightMapper receiveWeightMapper;
-
- @Autowired
- private WxMiniUtilService wxMiniUtilService;
-
- @Autowired
- private SendWxMessage sendWxMessage;
-
- @Autowired
- private AliSmsService aliSmsService;
-
- @Resource
- private RedisTemplate<String,Object> redisTemplate;
-
@Override
- @Transactional(rollbackFor = {Exception.class,BusinessException.class})
- public OrderReleaseVO create(Orders orders) {
- OrderReleaseVO orderReleaseVO = new OrderReleaseVO();
- Object objects = null;
- this.initVerification(orders);
- Member member = memberMapper.selectById(orders.getMember().getId());
- if(Objects.isNull(member)){
- throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"鐢ㄦ埛淇℃伅寮傚父");
- }
-
- orders.setCreateTime(new Date());
- orders.setUpdateTime(orders.getUpdateTime());
- orders.setPayStatus(Constants.ZERO);
- orders.setDeleted(Constants.ZERO);
- orders.setReleaseMemberId(orders.getMember().getId());
- orders.setCommentStatus(Constants.ZERO);
- //鏌ヨ鎵嬬画璐�
- Category platformCategory = categoryMapper.selectOne(new QueryWrapper<Category>().lambda().eq(Category::getType,Constants.THREE).eq(Category::getName,orders.getType()).eq(Category::getDeleted,Constants.ZERO).last("limit 1 "));
- if(Objects.isNull(platformCategory)){
- throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"鏈缃钩鍙伴厤缃俊鎭�");
- }
- orders.setPlatformRata(new BigDecimal(platformCategory.getDetail()).divide(new BigDecimal("100")));
- //璁㈠崟缂栧彿
- orders.setCode(this.getNextCode(orders.getType()));
- Category category = categoryMapper.selectOne(new QueryWrapper<Category>().lambda()
- .eq(Category::getDeleted,Constants.ZERO).eq(Category::getType,Constants.THREE)
- .eq(Category::getName,orders.getType())
- .last("limit 1")
- );
- if(Objects.isNull(category)){
- throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"鍙傛暟閰嶇疆閿欒,璇疯仈绯荤鐞嗗憳");
- }
- orders.setPayAccount(orders.getEstimatedAccount());
- Long tcje = Long.valueOf(new BigDecimal(orders.getPayAccount().toString()).multiply(orders.getPlatformRata()).intValue());
- orders.setReceiveAccount(orders.getPayAccount() - tcje);
- //鐢ㄩ璁㈠崟
- if(Constants.equalsInteger(orders.getType(),Constants.TWO)){
- orders.setStatus(Constants.ordersStatus.waitPay.getKey());
- orders.setOutTradeNo(UUID.randomUUID().toString().replace("-",""));
- //鍞よ捣鏀粯涓氬姟
- objects = this.getWxPayResponse(orders,member.getOpenid());
- orderReleaseVO.setObject(objects);
- }else{
- orders.setStatus(Constants.ordersStatus.wait.getKey());
- }
- orders.setOriginPriceNum1(orders.getPriceNum1());
- orders.setOriginPriceNum2(orders.getPriceNum2());
- orders.setOriginEstimatedAccount(orders.getEstimatedAccount());
- orders.setConfirmOtherFee(0l);
+ public Integer create(Orders orders) {
ordersMapper.insert(orders);
-
- orderReleaseVO.setId(orders.getId());
- if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(orders.getMultifileList())){
- List<Multifile> multifileList = orders.getMultifileList();
- for (Multifile multifile:multifileList) {
- if(Objects.isNull(multifile)
- || StringUtils.isEmpty(multifile.getFileurl())
- || StringUtils.isEmpty(multifile.getName())){
- throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"闄勪欢淇℃伅閿欒");
- }
- multifile.setIsdeleted(Constants.ZERO);
- multifile.setCreateDate(new Date());
- multifile.setObjId(orders.getId());
- multifile.setObjType(Constants.ONE);
- }
- multifileMapper.insert(multifileList);
- }
- //鏇存柊鐢ㄦ埛鍙戝崟閲�
- memberMapper.update(new UpdateWrapper<Member>().lambda().setSql(" PUBLISH_NUM = ( ifnull(PUBLISH_NUM,0) + 1 )").eq(Member::getId,orders.getMember().getId()));
-
- //鍒涘缓鎿嶄綔鏃ュ織
- Constants.OrdersLog ordersLog = Constants.OrdersLog.UPLOAD;
- String orderTypeInfo = Constants.getOrderInfo(orders);/*"鐢ㄥ伐鍗�";
- if(!Constants.equalsInteger(orders.getType(),Constants.ZERO)){
- orderTypeInfo = Constants.equalsInteger(orders.getType(),Constants.ONE)?"鐢ㄨ溅鍗�":"閫侀鍗�";
- }else{
- if(Constants.equalsInteger(orders.getWorkType(),Constants.ZERO)){
- orderTypeInfo = orderTypeInfo + "-閲囨憳宸�";
- }else{
- orderTypeInfo = orderTypeInfo + (Constants.equalsInteger(orders.getWorkType(),Constants.ONE)?"-鍒嗘嫞宸�":"-鍖呰宸�");
- }
- }*/
- String logInfo = ordersLog.getInfo()
- .replace("{param}",orderTypeInfo)
- .replace("{userName}", org.apache.commons.lang3.StringUtils.isNotBlank(member.getName())?member.getName():"-");
- this.saveOrderLog(orders,ordersLog,
- logInfo,orders.getReleaseMemberId(),null);
- return orderReleaseVO;
+ return orders.getId();
}
-
- private PayResponse getWxPayResponse(Orders orders,String openid){
- try {
- Object response = null;
- //璋冭捣鏀粯
- WxPayUnifiedOrderRequest request = new WxPayUnifiedOrderRequest();
- request.setAttach("createOrder");
- request.setAttach("璁㈠崟鏀粯");
- request.setOutTradeNo(orders.getOutTradeNo());
- request.setTotalFee(BaseWxPayRequest.yuanToFen(orders.getPrice().toString()));
-
-
- request.setTimeStart(DateUtil.DateToString(new Date(), "yyyyMMddHHmmss"));
- request.setSpbillCreateIp(Constants.getIpAddr());
- //寰俊灏忕▼搴�
- request.setOpenid(openid);
- response = WxMiniConfig.wxPayService.createOrder(request);
- PayResponse payResponse = new PayResponse();
- payResponse.setResponse(response);
- payResponse.setOrderId(orders.getId());
- payResponse.setPayType(Constants.ZERO);
-
- return payResponse;
- } catch (WxPayException e) {
- e.printStackTrace();
- }
- throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"鏀粯澶辫触锛�");
- }
-
- /**
- * 鏃ュ織淇℃伅
- * @param orders 璁㈠崟淇℃伅
- * @param ordersLog 璁㈠崟鏀寔鍒嗙被
- * @param logInfo 鏃ュ織鍐呭
- * @param memberId 绉诲姩绔搷浣滀汉
- * @param userId 绯荤粺鎿嶄綔浜�
- */
- public void saveOrderLog(Orders orders,Constants.OrdersLog ordersLog,String logInfo,Integer memberId,Integer userId){
- OrderLog orderLog = new OrderLog();
- orderLog.setCreateTime(orders.getUpdateTime());
- orderLog.setDeleted(Constants.ZERO);
- orderLog.setOrderId(orders.getId());
- orderLog.setTitle(ordersLog.getName());
- orderLog.setLogInfo(logInfo);
- orderLog.setObjType(ordersLog.getKey());
- orderLog.setOrderStatus(orders.getStatus());
- orderLog.setMemberId(memberId);
- orderLog.setCreateUser(userId);
- orderLog.setOptUserType(ordersLog.getUserType());
- orderLogMapper.insert(orderLog);
- }
-
-
-
-
- public void initVerification(Orders orders){
- if(Objects.isNull(orders)
- || Objects.isNull(orders.getType())
- || Objects.isNull(orders.getStartDate())
- || Objects.isNull(orders.getEndDate())
- || StringUtil.isBlank(orders.getLocation())
- || StringUtil.isBlank(orders.getLinkPhone())
- || Objects.isNull(orders.getLat())
- || Objects.isNull(orders.getLgt())
- || (!Constants.equalsInteger(orders.getType(),Constants.TWO) && Objects.isNull(orders.getCategoryId()))
- || (Constants.equalsInteger(orders.getType(),Constants.ZERO) && Objects.isNull(orders.getWorkType()))
- || Objects.isNull(orders.getPriceNum1())
- || Objects.isNull(orders.getEstimatedAccount())
- || Objects.isNull(orders.getPrice())
- ){
- throw new BusinessException(ResponseStatus.BAD_REQUEST);
- }
- Integer priceNum2 = orders.getPriceNum2();
- if( (Constants.equalsInteger(orders.getType(),Constants.ZERO)
- && Constants.equalsInteger(orders.getWorkType(),Constants.TWO) &&
- ( Constants.equalsInteger(orders.getCarType(),Constants.ZERO)
- || Constants.equalsInteger(orders.getCarType(),Constants.ONE) ))
- || (Constants.equalsInteger(orders.getType(),Constants.ZERO)
- && Constants.equalsInteger(orders.getWorkType(),Constants.ONE))
- ){
- if(Objects.isNull(orders.getPriceNum2())){
- throw new BusinessException(ResponseStatus.BAD_REQUEST);
- }
- }else{
- orders.setPriceNum2(Constants.ONE);
- }
- orders.setTotalDays(DateUtil.daysBetweenDates(orders.getEndDate(),orders.getStartDate())+1);
- if(Constants.equalsInteger(orders.getType(),Constants.ZERO)){
- if(Constants.equalsInteger(orders.getWorkType(),Constants.TWO)
- && ( Objects.isNull(orders.getCarType()) ) ){
- throw new BusinessException(ResponseStatus.BAD_REQUEST);
- }
- }else if(Constants.equalsInteger(orders.getType(),Constants.ONE)){
- if(Objects.isNull(orders.getTransportTypeId())
- || Objects.isNull(orders.getCarType())
- || Objects.isNull(orders.getTransportNum())
- || StringUtils.isEmpty(orders.getTransportUnit())
- || StringUtils.isEmpty(orders.getLocationEnd())
- || StringUtils.isEmpty(orders.getCarUnit())
- || Objects.isNull(orders.getLatEnd())
- || Objects.isNull(orders.getLgtEnd())
- || CollectionUtils.isEmpty(orders.getWayInfoDTOList())
- ){
- throw new BusinessException(ResponseStatus.BAD_REQUEST);
- }
- for (WayInfoDTO wayInfoDTO:orders.getWayInfoDTOList()) {
- if(Objects.isNull(wayInfoDTO)
- ||StringUtils.isEmpty(wayInfoDTO.getLocation())
-// ||StringUtils.isEmpty(wayInfoDTO.getProvince())
-// ||StringUtils.isEmpty(wayInfoDTO.getCity())
-// ||StringUtils.isEmpty(wayInfoDTO.getArea())
- ||Objects.isNull(wayInfoDTO.getLat())
- ||Objects.isNull(wayInfoDTO.getLgt())
- ){
- throw new BusinessException(ResponseStatus.BAD_REQUEST);
- }
- }
- orders.setWayInfo(JSONObject.toJSONString(orders.getWayInfoDTOList()));
- }else{
- List<Category> categoryList = categoryMapper.selectList(new QueryWrapper<Category>().lambda().eq(Category::getDeleted,Constants.ZERO)
- .eq(Category::getType,Constants.TWO)
- );
- if(CollectionUtils.isEmpty(categoryList)){
- throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"椁愭爣淇℃伅閿欒");
- }
- //鐢ㄩ璁㈠崟
- if(CollectionUtils.isEmpty(orders.getCateringDTOList())){
- throw new BusinessException(ResponseStatus.BAD_REQUEST);
- }
- Long sumPrice = 0L;
-// List<CateringDTO> cateringDTOList = new ArrayList<>();
- for (CateringDTO cateringDTO:orders.getCateringDTOList()) {
- if(Objects.isNull(cateringDTO)
- || StringUtils.isEmpty(cateringDTO.getName())
- || Objects.isNull(cateringDTO.getPrice())
- || Objects.isNull(cateringDTO.getNum())
- ){
- throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"鐢ㄩ鏍囧噯鏁版嵁閿欒");
- }
- //椁愭爣淇℃伅
- List<Category> categories = categoryList.stream().filter(i->Constants.equalsInteger(i.getId(),cateringDTO.getId())).collect(Collectors.toList());
- if(CollectionUtils.isEmpty(categories)){
- throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"鐢ㄩ鏍囧噯鏁版嵁閿欒锛岃鍒锋柊閲嶈瘯");
- }
- Category category = categories.get(Constants.ZERO);
- List<String> priceList = JSONArray.parseArray(category.getDetail(),String.class );
- if(CollectionUtils.isEmpty(priceList)){
- throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"鐢ㄩ鏍囧噯鏁版嵁閿欒锛岃鍒锋柊閲嶈瘯");
- }
- if(priceList.stream().filter(i->((Long.valueOf(i)*100)+"").equals((cateringDTO.getPrice()+""))).collect(Collectors.toList()).size()==Constants.ZERO){
- throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"鐢ㄩ鏍囧噯鏁版嵁閿欒锛岃鍒锋柊閲嶈瘯");
- }
- sumPrice = sumPrice + (cateringDTO.getPrice() * cateringDTO.getNum()) ;
-
- }
- if(new BigDecimal(sumPrice.toString()).compareTo(orders.getPrice())!=Constants.ZERO){
- throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"鍗曚环璁$畻閿欒");
- }
-
-
- orders.setWayInfo(JSONObject.toJSONString(orders.getCateringDTOList()));
- }
- if(!orders.getEstimatedAccount().equals(this.getTotal(orders))){
- throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"閲戦璁$畻閿欒!");
- }
- orders.setPriceNum2(priceNum2);
- }
-
-
-
-
-
-
@Override
public void deleteById(Integer id) {
- ordersMapper.deleteById(id);
+ ordersMapper.update(new UpdateWrapper<Orders>().lambda()
+ .set(Orders::getDeleted, Constants.ONE)
+ .eq(Orders::getId, id));
}
@Override
@@ -389,176 +54,36 @@
@Override
public void deleteByIdInBatch(List<Integer> ids) {
- if (CollectionUtils.isEmpty(ids)) {
+ if (ids == null || ids.isEmpty()) {
return;
}
ordersMapper.deleteBatchIds(ids);
}
@Override
- public void update(Orders orders){
- if(Objects.isNull(orders)
- || Objects.isNull(orders.getId())){
- throw new BusinessException(ResponseStatus.BAD_REQUEST);
- }
- Orders model = ordersMapper.selectById(orders.getId());
- if(!Constants.equalsInteger(model.getReleaseMemberId(),orders.getMember().getId())){
- throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"闈炴偍鐨勮鍗曟棤娉曡繘琛岃鎿嶄綔");
- }
- if(Constants.equalsInteger(model.getIsUpdate(),Constants.ONE)){
- throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"璁㈠崟宸蹭慨鏀癸紝寰呮帴鍗曟柟纭锛屾棤娉曡繘琛岃鎿嶄綔");
- }
- if(!Constants.equalsInteger(model.getType(),Constants.TWO)){
- if(Constants.equalsInteger(model.getStatus(),Constants.ZERO)
- ||Constants.equalsInteger(model.getStatus(),Constants.ONE)){
- this.updateById(orders);
- }else if(Constants.equalsInteger(model.getStatus(),Constants.TWO)){
- this.updOrderData(orders,model);
- }else{
- throw new BusinessException(ResponseStatus.NOT_ALLOWED);
- }
- }else{
- throw new BusinessException(ResponseStatus.NOT_ALLOWED);
- }
- }
-
-
-
-// @Override
- @Transactional(rollbackFor = {BusinessException.class,Exception.class})
public void updateById(Orders orders) {
-
- Orders model = ordersMapper.selectById(orders.getId());
- if(Constants.equalsInteger(model.getType(),Constants.TWO)){
- throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"姝ょ被璁㈠崟鏃犳硶杩涜淇敼");
- }
- if(!Constants.equalsInteger(model.getStatus(),Constants.ONE)){
- throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"璁㈠崟鐘舵�佸凡娴佽浆,鏃犳硶杩涜璇ユ搷浣�");
- }
- this.initVerification(orders);
- orders.setUpdateTime(new Date());
- Category category = categoryMapper.selectOne(new QueryWrapper<Category>().lambda()
- .eq(Category::getDeleted,Constants.ZERO).eq(Category::getType,Constants.THREE)
- .eq(Category::getName,orders.getType())
- .last("limit 1")
- );
- if(Objects.isNull(category)){
- throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"鍙傛暟閰嶇疆閿欒,璇疯仈绯荤鐞嗗憳");
- }
- multifileMapper.update(new UpdateWrapper<Multifile>().lambda().set(Multifile::getIsdeleted,Constants.ONE).eq(Multifile::getObjType,Constants.ONE)
- .eq(Multifile::getObjId,orders.getId()));
- if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(orders.getMultifileList())){
- List<Multifile> multifileList = orders.getMultifileList();
- for (Multifile multifile:multifileList) {
- if(Objects.isNull(multifile)
- || Objects.isNull(multifile.getObjType())
- || StringUtils.isEmpty(multifile.getFileurl())
- || StringUtils.isEmpty(multifile.getName())){
- throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"闄勪欢淇℃伅閿欒");
- }
- multifile.setId(null);
- multifile.setIsdeleted(Constants.ZERO);
- multifile.setCreateDate(new Date());
- multifile.setObjId(orders.getId());
- multifile.setObjType(Constants.ONE);
- }
- multifileMapper.insert(multifileList);
- }
- orders.setOriginPriceNum1(orders.getPriceNum1());
- orders.setOriginPriceNum2(orders.getPriceNum2());
- orders.setOriginEstimatedAccount(orders.getEstimatedAccount());
- orders.setPayAccount(orders.getEstimatedAccount());
- orders.setConfirmOtherFee(0L);
ordersMapper.updateById(orders);
}
@Override
- public void updateByIdInBatch(List<Orders> orderss) {
- if (CollectionUtils.isEmpty(orderss)) {
+ public void updateByIdInBatch(List<Orders> ordersList) {
+ if (ordersList == null || ordersList.isEmpty()) {
return;
}
- for (Orders orders: orderss) {
- //this.updateById(orders);
+ for (Orders orders : ordersList) {
+ this.updateById(orders);
}
}
@Override
public Orders findById(Integer id) {
- Orders orders = ordersMapper.selectJoinOne(Orders.class,new MPJLambdaWrapper<Orders>()
- .selectAll(Orders.class)
- .select(" m1.name " , Orders::getReleaseName)
- .select(" m1.telephone " , Orders::getReleasePhone)
- .select(" case when i.AUTH_TYPE = 0 then i.LINK_NAME else i.COMPANY_NAME end " , Orders::getAcceptName)
- .select(" i.TELEPHONE " , Orders::getAcceptPhone)
- .select("c1.name",Orders::getCategoryName)
- .select("c2.name",Orders::getTransportTypeName)
- .leftJoin(" category c1 on t.category_id = c1.id ")
- .leftJoin(" category c2 on t.TRANSPORT_TYPE_ID = c2.id ")
- .leftJoin("member m1 on t.RELEASE_MEMBER_ID = m1.id ")
- .leftJoin("member m2 on t.ACCEPT_MEMBER_ID = m2.id ")
- .leftJoin("identity_info i on m2.id = i.MEMBER_ID and i.TYPE = t.type and i.AUDIT_STATUS = 2 ")
- .eq(Orders::getDeleted,Constants.ZERO)
- .eq(Orders::getId,id)
- .orderByDesc(Orders::getId));
- if(Objects.isNull(orders)){
+ Orders orders = ordersMapper.selectById(id);
+ if (Objects.isNull(orders)) {
throw new BusinessException(ResponseStatus.DATA_EMPTY);
- }
- orders.setStatusName(Constants.ordersStatus.getName(orders.getStatus()));
- this.getPriceUnit(orders);
-
- //闄勪欢淇℃伅
- List<Multifile> multifileList = multifileMapper.selectList(new QueryWrapper<Multifile>().lambda().eq(Multifile::getObjId,orders.getId())
- .eq(Multifile::getIsdeleted,Constants.ZERO).eq(Multifile::getObjType,Constants.ONE).orderByAsc(Multifile::getId));
- if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(multifileList)){
- String path = systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.RESOURCE_PATH).getCode()
- +systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.ORDERS_FILES).getCode();
- for (Multifile multifile:multifileList) {
- multifile.setFileurlFull(path + multifile.getFileurl());
- }
- orders.setMultifileList(multifileList);
- }
- //璁㈠崟娴佽浆璁板綍
- List<OrderLog> orderLogList = orderLogMapper.selectList(new QueryWrapper<OrderLog>().lambda()
- .eq(OrderLog::getDeleted,Constants.ZERO)
- .eq(OrderLog::getOrderId,orders.getId())
- .orderByAsc(OrderLog::getCreateTime)
- );
- if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(orderLogList)){
- for (OrderLog orderLog:orderLogList) {
- if(Constants.equalsInteger(orderLog.getOptUserType(),Constants.ZERO)&& org.apache.commons.lang3.StringUtils.isNotBlank(orders.getReleaseName())){
- orderLog.setLogInfo(orderLog.getLogInfo().replace("{userName}",orders.getReleaseName()));
- }else if(Constants.equalsInteger(orderLog.getOptUserType(),Constants.ONE)&& org.apache.commons.lang3.StringUtils.isNotBlank(orders.getAcceptName())){
- orderLog.setLogInfo(orderLog.getLogInfo().replace("{userName}",orders.getAcceptName()));
- }
- }
- orders.setOrderLogList(orderLogList);
}
return orders;
}
- public void getPriceUnit(Orders orders){
- if(Constants.equalsInteger(orders.getType(),Constants.ZERO)){
- if(Constants.equalsInteger(orders.getWorkType(),Constants.ZERO)){
- orders.setPriceUnit("鍏�/鏂�");
- }else if(Constants.equalsInteger(orders.getWorkType(),Constants.ONE)){
- orders.setPriceUnit("鍏�/浜�/澶�");
- }else{
- if(Constants.equalsInteger(orders.getCarType(),Constants.ZERO)){
- orders.setPriceUnit("鍏�/浜�/澶�");
- }else if(Constants.equalsInteger(orders.getCarType(),Constants.ONE)){
- orders.setPriceUnit("鍏�/浜�/灏忔椂");
- }else{
- orders.setPriceUnit("鍏�/鏂�");
- }
- }
- }else if(Constants.equalsInteger(orders.getType(),Constants.ONE)){
- if(Constants.equalsInteger(orders.getCarType(),Constants.ZERO)){
- orders.setPriceUnit("鍏�/澶�");
- }else if(Constants.equalsInteger(orders.getCarType(),Constants.ONE)){
- orders.setPriceUnit("鍏�/娆�");
- }
- }
- }
@Override
public Orders findOne(Orders orders) {
QueryWrapper<Orders> wrapper = new QueryWrapper<>(orders);
@@ -570,1536 +95,39 @@
QueryWrapper<Orders> wrapper = new QueryWrapper<>(orders);
return ordersMapper.selectList(wrapper);
}
-
+
@Override
public PageData<Orders> findPage(PageWrap<Orders> pageWrap) {
IPage<Orders> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
- MPJLambdaWrapper<Orders> queryWrapper = new MPJLambdaWrapper<Orders>();
+ MPJLambdaWrapper<Orders> queryWrapper = new MPJLambdaWrapper<Orders>()
+ .selectAll(Orders.class)
+ .selectAs(Category::getDetail, Orders::getOrderLevel)
+ .leftJoin(Category.class, Category::getId, Orders::getGoodType);
Utils.MP.blankToNull(pageWrap.getModel());
- Orders model = pageWrap.getModel();
- queryWrapper.selectAll(Orders.class)
- .select(" m1.name " , Orders::getReleaseName)
- .select(" m1.telephone " , Orders::getReleasePhone)
- .select(" case when i.AUTH_TYPE = 0 then i.LINK_NAME else i.COMPANY_NAME end " , Orders::getAcceptName)
- .select(" i.TELEPHONE " , Orders::getAcceptPhone)
- .select("c1.name",Orders::getCategoryName)
- .select("c2.name",Orders::getTransportTypeName)
- .leftJoin(" category c1 on t.category_id = c1.id ")
- .leftJoin(" category c2 on t.TRANSPORT_TYPE_ID = c2.id ")
- .leftJoin("member m1 on t.RELEASE_MEMBER_ID = m1.id ")
- .leftJoin("member m2 on t.ACCEPT_MEMBER_ID = m2.id ")
- .leftJoin("identity_info i on m2.id = i.MEMBER_ID and i.TYPE = t.type and i.AUDIT_STATUS = 2 ")
- .eq(Orders::getDeleted,Constants.ZERO)
- .orderByDesc(Orders::getId)
- ;
- queryWrapper.ge(Objects.nonNull(model.getCreateTimeStart()),Orders::getCreateTime, Utils.Date.getStart(model.getCreateTimeStart()));
- queryWrapper.le(Objects.nonNull(model.getCreateTimeEnd()),Orders::getCreateTime, Utils.Date.getEnd(model.getCreateTimeEnd()));
- queryWrapper.ge(Objects.nonNull(model.getAcceptTimeStart()),Orders::getAcceptTime, Utils.Date.getStart(model.getAcceptTimeStart()));
- queryWrapper.le(Objects.nonNull(model.getAcceptTimeEnd()),Orders::getAcceptTime, Utils.Date.getEnd(model.getAcceptTimeEnd()));
- queryWrapper.ge(Objects.nonNull(model.getDoneTimeStart()),Orders::getFinishTime, Utils.Date.getStart(model.getDoneTimeStart()));
- queryWrapper.le(Objects.nonNull(model.getDoneTimeEnd()),Orders::getFinishTime, Utils.Date.getEnd(model.getDoneTimeEnd()));
- queryWrapper.like(org.apache.commons.lang3.StringUtils.isNotBlank(model.getCode()),Orders::getCode, model.getCode());
- queryWrapper.eq(Objects.nonNull(model.getType()),Orders::getType, model.getType());
- queryWrapper.eq(Objects.nonNull(model.getStatus()),Orders::getStatus, model.getStatus());
- queryWrapper.eq(Objects.nonNull(model.getCommentStatus()),Orders::getCommentStatus, model.getCommentStatus());
- queryWrapper.eq(Objects.nonNull(model.getReleaseMemberId()),Orders::getReleaseMemberId, model.getReleaseMemberId());
- queryWrapper.eq(Objects.nonNull(model.getAcceptMemberId()),Orders::getAcceptMemberId, model.getAcceptMemberId());
- queryWrapper.eq(Objects.nonNull(model.getAcceptType()),Orders::getAcceptType, model.getAcceptType());
- queryWrapper.apply(org.apache.commons.lang3.StringUtils.isNotBlank(model.getReleaseName()),"m1.name like '%"+model.getReleaseName()+"%' or m1.TELEPHONE like '%"+model.getReleaseName()+"%' ");
- queryWrapper.apply(org.apache.commons.lang3.StringUtils.isNotBlank(model.getAcceptName()),"( i.LINK_NAME like '%"+model.getAcceptName()+"%' or i.company_name like '%"+model.getAcceptName()+"%' or i.TELEPHONE like '%"+model.getAcceptName()+"%' ) ");
- IPage<Orders> iPage = ordersMapper.selectJoinPage(page,Orders.class,queryWrapper);
- for (Orders orders:iPage.getRecords()) {
- this.getOrderContent(orders);
- orders.setStatusName(Constants.ordersStatus.getName(orders.getStatus()));
- orders.setEstimatedAccountYuan(Objects.nonNull(orders.getEstimatedAccount())&&orders.getEstimatedAccount()>0?orders.getEstimatedAccount()/100:0L);
- orders.setPayAccountYuan(Objects.nonNull(orders.getPayAccount())&&orders.getPayAccount()>0?orders.getPayAccount()/100:0L);
- }
- return PageData.from(iPage);
- }
-
- public void getOrderContent(Orders orders){
- if(Constants.equalsInteger(orders.getType(),Constants.ZERO)){
- orders.setOrderContent(Constants.workType.getName(orders.getWorkType()) +" | " + orders.getCategoryName());
- if(Constants.equalsInteger(orders.getWorkType(),Constants.ZERO)){
- if(Objects.nonNull(orders.getPriceNum1())){
- orders.setOrderContent(orders.getOrderContent()+" | " +orders.getPriceNum1()+"鏂�");
- }
- }else if(Constants.equalsInteger(orders.getWorkType(),Constants.ONE)){
- if(Objects.nonNull(orders.getPriceNum2())) {
- orders.setOrderContent(orders.getOrderContent() + " | " + orders.getPriceNum2() + "浜�");
- }
- }else{
- if(Constants.equalsInteger(orders.getCarType(),Constants.ZERO)||Constants.equalsInteger(orders.getCarType(),Constants.ONE)){
- if(Objects.nonNull(orders.getPriceNum2())) {
- orders.setOrderContent(orders.getOrderContent() + " | " + orders.getPriceNum2() + "浜�");
- }
- }else{
- if(Objects.nonNull(orders.getPriceNum1())) {
- orders.setOrderContent(orders.getOrderContent() + " | " + orders.getPriceNum1() + "鏂�");
- }
- }
- }
- }else if(Constants.equalsInteger(orders.getType(),Constants.ONE)){
- if(org.apache.commons.lang3.StringUtils.isNotBlank(orders.getCategoryName())){
- orders.setOrderContent( orders.getCategoryName() +
- (StringUtils.isEmpty(orders.getTransportTypeName())?"":" | " + orders.getTransportTypeName() ) +
- (Objects.isNull(orders.getTransportNum())?null:" | " + orders.getTransportNum() +"鏂�"));
- }
-
- if(Constants.equalsInteger(orders.getCarType(),Constants.ZERO)){
- if(Objects.nonNull(orders.getPriceNum2())) {
- orders.setOrderContent(orders.getOrderContent() + " | 鐢ㄨ溅" + orders.getPriceNum1() + "澶�");
- }
- }else{
- if(Objects.nonNull(orders.getPriceNum2())) {
- orders.setOrderContent(orders.getOrderContent() + " | 鐢ㄨ溅" + orders.getPriceNum1() + "娆�");
- }
- }
- }else{
- if(org.apache.commons.lang3.StringUtils.isNotBlank(orders.getWayInfo())){
- List<CateringDTO> cateringDTOList = JSONArray.parseArray(orders.getWayInfo(),CateringDTO.class);
- if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(cateringDTOList)){
- for (CateringDTO cateringDTO:cateringDTOList) {
- if(StringUtils.isEmpty(orders.getOrderContent())){
- orders.setOrderContent(cateringDTO.getName()+(new BigDecimal(cateringDTO.getPrice().toString()).divide(new BigDecimal("100"),2,BigDecimal.ROUND_HALF_UP))+" 闇�"+cateringDTO.getNum()+"浠�");
- }else{
- orders.setOrderContent(orders.getOrderContent()+" | "+cateringDTO.getName()+(new BigDecimal(cateringDTO.getPrice().toString()).divide(new BigDecimal("100"),2,BigDecimal.ROUND_HALF_UP))+" 闇�"+cateringDTO.getNum()+"浠�");
- }
- }
- }
+ pageWrap.getModel().setDeleted(Constants.ZERO);
+ queryWrapper.eq(pageWrap.getModel().getDeleted() != null, Orders::getDeleted, pageWrap.getModel().getDeleted());
+ queryWrapper.like(StringUtils.isNotBlank(pageWrap.getModel().getCode()), Orders::getCode, pageWrap.getModel().getCode());
+ queryWrapper.like(StringUtils.isNotBlank(pageWrap.getModel().getGoodsInfo()), Orders::getGoodsInfo, pageWrap.getModel().getGoodsInfo());
+ queryWrapper.ge(pageWrap.getModel().getCreateStartTime() != null, Orders::getCreateTime, Utils.Date.getStart(pageWrap.getModel().getCreateStartTime()));
+ queryWrapper.le(pageWrap.getModel().getCreateEndTime() != null, Orders::getCreateTime, Utils.Date.getEnd(pageWrap.getModel().getCreateEndTime()));
+ queryWrapper.eq(pageWrap.getModel().getDepositShopId() != null, Orders::getDepositShopId, pageWrap.getModel().getDepositShopId());
+ queryWrapper.eq(pageWrap.getModel().getType() != null, Orders::getType, pageWrap.getModel().getType());
+ queryWrapper.eq(pageWrap.getModel().getStatus() != null, Orders::getStatus, pageWrap.getModel().getStatus());
+ queryWrapper.eq(pageWrap.getModel().getTakeShopId() != null, Orders::getTakeShopId, pageWrap.getModel().getTakeShopId());
+ for (PageWrap.SortData sortData : pageWrap.getSorts()) {
+ if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) {
+ queryWrapper.orderByDesc(sortData.getProperty());
+ } else {
+ queryWrapper.orderByAsc(sortData.getProperty());
}
}
-
+ return PageData.from(ordersMapper.selectJoinPage(page, Orders.class, queryWrapper));
}
-
-
@Override
public long count(Orders orders) {
QueryWrapper<Orders> wrapper = new QueryWrapper<>(orders);
return ordersMapper.selectCount(wrapper);
}
-
-
- /**
- * 鎵嬪姩鎺ュ崟
- * @param orderId
- */
- @Override
- @Transactional(rollbackFor = {BusinessException.class,Exception.class})
- public void accept(Integer orderId,Member member){
- Orders orders = ordersMapper.selectById(orderId);
- if(Objects.isNull(orders)||Constants.equalsInteger(orders.getDeleted(),Constants.ONE)){
- throw new BusinessException(ResponseStatus.DATA_EMPTY);
- }
- if(!Constants.equalsInteger(orders.getStatus(),Constants.ordersStatus.wait.getKey())){
- throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"璁㈠崟鐘舵�佸凡娴佽浆,鏃犳硶杩涜璇ユ搷浣�");
- }
- if(Constants.equalsInteger(orders.getReleaseMemberId(),member.getId())){
- throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"鎮ㄨ嚜宸辩殑璁㈠崟鏃犳硶杩涜璇ユ搷浣�");
- }
- member = memberMapper.selectById(member.getId());
- //鏌ヨ鐢ㄦ埛鏄惁鏈夊搴旇韩浠�
- if(Constants.equalsInteger(orders.getType(),Constants.ZERO)){
- if(!Constants.equalsInteger(member.getWorkerIdentity(),Constants.TWO)){
- throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"鎮ㄨ繕鏈敞鍐岃鏈嶅姟锛岃鍓嶅線\"鎴戠殑\"椤甸潰鎻愪氦鐢宠");
- }
- }else if(Constants.equalsInteger(orders.getType(),Constants.ONE)){
- if(!Constants.equalsInteger(member.getDriverIdentity(),Constants.TWO)){
- throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"鎮ㄨ繕鏈敞鍐岃鏈嶅姟锛岃鍓嶅線\"鎴戠殑\"椤甸潰鎻愪氦鐢宠");
- }
- }else{
- if(!Constants.equalsInteger(member.getChefIdentity(),Constants.TWO)){
- throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"鎮ㄨ繕鏈敞鍐岃鏈嶅姟锛岃鍓嶅線\"鎴戠殑\"椤甸潰鎻愪氦鐢宠");
- }
- }
-
- ordersMapper.update(new UpdateWrapper<Orders>().lambda().eq(Orders::getId,orders.getId())
- .set(Orders::getUpdateTime,new Date())
- .set(Orders::getAcceptType,Constants.ZERO)
- .set(Orders::getAcceptTime,new Date())
- .set(Orders::getAcceptMemberId,member.getId())
- .set(Orders::getStatus,Constants.ordersStatus.accept.getKey())
- );
-
- //鏇存柊鎺ュ崟閲�
- memberMapper.update(new UpdateWrapper<Member>().lambda().setSql(" RECEIVE_NUM = (ifnull(RECEIVE_NUM,0) + 1 )").eq(Member::getId,member.getId()));
-
- //鍒涘缓鎿嶄綔鏃ュ織
- Constants.OrdersLog ordersLog = Constants.OrdersLog.RECEIVE;
- this.saveOrderLog(orders,ordersLog,
- ordersLog.getInfo(),member.getId(),null);
-
- IdentityInfo wokerIdentityInfo = identityInfoMapper.selectOne(new QueryWrapper<IdentityInfo>().lambda()
- .eq(IdentityInfo::getMemberId,member.getId())
- .eq(IdentityInfo::getType,orders.getType())
- .eq(IdentityInfo::getAuditStatus,Constants.TWO)
- .last("limit 1")
- );
- Member releaseMember = memberMapper.selectById(orders.getReleaseMemberId());
-
- if(Objects.nonNull(releaseMember)){
- if(org.apache.commons.lang3.StringUtils.isNotBlank(releaseMember.getOpenid())&&Objects.nonNull(wokerIdentityInfo)){
- //鍙戦�佸井淇¢�氱煡
- sendWxMessage.acceptMessage(releaseMember.getOpenid(),orders,wokerIdentityInfo.getLinkName(),wokerIdentityInfo.getTelephone());
- }
- if(org.apache.commons.lang3.StringUtils.isNotBlank(orders.getLinkPhone())){
- //鐭俊閫氱煡
- aliSmsService.businessSendSms(Constants.smsContent.accept.getKey(),orders.getLinkPhone(),orders,null,
- wokerIdentityInfo,categoryMapper);
- }
- }
-
-
-
- }
-
-
- /**
- * 寮�濮嬩綔涓�
- * @param orderId
- * @param member
- */
- @Override
- @Transactional(rollbackFor = {BusinessException.class,Exception.class})
- public void begin(Integer orderId,Member member){
- Orders orders = ordersMapper.selectById(orderId);
- if(Objects.isNull(orders)||Constants.equalsInteger(orders.getDeleted(),Constants.ONE)){
- throw new BusinessException(ResponseStatus.DATA_EMPTY);
- }
- if(!Constants.equalsInteger(orders.getStatus(),Constants.ordersStatus.accept.getKey())){
- throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"璁㈠崟鐘舵�佸凡娴佽浆,鏃犳硶杩涜璇ユ搷浣�");
- }
- if(!Constants.equalsInteger(orders.getReleaseMemberId(),member.getId())){
- throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"闈炴偍鐨勮鍗曟棤娉曡繘琛岃鎿嶄綔");
- }
- if(Constants.equalsInteger(orders.getIsUpdate(),Constants.ONE)){
- throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"璁㈠崟淇敼寰呯‘璁わ紝鏃犳硶杩涜璇ユ搷浣�");
- }
- if(orders.getStartDate().getTime()>System.currentTimeMillis()){
- throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"璁㈠崟鏈埌寮�濮嬫椂闂存棤娉曡繘琛岃鎿嶄綔");
- }
- orders.setUpdateTime(new Date());
- orders.setStatus(Constants.ordersStatus.doing.getKey());
- orders.setWorkStartTime(new Date());
- ordersMapper.updateById(orders);
-
- //鍒涘缓鎿嶄綔鏃ュ織
- Constants.OrdersLog ordersLog = Constants.OrdersLog.BEGIN;
- this.saveOrderLog(orders,ordersLog,
- ordersLog.getInfo(),member.getId(),null);
- }
-
-
- /**
- * 鍙戝崟鏂逛慨鏀硅鍗� - 宸叉帴鍗曠姸鎬�
- */
-// @Override
- @Transactional(rollbackFor = {BusinessException.class,Exception.class})
- public void updOrderData(Orders orders,Orders model){
- if(Objects.isNull(orders)
- || Objects.isNull(orders.getStartDate())
- || Objects.isNull(orders.getEndDate())){
- throw new BusinessException(ResponseStatus.DATA_EMPTY);
- }
- model.setTotalDays(DateUtil.daysBetweenDates(orders.getEndDate(),orders.getStartDate())+1);
- model.setStartDate(orders.getStartDate());
- model.setEndDate(orders.getEndDate());
- //鐢ㄨ溅绫诲瀷
- if(Constants.equalsInteger(model.getType(),Constants.ONE)){
- if(Constants.equalsInteger(model.getCarType(),Constants.ZERO)) {
- model.setPriceNum1(orders.getTotalDays());
- }
- }else if(Constants.equalsInteger(model.getType(),Constants.ZERO)){
- if(Constants.equalsInteger(model.getWorkType(),Constants.ONE)||
- (Constants.equalsInteger(model.getWorkType(),Constants.TWO)&&Constants.equalsInteger(model.getCarType(),Constants.ZERO))){
- model.setPriceNum1(orders.getTotalDays());
- }
- }else{
- model.setPriceNum1(orders.getTotalDays());
- }
- Long total = this.getTotal(orders);
- Long tcje = Long.valueOf(new BigDecimal(total.toString()).multiply(model.getPlatformRata()).intValue());
- Long reciveTotal = total - tcje;
- ordersMapper.update(new UpdateWrapper<Orders>().lambda()
- .set(Orders::getStartDate,model.getStartDate())
- .set(Orders::getEndDate,model.getEndDate())
- .set(Orders::getTotalDays,model.getTotalDays())
- .set(Orders::getIsUpdate,Constants.ONE)
- .set(Orders::getIsUpdateTime,new Date())
- .set(Orders::getUpdateTime,new Date())
- .set(Orders::getEstimatedAccount,total)
- .set(Orders::getOriginEstimatedAccount,total)
- .set(Orders::getReceiveAccount,reciveTotal)
- .eq(Orders::getId,orders.getId())
- );
- //鍒涘缓鎿嶄綔鏃ュ織
- Constants.OrdersLog ordersLog = Constants.OrdersLog.UPD_ORDER;
- this.saveOrderLog(model,ordersLog,
- ordersLog.getInfo(),orders.getMember().getId(),null);
-
- //閫氱煡鎺ュ崟浜� 璁㈠崟鍙戠敓鍙樻洿
- Member member = memberMapper.selectById(model.getAcceptMemberId());
- if(Objects.nonNull(member)){
- if(org.apache.commons.lang3.StringUtils.isNotBlank(member.getOpenid())){
- model.setStartDate(orders.getStartDate());
- model.setEndDate(orders.getEndDate());
- //鍙戦�佸井淇¢�氱煡
- sendWxMessage.orderUpdMessage(member.getOpenid(),model);
- }
- IdentityInfo wokerIdentityInfo = identityInfoMapper.selectOne(new QueryWrapper<IdentityInfo>().lambda()
- .eq(IdentityInfo::getMemberId,member.getId())
- .eq(IdentityInfo::getType,orders.getType())
- .eq(IdentityInfo::getAuditStatus,Constants.TWO)
- .last("limit 1")
- );
- if(Objects.nonNull(wokerIdentityInfo)){
- //鐭俊閫氱煡
- aliSmsService.businessSendSms(Constants.smsContent.orderUpd.getKey(),wokerIdentityInfo.getTelephone(),orders,null,
- null,categoryMapper);
- }
- }
-
- }
-
-
- @Override
- public Long getTotal(Orders orders){
- if(Objects.isNull(orders)
- ||Objects.isNull(orders.getPrice())
- ||Objects.isNull(orders.getPriceNum1())
- ||Objects.isNull(orders.getType())
- ){
- throw new BusinessException(ResponseStatus.BAD_REQUEST);
- }
- BigDecimal bigDecimalPrice = BigDecimal.ZERO;
- if(
- (Constants.equalsInteger(orders.getType(),Constants.ZERO) && Constants.equalsInteger(orders.getWorkType(),Constants.ZERO ))
- || (Constants.equalsInteger(orders.getType(),Constants.ZERO) && Objects.nonNull(orders.getCarType()) && Constants.equalsInteger(orders.getWorkType(),Constants.TWO ) && Constants.equalsInteger(orders.getCarType(),Constants.TWO))
- || Constants.equalsInteger(orders.getType(),Constants.ONE)
- || Constants.equalsInteger(orders.getType(),Constants.TWO)
- ){
- bigDecimalPrice = orders.getPrice().multiply(new BigDecimal(orders.getPriceNum1().toString()));
- }else{
- if(Objects.isNull(orders.getPriceNum2())){
- throw new BusinessException(ResponseStatus.BAD_REQUEST);
- }
- bigDecimalPrice = orders.getPrice().multiply(new BigDecimal(orders.getPriceNum1().toString())).multiply(new BigDecimal(orders.getPriceNum2().toString()));
- }
- if(Objects.nonNull(orders.getConfirmOtherFee())){
- bigDecimalPrice = bigDecimalPrice.add(new BigDecimal(orders.getConfirmOtherFee().toString()));
- }
- return bigDecimalPrice.divide(new BigDecimal("1"),0,BigDecimal.ROUND_HALF_UP).longValue();//orders.getPrice() * orders.getPriceNum1() * orders.getPriceNum2();
- }
-
-
- /**
- * 鎺ュ崟鏂圭‘璁よ鍗曡垂鐢�
- */
- @Override
- @Transactional(rollbackFor = {BusinessException.class,Exception.class})
- public void confirmFee(ConfirmFeeOrderDTO confirmUpdOrderDTO){
- if(Objects.isNull(confirmUpdOrderDTO)
- || Objects.isNull(confirmUpdOrderDTO.getOrderId())
- || Objects.isNull(confirmUpdOrderDTO.getPriceNum1())){
- throw new BusinessException(ResponseStatus.BAD_REQUEST);
- }
- Orders orders = ordersMapper.selectById(confirmUpdOrderDTO.getOrderId());
- if(Objects.isNull(orders)||Constants.equalsInteger(orders.getDeleted(),Constants.ONE)){
- throw new BusinessException(ResponseStatus.DATA_EMPTY);
- }
- if(!Constants.equalsInteger(orders.getAcceptMemberId(),confirmUpdOrderDTO.getMember().getId())){
- throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"闈炴偍鐨勮鍗曟棤娉曡繘琛岃鎿嶄綔");
- }
- if(!Constants.equalsInteger(orders.getStatus(),Constants.ordersStatus.doing.getKey())){
- throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"璁㈠崟鐘舵�佸凡娴佽浆,鏃犳硶杩涜璇ユ搷浣�");
- }
- //绫诲瀷:0=鐢ㄥ伐锛�1=杩愯揣锛�2=璁㈤
- if(Constants.equalsInteger(orders.getType(),Constants.ZERO)){
- //鐢ㄥ伐绫诲瀷:0=閲囨憳宸ワ紱1=鍒嗘嫞宸ワ紱2=鍖呰宸ワ紱锛堢敤宸ヨ鍗曪級
- if(Constants.equalsInteger(orders.getWorkType(),Constants.ONE)){
- //1=鍒嗘嫞宸�
- if( Objects.isNull(confirmUpdOrderDTO.getPriceNum2())){//蹇呴』鏈夌敤宸ユ暟閲忥紙浜猴級
- throw new BusinessException(ResponseStatus.BAD_REQUEST);
- }
- }else if(Constants.equalsInteger(orders.getWorkType(),Constants.TWO)){
- //鍖呰宸� 鐢ㄨ溅绫诲瀷(鐢ㄥ伐鍖呰/杩愯揣浣跨敤):0=澶�;1=娆�/灏忔椂;2=閲嶉噺
- if( !Constants.equalsInteger(orders.getCarType(),Constants.TWO)
- && Objects.isNull(confirmUpdOrderDTO.getPriceNum2())){
- //涓嶆槸鎸夐噸閲忚璐圭殑锛屽繀椤绘湁鐢ㄥ伐鏁伴噺锛堜汉锛�
- throw new BusinessException(ResponseStatus.BAD_REQUEST);
- }
- }
- }else if(Constants.equalsInteger(orders.getType(),Constants.ONE)){
- //杩愯揣璁㈠崟
-
- }else{
- throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"璇ヨ鍗曚笉鏀寔璇ユ搷浣滐紝璇疯繑鍥炲埛鏂伴噸璇曪紒");
- }
- orders.setPriceNum1(confirmUpdOrderDTO.getPriceNum1());
- orders.setPriceNum2(confirmUpdOrderDTO.getPriceNum2());
- orders.setConfirmOtherFee(confirmUpdOrderDTO.getConfirmOtherFee());
- Long totalFee = this.getTotal(orders);//閲嶆柊璁$畻璐圭敤
- Long payFee = totalFee;//閲嶆柊璁$畻璐圭敤
- Long tcje = Long.valueOf(new BigDecimal(orders.getPayAccount().toString()).multiply(orders.getPlatformRata()).intValue());
- Long reciveTotal = payFee - tcje;
- //BigDecimal recFee = new BigDecimal(payFee).multiply((new BigDecimal(1).subtract(Constants.formatBigDecimal(orders.getPlatformRata())))).setScale(0, RoundingMode.HALF_UP) ;
- ordersMapper.update(new UpdateWrapper<Orders>().lambda()
- .set(Orders::getPriceNum1,confirmUpdOrderDTO.getPriceNum1())
- .set(Orders::getPriceNum2,confirmUpdOrderDTO.getPriceNum2())
- .set(Orders::getConfirmFeeRemark,confirmUpdOrderDTO.getConfirmFeeRemark())
- .set(Orders::getConfirmOtherFee,confirmUpdOrderDTO.getConfirmOtherFee())
- .set(Orders::getEstimatedAccount,totalFee)
- .set(Orders::getStatus,Constants.ordersStatus.feeconfirm.getKey())
- .set(Orders::getPayAccount,payFee)
- .set(Orders::getReceiveAccount,reciveTotal)
- .set(Orders::getUpdateTime,new Date())
- .set(Orders::getConfirmFeeTime,new Date())
- .eq(Orders::getId,orders.getId())
- );
- //璁板綍鍚屾剰淇敼鐨勬棩蹇�
- Constants.OrdersLog ordersLog = Constants.OrdersLog.FEE_CONFIRM;
- this.saveOrderLog(orders,ordersLog,
- ordersLog.getInfo(),confirmUpdOrderDTO.getMember().getId(),null);
-
- //寰俊閫氱煡
- Member member = memberMapper.selectById(orders.getReleaseMemberId());
- if(Objects.nonNull(member)&& org.apache.commons.lang3.StringUtils.isNotBlank(member.getOpenid())){
- sendWxMessage.waitPayMessage(member.getOpenid(),orders);
- }
-
- }
-
- /**
- * 鎺ュ崟鏂瑰鐞嗚鍗曚慨鏀�
- * @param confirmUpdOrderDTO
- */
- @Override
- @Transactional(rollbackFor = {BusinessException.class,Exception.class})
- public void confirmUpd(ConfirmUpdOrderDTO confirmUpdOrderDTO){
- if(Objects.isNull(confirmUpdOrderDTO)
- || Objects.isNull(confirmUpdOrderDTO.getOrderId())
- || Objects.isNull(confirmUpdOrderDTO.getStatus())
- || !(Constants.equalsInteger(confirmUpdOrderDTO.getStatus(),Constants.ONE)||
- Constants.equalsInteger(confirmUpdOrderDTO.getStatus(),Constants.ZERO))
- ){
- throw new BusinessException(ResponseStatus.DATA_EMPTY);
- }
- Orders orders = ordersMapper.selectById(confirmUpdOrderDTO.getOrderId());
- if(Objects.isNull(orders)||Constants.equalsInteger(orders.getDeleted(),Constants.ONE)){
- throw new BusinessException(ResponseStatus.DATA_EMPTY);
- }
- if(!Constants.equalsInteger(orders.getStatus(),Constants.ordersStatus.accept.getKey())){
- throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"璁㈠崟鐘舵�佸凡娴佽浆,鏃犳硶杩涜璇ユ搷浣�");
- }
- if(!Constants.equalsInteger(orders.getIsUpdate(),Constants.ONE)){
- throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"璁㈠崟淇敼鐘舵�佸凡娴佽浆锛屾棤娉曡繘琛岃鎿嶄綔");
- }
- if(!Constants.equalsInteger(orders.getAcceptMemberId(),confirmUpdOrderDTO.getMember().getId())){
- throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"闈炴偍鐨勮鍗曟棤娉曡繘琛岃鎿嶄綔");
- }
- if(!Constants.equalsInteger(confirmUpdOrderDTO.getStatus(),Constants.ONE)){
- ordersMapper.update(new UpdateWrapper<Orders>().lambda()
- .set(Orders::getIsUpdate,Constants.TWO)
- .set(Orders::getUpdateTime,new Date())
- .eq(Orders::getId,orders.getId())
- );
- //璁板綍鍚屾剰淇敼鐨勬棩蹇�
- Constants.OrdersLog ordersLog = Constants.OrdersLog.UPD_AGREE;
- this.saveOrderLog(orders,ordersLog,
- ordersLog.getInfo(),confirmUpdOrderDTO.getMember().getId(),null);
- }else{
- ordersMapper.update(new UpdateWrapper<Orders>().lambda()
- .set(Orders::getIsUpdate,Constants.TWO)
- .set(Orders::getUpdateTime,new Date())
- .set(Orders::getStatus,Constants.ordersStatus.wait.getKey())
- .set(Orders::getAcceptMemberId,null)
- .set(Orders::getAcceptType,null)
- .eq(Orders::getId,orders.getId())
- );
-
- memberMapper.update(new UpdateWrapper<Member>().lambda().setSql("receive_num = receive_num - 1").eq(Member::getId,confirmUpdOrderDTO.getMember().getId()));
-
- //璁板綍涓嶅悓鎰忎慨鏀圭殑鏃ュ織
- Constants.OrdersLog ordersLog = Constants.OrdersLog.UPD_DISAGREE;
- this.saveOrderLog(orders,ordersLog,
- ordersLog.getInfo(),confirmUpdOrderDTO.getMember().getId(),null);
- }
- //鐭俊閫氱煡
- aliSmsService.businessSendSms(!Constants.equalsInteger(confirmUpdOrderDTO.getStatus(),Constants.ONE)?
- Constants.smsContent.agreeUpd.getKey():Constants.smsContent.disAgreeUpd.getKey()
- ,orders.getLinkPhone(),null,null,
- null,categoryMapper);
- }
-
-
- @Override
- public void cancelOrder(Integer orderId,Member member){
- Orders orders = ordersMapper.selectById(orderId);
- if(Objects.isNull(orders)||Constants.equalsInteger(orders.getDeleted(),Constants.ONE)){
- throw new BusinessException(ResponseStatus.DATA_EMPTY);
- }
- if(Constants.equalsInteger(orders.getReleaseMemberId(),member.getId())){
- this.releaseCancelOrder(orders,member);
- }else if(Constants.equalsInteger(orders.getAcceptMemberId(),member.getId())){
- this.receiveCancelOrder(orders,member);
- }else{
- throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"闈炴偍鐨勮鍗曟棤娉曡繘琛岃鎿嶄綔");
- }
-
-
- }
-
-
- @Override
- public String cancelTips(Integer orderId,Member member){
- Orders orders = ordersMapper.selectById(orderId);
- if(Objects.isNull(orders)||Constants.equalsInteger(orders.getDeleted(),Constants.ONE)){
- throw new BusinessException(ResponseStatus.DATA_EMPTY);
- }
-
- Integer totalCancelTimes = Integer.valueOf(systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.RELEASE_CANCEL_TIMES).getCode());
- Long cancelTimes = ordersMapper.selectCount(new QueryWrapper<Orders>().lambda()
- .apply(" DATE(cancel_time) = DATE(NOW()) ")
- .eq(Orders::getStatus,Constants.ordersStatus.cancel.getKey())
- .eq(Orders::getReleaseMemberId,member.getId()));
- //鏌ヨ鍙栨秷娆℃暟
- if(totalCancelTimes<=cancelTimes){
- throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"浠婃棩璁㈠崟涓诲姩鍙栨秷娆℃暟宸茶秴鍑�"+totalCancelTimes+"娆�,鏃犳硶鍙栨秷璁㈠崟");
- }
-
- Integer cancelTimeHour = Integer.valueOf(systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.RELEASE_CANCEL_TIME).getCode());
- Long hours = DateUtil.getBetweenHours(new Date(),orders.getStartDate());
- if(hours < cancelTimeHour){
- throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"璺濈璁㈠崟寮�濮嬫椂闂翠笉瓒�"+cancelTimeHour+"灏忔椂,鏃犳硶鍙栨秷璁㈠崟");
- }
- return "浠婃棩杩樺彲涓诲姩鍙栨秷"+(totalCancelTimes-cancelTimes)+"娆★紝鏄惁纭鍙栨秷";
-
- }
-
- /**
- * 鍙戝崟鏂瑰彇娑堣鍗�
- * @param member
- */
- @Transactional(rollbackFor = {BusinessException.class,Exception.class})
- public void releaseCancelOrder(Orders orders,Member member){
- if(!(Constants.equalsInteger(orders.getStatus(),Constants.ordersStatus.wait.getKey())
- ||Constants.equalsInteger(orders.getStatus(),Constants.ordersStatus.waitPay.getKey())
- || Constants.equalsInteger(orders.getStatus(),Constants.ordersStatus.accept.getKey()))){
- throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"璁㈠崟鐘舵�佸凡娴佽浆,鏃犳硶杩涜鍙栨秷");
- }
- if(!Constants.equalsInteger(orders.getReleaseMemberId(),member.getId())){
- throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"闈炴偍鐨勮鍗曟棤娉曡繘琛岃鎿嶄綔");
- }
- //寰呮敮浠樼敤椁愯鍗�/寰呮帴鍗曡鍗曡繘琛屽彇娑�
- if(Constants.equalsInteger(orders.getStatus(),Constants.ONE)
- ||Constants.equalsInteger(orders.getStatus(),Constants.ZERO)){
- if(Constants.equalsInteger(orders.getType(),Constants.TWO)&&Constants.equalsInteger(orders.getStatus(),Constants.ONE)){
- //閫�娆句笟鍔�
- WithdrawalOrders withdrawalOrders = new WithdrawalOrders();
- withdrawalOrders.setCreateTime(new Date());
- withdrawalOrders.setDeleted(Constants.ZERO);
- withdrawalOrders.setMemberId(orders.getReleaseMemberId());
- withdrawalOrders.setAmount(orders.getPayAccount());
- withdrawalOrders.setStatus(Constants.ZERO);
- withdrawalOrders.setDoneTime(new Date());
- withdrawalOrders.setType(Constants.ONE);
- withdrawalOrders.setObjId(orders.getId());
- wxMiniUtilService.wxRefund(withdrawalOrders,orders);
- }
- ordersMapper.update(new UpdateWrapper<Orders>().lambda()
- .set(Orders::getStatus,Constants.ordersStatus.cancel.getKey())
- .set(Orders::getUpdateTime,new Date())
- .set(Orders::getCancelTime,new Date())
- .set(Orders::getCancelType,Constants.ZERO)
- .eq(Orders::getId,orders.getId())
- );
- }else{
- //鍒ゆ柇鏄惁鍙慨鏀� 宸插彇娑堟鏁� 涓� 鏃堕棿闄愬埗
- Integer totalCancelTimes = Integer.valueOf(systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.RELEASE_CANCEL_TIMES).getCode());
- Long cancelTimes = ordersMapper.selectCount(new QueryWrapper<Orders>().lambda()
- .apply(" DATE(cancel_time) = DATE(NOW()) ")
- .eq(Orders::getStatus,Constants.ordersStatus.cancel.getKey())
- .eq(Orders::getReleaseMemberId,orders.getReleaseMemberId()));
- //鏌ヨ鍙栨秷娆℃暟
- if(totalCancelTimes<=cancelTimes){
- throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"浠婃棩璁㈠崟涓诲姩鍙栨秷娆℃暟宸茶秴鍑�"+totalCancelTimes+"娆�,鏃犳硶鍙栨秷璁㈠崟");
- }
-
- Integer cancelTimeHour = Integer.valueOf(systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.RELEASE_CANCEL_TIME).getCode());
- Long hours = DateUtil.getBetweenHours(new Date(),orders.getStartDate());
- if(hours < cancelTimeHour){
- throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"璺濈璁㈠崟寮�濮嬫椂闂翠笉瓒�"+cancelTimeHour+"灏忔椂,鏃犳硶鍙栨秷璁㈠崟");
- }
-
- if(Constants.equalsInteger(orders.getType(),Constants.TWO)){
- //閫�娆句笟鍔�
- WithdrawalOrders withdrawalOrders = new WithdrawalOrders();
- withdrawalOrders.setCreateTime(new Date());
- withdrawalOrders.setMemberId(orders.getReleaseMemberId());
- withdrawalOrders.setAmount(orders.getPayAccount());
- withdrawalOrders.setWxExternalNo("refund_"+orders.getCode());
- withdrawalOrders.setStatus(Constants.ONE);
- withdrawalOrders.setDoneTime(new Date());
- withdrawalOrders.setType(Constants.ONE);
- withdrawalOrders.setObjId(orders.getId());
- wxMiniUtilService.wxRefund(withdrawalOrders,orders);
- }
- ordersMapper.update(new UpdateWrapper<Orders>().lambda()
- .set(Orders::getStatus,Constants.ordersStatus.cancel.getKey())
- .set(Orders::getUpdateTime,new Date())
- .set(Orders::getCancelTime,new Date())
- .set(Orders::getCancelType,Constants.ONE)
- .eq(Orders::getId,orders.getId())
- );
- //鍑忓皯鎺ュ崟閲�
- memberMapper.update(new UpdateWrapper<Member>().lambda().setSql("receive_num = (receive_num - 1) ").eq(Member::getId,orders.getAcceptMemberId()));
- }
- //鍑忓皯鍙戝崟閲�
- memberMapper.update(new UpdateWrapper<Member>().lambda().setSql("publish_num = (publish_num - 1)").eq(Member::getId,orders.getReleaseMemberId()));
-
- //鏃ュ織瀛樺偍
- Constants.OrdersLog ordersLog = Constants.OrdersLog.RELEASE_CANCEL;
- this.saveOrderLog(orders,ordersLog,
- ordersLog.getInfo(),member.getId(),null);
-
- List<Member> members = memberMapper.selectList(new QueryWrapper<Member>().lambda()
- .and(i->i.eq(Member::getId,orders.getReleaseMemberId()).or().eq(Member::getId,orders.getAcceptMemberId()))
- );
- if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(members)){
- List<String> openIdList = members.stream().map(i->i.getOpenid()).collect(Collectors.toList());
- //鍙戦�佸井淇¢�氱煡
- orders.setCancelTime(new Date());
- sendWxMessage.cancelMessage(openIdList,orders,Constants.ONE);
- }
-
- IdentityInfo wokerIdentityInfo = identityInfoMapper.selectOne(new QueryWrapper<IdentityInfo>().lambda()
- .eq(IdentityInfo::getMemberId,orders.getAcceptMemberId())
- .eq(IdentityInfo::getType,orders.getType())
- .eq(IdentityInfo::getAuditStatus,Constants.TWO)
- .last("limit 1")
- );
- if(Objects.nonNull(wokerIdentityInfo)){
- //鐭俊閫氱煡
- aliSmsService.businessSendSms(Constants.smsContent.releaseCancel.getKey(),wokerIdentityInfo.getTelephone(),orders,null,
- null,categoryMapper);
- }
- }
-
-
- /**
- * 鎺ュ崟鏂瑰彇娑堟帴鍗�
- * @param member
- */
- @Transactional(rollbackFor = {BusinessException.class,Exception.class})
- public void receiveCancelOrder(Orders orders,Member member){
- if(!Constants.equalsInteger(orders.getStatus(),Constants.ordersStatus.accept.getKey())){
- throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"璁㈠崟鐘舵�佸凡娴佽浆,鏃犳硶杩涜鍙栨秷");
- }
- if(!Constants.equalsInteger(orders.getAcceptMemberId(),member.getId())){
- throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"闈炴偍鐨勮鍗曟棤娉曡繘琛岃鎿嶄綔");
- }
- //鍒ゆ柇鏄惁鍙慨鏀� 宸插彇娑堟鏁� 涓� 鏃堕棿闄愬埗
- Integer totalCancelTimes = Integer.valueOf(systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.RECEIVE_CANCEL_TIMES).getCode());
- Long cancelTimes = orderLogMapper.selectCount(new QueryWrapper<OrderLog>().lambda()
- .apply(" DATE(create_time) = DATE(NOW()) ")
- .eq(OrderLog::getObjType,Constants.OrdersLog.CANCEL.getKey())
- .eq(OrderLog::getMemberId,member.getId()));
- //鏌ヨ鍙栨秷娆℃暟
- if(totalCancelTimes<=cancelTimes){
- throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"浠婃棩璁㈠崟涓诲姩鍙栨秷娆℃暟宸茶秴鍑�"+totalCancelTimes+"娆�,鏃犳硶鍙栨秷璁㈠崟");
- }
-
- Integer cancelTimeHour = Integer.valueOf(systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.RECEIVE_CANCEL_TIME).getCode());
- Long hours = DateUtil.getBetweenHours(new Date(),orders.getStartDate());
- if(hours < cancelTimeHour){
- throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"璺濈璁㈠崟寮�濮嬫椂闂翠笉瓒�"+cancelTimeHour+"灏忔椂,鏃犳硶鍙栨秷璁㈠崟");
- }
- ordersMapper.update(new UpdateWrapper<Orders>().lambda()
- .set(Orders::getUpdateTime,new Date())
- .set(Orders::getCancelTime,new Date())
- .set(Orders::getStatus,Constants.ordersStatus.wait.getKey())
- .set(Orders::getAcceptMemberId,null)
- .set(Orders::getAcceptType,null)
- .eq(Orders::getId,orders.getId())
- );
-
- //鍑忓皯鎺ュ崟閲�
- memberMapper.update(new UpdateWrapper<Member>().lambda().setSql(" receive_num = receive_num - 1 ").eq(Member::getId,orders.getAcceptMemberId()));
- //鏃ュ織瀛樺偍
- Constants.OrdersLog ordersLog = Constants.OrdersLog.CANCEL;
- this.saveOrderLog(orders,ordersLog,
- ordersLog.getInfo(),member.getId(),null);
-
-
- List<Member> members = memberMapper.selectList(new QueryWrapper<Member>().lambda()
- .and(i->i.eq(Member::getId,orders.getReleaseMemberId()).or().eq(Member::getId,orders.getAcceptMemberId()))
- );
- if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(members)){
- List<String> openIdList = members.stream().map(i->i.getOpenid()).collect(Collectors.toList());
- //鍙戦�佸井淇¢�氱煡
- orders.setCancelTime(new Date());
- sendWxMessage.cancelMessage(openIdList,orders,Constants.TWO);
- }
- //鐭俊閫氱煡
- aliSmsService.businessSendSms(Constants.smsContent.receiveCancel.getKey(),member.getTelephone(),orders,null,
- null,categoryMapper);
- }
-
-
- /**
- * 瀹屾垚璁㈠崟
- * @param doneOrderDTO
- */
- @Override
- @Transactional(rollbackFor = {BusinessException.class,Exception.class})
- public OrderReleaseVO doneOrder(DoneOrderDTO doneOrderDTO){
- if(Objects.isNull(doneOrderDTO)||Objects.isNull(doneOrderDTO.getOrderId())){
- throw new BusinessException(ResponseStatus.BAD_REQUEST);
- }
- Orders orders = ordersMapper.selectById(doneOrderDTO.getOrderId());
- if(!Constants.equalsInteger(orders.getType(),Constants.TWO)&&Objects.isNull(doneOrderDTO.getAmount())){
- throw new BusinessException(ResponseStatus.BAD_REQUEST);
- }
- if(Objects.isNull(orders)||Constants.equalsInteger(orders.getDeleted(),Constants.ONE)){
- throw new BusinessException(ResponseStatus.DATA_EMPTY);
- }
- if(Constants.equalsInteger(orders.getType(),Constants.orderType.scd.getKey())){
- if(!Constants.equalsInteger(orders.getStatus(),Constants.ordersStatus.doing.getKey())){
- throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"璁㈠崟鐘舵�佸凡娴佽浆,鏃犳硶杩涜鍙栨秷");
- }
- }else{
- if(!Constants.equalsInteger(orders.getStatus(),Constants.ordersStatus.feeconfirm.getKey())){
- throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"璁㈠崟鐘舵�佸凡娴佽浆,鏃犳硶杩涜鍙栨秷");
- }
- }
-
- if(!Constants.equalsInteger(orders.getReleaseMemberId(),doneOrderDTO.getMember().getId())){
- throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"闈炴偍鐨勮鍗曟棤娉曡繘琛岃鎿嶄綔");
- }
- Member payMember = memberMapper.selectById(doneOrderDTO.getMember().getId());
- if(Objects.isNull(payMember)){
- throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"鐢ㄦ埛淇℃伅寮傚父");
- }
-
- OrderReleaseVO orderReleaseVO = new OrderReleaseVO();
- orderReleaseVO.setId(orders.getId());
- Object object = null;
- //鐢ㄩ璁㈠崟
- if(!Constants.equalsInteger(orders.getType(),Constants.TWO)){
- orders.setPayAccount(doneOrderDTO.getAmount());
- //鎻愭垚閲戦
-// Long tcje = (new BigDecimal(orders.getPayAccount().toString()).multiply(Constants.formatBigDecimal(orders.getPlatformRata())).setScale(0,RoundingMode.HALF_UP).longValue());
- Long tcje = Long.valueOf(new BigDecimal(orders.getPayAccount().toString()).multiply(orders.getPlatformRata()).intValue());
- orders.setReceiveAccount(orders.getPayAccount() - tcje);
- orders.setOutTradeNo(UUID.randomUUID().toString().replace("-",""));
- ordersMapper.updateById(orders);
- //鍞よ捣鏀粯涓氬姟
- object = this.getWxPayResponse(orders,payMember.getOpenid());
- orderReleaseVO.setObject(object);
- }else{
- orders.setStatus(Constants.ordersStatus.done.getKey());
- orders.setFinishTime(new Date());
- ordersMapper.updateById(orders);
-
- Member member = memberMapper.selectById(orders.getAcceptMemberId());
-
- //瀛樺偍娴佹按璁板綍
- MemberRevenue memberRevenue = new MemberRevenue();
- memberRevenue.setCreateTime(new Date());
- memberRevenue.setMemberId(orders.getAcceptMemberId());
- memberRevenue.setType(orders.getType());
- memberRevenue.setOptType(Constants.ONE);
- memberRevenue.setBeforeAmount(member.getAmount());
- memberRevenue.setAmount(orders.getReceiveAccount());
- memberRevenue.setAfterAmount(member.getAmount() + orders.getReceiveAccount());
- if(Constants.equalsInteger(orders.getType(),Constants.ZERO)){
- memberRevenue.setRemark(Constants.RevenueType.getInfo(memberRevenue.getType()) + "-" +
- (Constants.equalsInteger(orders.getWorkType(),Constants.ZERO)?"閲囨憳宸�":(Constants.equalsInteger(orders.getWorkType(),Constants.ONE)?"鍒嗘嫞宸�":"鍖呰宸�")));
- }else{
- memberRevenue.setRemark(Constants.RevenueType.getInfo(memberRevenue.getType()));
- }
- memberRevenue.setObjId(orders.getId());
- memberRevenue.setObjType(Constants.ZERO);
- memberRevenue.setStatus(Constants.ZERO);
- memberRevenueMapper.insert(memberRevenue);
-
- //鏃ュ織瀛樺偍
- Constants.OrdersLog ordersLog = Constants.OrdersLog.DONE;
- this.saveOrderLog(orders,ordersLog,
- ordersLog.getInfo(),doneOrderDTO.getMember().getId(),null);
-
- sendWxMessage.revenueMessage(member.getOpenid(),orders);
-
- //鐭俊閫氱煡鎺ュ崟鏂�
- if(Objects.nonNull(orders.getAcceptMemberId())){
- IdentityInfo wokerIdentityInfo = identityInfoMapper.selectOne(new QueryWrapper<IdentityInfo>().lambda()
- .eq(IdentityInfo::getMemberId,orders.getAcceptMemberId())
- .eq(IdentityInfo::getType,orders.getType())
- .eq(IdentityInfo::getAuditStatus,Constants.TWO)
- .last("limit 1")
- );
- if(Objects.nonNull(wokerIdentityInfo)){
- aliSmsService.businessSendSms(Constants.smsContent.pay.getKey(),wokerIdentityInfo.getTelephone(),orders,null,
- null,categoryMapper);
- }
- }
- }
- return orderReleaseVO;
- }
-
-
-
- @Override
- public OrderReleaseVO reusePay(ReusePayDTO reusePayDTO){
- if(Objects.isNull(reusePayDTO)||Objects.isNull(reusePayDTO.getOrderId())){
- throw new BusinessException(ResponseStatus.BAD_REQUEST);
- }
- Orders orders = ordersMapper.selectById(reusePayDTO.getOrderId());
- if(Objects.isNull(orders)||Constants.equalsInteger(orders.getDeleted(),Constants.ONE)){
- throw new BusinessException(ResponseStatus.DATA_EMPTY);
- }
- if(!Constants.equalsInteger(orders.getType(),Constants.TWO)&&Objects.isNull(reusePayDTO.getAmount())){
- throw new BusinessException(ResponseStatus.BAD_REQUEST);
- }
-
- if(!((( Constants.equalsInteger(orders.getType(),Constants.TWO) && Constants.equalsInteger(orders.getStatus(),Constants.ZERO) )
- || ( !Constants.equalsInteger(orders.getType(),Constants.TWO) && Constants.equalsInteger(orders.getStatus(),Constants.FIVE) ))
- && Constants.equalsInteger(orders.getPayStatus(),Constants.ZERO) )){
- throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"璁㈠崟鐘舵�佸凡娴佽浆");
- }
- Member payMember = memberMapper.selectById(reusePayDTO.getMember().getId());
- if(Objects.isNull(payMember)){
- throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"鐢ㄦ埛淇℃伅寮傚父");
- }
-
- OrderReleaseVO orderReleaseVO = new OrderReleaseVO();
- if(!Constants.equalsInteger(orders.getType(),Constants.TWO)){
- orders.setPayAccount(reusePayDTO.getAmount());
- //鎻愭垚閲戦
- Long tcje = Long.valueOf(new BigDecimal(orders.getPayAccount().toString()).multiply(orders.getPlatformRata()).intValue());
- orders.setReceiveAccount(orders.getPayAccount() - tcje);
- orders.setOutTradeNo(UUID.randomUUID().toString().replace("-",""));
- ordersMapper.updateById(orders);
- }
- orders.setOutTradeNo(UUID.randomUUID().toString().replace("-",""));
- ordersMapper.updateById(orders);
- //鍞よ捣鏀粯涓氬姟
- Object object = this.getWxPayResponse(orders,payMember.getOpenid());
- orderReleaseVO.setObject(object);
- orderReleaseVO.setId(orders.getId());
- return orderReleaseVO;
- }
-
-
- @Override
- @Transactional(rollbackFor = {BusinessException.class,Exception.class})
- public void platformCancel(Integer orderId, LoginUserInfo loginUserInfo){
- Orders orders = ordersMapper.selectById(orderId);
- if(Objects.isNull(orders)||Constants.equalsInteger(orders.getDeleted(),Constants.ONE)){
- throw new BusinessException(ResponseStatus.DATA_EMPTY);
- }
- if(!(Constants.equalsInteger(orders.getStatus(),Constants.ordersStatus.wait.getKey())||Constants.equalsInteger(orders.getStatus(),Constants.ordersStatus.accept.getKey())
- ||Constants.equalsInteger(orders.getStatus(),Constants.ordersStatus.doing.getKey())||Constants.equalsInteger(orders.getStatus(),Constants.ordersStatus.waitPay.getKey()))){
- throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"璁㈠崟鐘舵�佸凡娴佽浆,鏃犳硶杩涜鍙栨秷");
- }
- //濡傛灉宸叉敮浠� 鍒欓渶瑕佽繘琛岄��娆�
- if(Constants.equalsInteger(orders.getPayStatus(),Constants.ONE)){
- WithdrawalOrders withdrawalOrders = new WithdrawalOrders();
- withdrawalOrders.setCreateTime(new Date());
- withdrawalOrders.setMemberId(orders.getReleaseMemberId());
- withdrawalOrders.setAmount(orders.getPayAccount());
- withdrawalOrders.setWxExternalNo("refund_"+orders.getCode());
- withdrawalOrders.setStatus(Constants.ONE);
- withdrawalOrders.setDoneTime(new Date());
- withdrawalOrders.setType(Constants.ONE);
- withdrawalOrders.setObjId(orders.getId());
- wxMiniUtilService.wxRefund(withdrawalOrders,orders);
- }
-
- //鍑忓皯鍙戝崟閲�
- memberMapper.update(new UpdateWrapper<Member>().lambda()
- .setSql("publish_num = ifnull(publish_num,0) - 1")
- .eq(Member::getId,orders.getReleaseMemberId()));
-
- if(Constants.equalsInteger(orders.getStatus(),Constants.TWO)||Constants.equalsInteger(orders.getStatus(),Constants.THREE)){
- //鍑忓皯鎺ュ崟閲�
- memberMapper.update(new UpdateWrapper<Member>().lambda()
- .setSql("receive_num = ifnull(receive_num,0) - 1")
- .eq(Member::getId,orders.getAcceptMemberId()));
- }
- Date date = new Date();
- ordersMapper.update(new UpdateWrapper<Orders>().lambda()
- .set(Orders::getStatus,Constants.ordersStatus.cancel.getKey())
- .set(Orders::getUpdateTime,date)
- .set(Orders::getCancelTime,date)
- .set(Orders::getCancelType,Constants.TWO)
- .eq(Orders::getId,orders.getId())
- );
-
- //鏃ュ織瀛樺偍
- Constants.OrdersLog ordersLog = Constants.OrdersLog.SYSTEM_CANCEL;
- this.saveOrderLog(orders,ordersLog,
- ordersLog.getInfo(),null,loginUserInfo.getId());
-
- List<Member> members = memberMapper.selectList(new QueryWrapper<Member>().lambda()
- .and(i->i.eq(Member::getId,orders.getReleaseMemberId()).or().eq(Member::getId,orders.getAcceptMemberId()))
- );
- if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(members)){
- List<String> openIdList = members.stream().map(i->i.getOpenid()).collect(Collectors.toList());
- orders.setCancelTime(new Date());
- //鍙戦�佸井淇¢�氱煡
- orders.setCancelTime(new Date());
- sendWxMessage.cancelMessage(openIdList,orders,Constants.ZERO);
- }
- //鐭俊閫氱煡鍙戝崟鏂�
- aliSmsService.businessSendSms(Constants.smsContent.platformCancel.getKey(),orders.getLinkPhone(),orders,null,
- null,categoryMapper);
- //鐭俊閫氱煡鎺ュ崟鏂�
- if(Objects.nonNull(orders.getAcceptMemberId())){
- IdentityInfo wokerIdentityInfo = identityInfoMapper.selectOne(new QueryWrapper<IdentityInfo>().lambda()
- .eq(IdentityInfo::getMemberId,orders.getAcceptMemberId())
- .eq(IdentityInfo::getType,orders.getType())
- .eq(IdentityInfo::getAuditStatus,Constants.TWO)
- .last("limit 1")
- );
- if(Objects.nonNull(wokerIdentityInfo)){
- aliSmsService.businessSendSms(Constants.smsContent.platformCancel2.getKey(),wokerIdentityInfo.getTelephone(),orders,null,
- null,categoryMapper);
- }
- }
-
- }
-
-
-
-
- @Override
- public void comment(CommentDTO commentDTO){
- if(Objects.isNull(commentDTO)
- || Objects.isNull(commentDTO.getOrderId())
- || Objects.isNull(commentDTO.getLevel())
- || commentDTO.getLevel()<1 || commentDTO.getLevel() > 5 ){
- throw new BusinessException(ResponseStatus.BAD_REQUEST);
- }
- Orders orders = ordersMapper.selectById(commentDTO.getOrderId());
- if(Objects.isNull(orders)
- ||Constants.equalsInteger(orders.getDeleted(),Constants.ONE)){
- throw new BusinessException(ResponseStatus.DATA_EMPTY);
- }
- if(!Constants.equalsInteger(orders.getStatus(),Constants.ordersStatus.done.getKey())){
- throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"璁㈠崟鐘舵�佸凡娴佽浆,鏃犳硶杩涜璇勪环");
- }
- if(Constants.equalsInteger(orders.getCommentStatus(),Constants.ONE)){
- throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"璁㈠崟宸茶瘎浠凤紒");
- }
-
- ordersMapper.update(new UpdateWrapper<Orders>().lambda()
- .set(Orders::getCommentStatus,Constants.ONE)
- .set(Orders::getUpdateTime,new Date())
- .set(Orders::getCommentTime,new Date())
- .set(Orders::getCommentLevel,commentDTO.getLevel())
- .set(org.apache.commons.lang3.StringUtils.isNotBlank(commentDTO.getInfo()),Orders::getCommentInfo,commentDTO.getInfo())
- .set(Orders::getCommentType,Constants.ZERO)
- .eq(Orders::getId,orders.getId())
- );
- memberMapper.update(new UpdateWrapper<Member>().lambda()
- .setSql(" score = ( ifnull(total_score,0) +" + commentDTO.getLevel() + " ) / (ifnull(score_order_num,0) + 1 )")
- .setSql(" total_score = ifnull(total_score,0) +" + commentDTO.getLevel())
- .setSql(" score_order_num = ifnull(score_order_num,0) + 1 " )
- .eq(Member::getId,orders.getAcceptMemberId())
- );
- //鏃ュ織瀛樺偍
- Constants.OrdersLog ordersLog = Constants.OrdersLog.COMMENT;
- this.saveOrderLog(orders,ordersLog,
- ordersLog.getInfo(),orders.getAcceptMemberId(),null);
- }
-
-
- /**
- * 鏀粯鍥炶皟
- * @param preOrderId
- * @param paymentNo
- * @return
- */
- @Override
- @Transactional(rollbackFor = {BusinessException.class,Exception.class})
- public String payNotify(String preOrderId,String paymentNo){
- Orders orders = ordersMapper.selectOne(new QueryWrapper<Orders>().lambda().eq(Orders::getOutTradeNo,preOrderId).last("limit 1"));
- if(Constants.equalsInteger(orders.getType(),Constants.TWO)){
- //鐢ㄩ璁㈠崟 濡傛灉宸茬粡娴佽浆鍒板凡鏀粯 鍒欑洿鎺ヨ繑鍥�
- if(!Constants.equalsInteger(orders.getStatus(),Constants.ZERO)){
- return ("澶勭悊鎴愬姛!");
- }else{
- //澶勭悊鏀粯瀹屾垚閫昏緫
- ordersMapper.update(new UpdateWrapper<Orders>().lambda()
- .set(Orders::getUpdateTime,new Date())
- .set(Orders::getStatus,Constants.ordersStatus.wait.getKey())
- .set(Orders::getPayStatus,Constants.ONE)
- .set(Orders::getPayTime,new Date())
- .set(Orders::getPayMethod,Constants.ZERO)
- .set(Orders::getWxExternalNo,paymentNo)
- .eq(Orders::getId,orders.getId())
- );
-
- //瀛樺偍鏃ュ織
- Constants.OrdersLog ordersLog = Constants.OrdersLog.PAY;
- this.saveOrderLog(orders,ordersLog,
- ordersLog.getInfo(),orders.getReleaseMemberId(),null);
- }
- }else{
- //闈炵敤椁愮被璁㈠崟
- if(!Constants.equalsInteger(orders.getStatus(),Constants.FIVE)){
- return ("澶勭悊鎴愬姛!");
- }else{
- //澶勭悊鏀粯瀹屾垚閫昏緫
- ordersMapper.update(new UpdateWrapper<Orders>().lambda()
- .set(Orders::getUpdateTime,new Date())
- .set(Orders::getStatus,Constants.FOUR)
- .set(Orders::getPayStatus,Constants.ONE)
- .set(Orders::getPayTime,new Date())
- .set(Orders::getPayMethod,Constants.ZERO)
- .set(Orders::getWxExternalNo,paymentNo)
- .set(Orders::getFinishTime,new Date())
- .eq(Orders::getId,orders.getId())
- );
-
- Member member = memberMapper.selectById(orders.getAcceptMemberId());
- //瀛樺偍娴佹按璁板綍
- MemberRevenue memberRevenue = new MemberRevenue();
- memberRevenue.setCreateTime(new Date());
- memberRevenue.setDeleted(Constants.ZERO);
- memberRevenue.setTransactionNo(orders.getCode());
- memberRevenue.setMemberId(orders.getAcceptMemberId());
- memberRevenue.setType(orders.getType());
- memberRevenue.setOptType(Constants.ONE);
- memberRevenue.setBeforeAmount(member.getAmount());
- memberRevenue.setAmount(orders.getReceiveAccount());
- memberRevenue.setAfterAmount(member.getAmount() + orders.getReceiveAccount());
- if(Constants.equalsInteger(orders.getType(),Constants.ZERO)){
- memberRevenue.setRemark(Constants.RevenueType.getInfo(memberRevenue.getType()) + "-" +
- (Constants.equalsInteger(orders.getWorkType(),Constants.ZERO)?"閲囨憳宸�":(Constants.equalsInteger(orders.getWorkType(),Constants.ONE)?"鍒嗘嫞宸�":"鍖呰宸�")));
- }else{
- memberRevenue.setRemark(Constants.RevenueType.getInfo(memberRevenue.getType()));
- }
- memberRevenue.setObjId(orders.getId());
- memberRevenue.setObjType(Constants.ZERO);
- memberRevenue.setStatus(Constants.ZERO);
- memberRevenueMapper.insert(memberRevenue);
-
- //鏇存柊鎺ュ崟鐢ㄦ埛鐨勪綑棰濅笌鍘嗗彶鎬婚噾棰�
- memberMapper.update(new UpdateWrapper<Member>().lambda()
- .setSql(" amount = ( amount + " + orders.getReceiveAccount() +")" )
- .setSql(" total_amount = ( amount + " + orders.getReceiveAccount() + ")" )
- .eq(Member::getId,member.getId())
- );
-
- //瀛樺偍鏃ュ織
- Constants.OrdersLog ordersLog = Constants.OrdersLog.PAY;
- this.saveOrderLog(orders,ordersLog,
- ordersLog.getInfo(),orders.getReleaseMemberId(),null);
-
- // 閫氱煡鎺ュ崟鏂� 娆鹃」宸插埌璐�
- sendWxMessage.revenueMessage(member.getOpenid(),orders);
-
- //鐭俊閫氱煡鎺ュ崟鏂�
- if(Objects.nonNull(orders.getAcceptMemberId())){
- IdentityInfo wokerIdentityInfo = identityInfoMapper.selectOne(new QueryWrapper<IdentityInfo>().lambda()
- .eq(IdentityInfo::getMemberId,orders.getAcceptMemberId())
- .eq(IdentityInfo::getType,orders.getType())
- .eq(IdentityInfo::getAuditStatus,Constants.TWO)
- .last("limit 1")
- );
- if(Objects.nonNull(wokerIdentityInfo)){
- aliSmsService.businessSendSms(Constants.smsContent.pay.getKey(),wokerIdentityInfo.getTelephone(),orders,null,
- null,categoryMapper);
- }
- }
-
- }
- }
- return ("澶勭悊鎴愬姛!");
- }
-
-
- @Override
- public PageData<Orders> findPageForMini(PageWrap<Orders> pageWrap) {
- IPage<Orders> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
- MPJLambdaWrapper<Orders> queryWrapper = new MPJLambdaWrapper<>();
- Utils.MP.blankToNull(pageWrap.getModel());
- Orders model = pageWrap.getModel();
- if(Objects.isNull(model)
- || Objects.isNull(model.getQueryMyOrderType())
- ){
- throw new BusinessException(ResponseStatus.BAD_REQUEST);
- }
- BigDecimal chefLat = model.getQueryLat();
- BigDecimal chefLgt = model.getQueryLgt();
- BigDecimal driverLat = model.getQueryLat();
- BigDecimal driverLgt = model.getQueryLgt();
- BigDecimal workerLat = model.getQueryLat();
- BigDecimal workerLgt = model.getQueryLgt();
- IdentityInfo wokerIdentityInfo = identityInfoMapper.selectOne(new QueryWrapper<IdentityInfo>().lambda()
- .eq(IdentityInfo::getMemberId,model.getMember().getId())
- .eq(IdentityInfo::getType,Constants.ZERO)
- .eq(IdentityInfo::getAuditStatus,Constants.TWO)
- .last("limit 1")
- );
- if(Objects.nonNull(wokerIdentityInfo)){
- workerLat = wokerIdentityInfo.getLat();
- workerLgt = wokerIdentityInfo.getLgt();
- }
- IdentityInfo driverIdentityInfo = identityInfoMapper.selectOne(new QueryWrapper<IdentityInfo>().lambda()
- .eq(IdentityInfo::getMemberId,model.getMember().getId())
- .eq(IdentityInfo::getType,Constants.ONE)
- .eq(IdentityInfo::getAuditStatus,Constants.TWO)
- .last("limit 1")
- );
- if(Objects.nonNull(driverIdentityInfo)){
- driverLat = driverIdentityInfo.getLat();
- driverLgt = driverIdentityInfo.getLgt();
- }
- IdentityInfo chefIdentityInfo = identityInfoMapper.selectOne(new QueryWrapper<IdentityInfo>().lambda()
- .eq(IdentityInfo::getMemberId,model.getMember().getId())
- .eq(IdentityInfo::getType,Constants.TWO)
- .eq(IdentityInfo::getAuditStatus,Constants.TWO)
- .last("limit 1")
- );
- if(Objects.nonNull(chefIdentityInfo)){
- chefLat = chefIdentityInfo.getLat();
- chefLgt = chefIdentityInfo.getLgt();
- }
- queryWrapper.selectAll(Orders.class)
- .select("c1.name",Orders::getCategoryName)
- .select("c2.name",Orders::getTransportTypeName)
- .leftJoin(" category c1 on t.category_id = c1.id ")
- .leftJoin(" category c2 on t.TRANSPORT_TYPE_ID = c2.id ")
- .eq(Objects.nonNull(model.getType()),Orders::getType,model.getType())
- .eq(Objects.nonNull(model.getCommentStatus()),Orders::getCommentStatus,model.getCommentStatus());;
- if(!(Objects.isNull(model.getQueryLat())||Objects.isNull(model.getQueryLgt()))){
- queryWrapper.select(" case when T.LGT IS NULL OR T.LAT IS NULL THEN 0 " +
- " when t.TYPE = 0 then CONVERT( ST_Distance_Sphere ( POINT ( t.LGT, t.LAT ), POINT ( "+workerLgt+", "+workerLat+" )) /1000,DECIMAL(15,2)) " +
- " when t.TYPE = 1 then CONVERT( ST_Distance_Sphere ( POINT ( t.LGT, t.LAT ), POINT ( "+driverLgt+", "+driverLat+" )) /1000,DECIMAL(15,2)) " +
- " else CONVERT( ST_Distance_Sphere ( POINT ( t.LGT, t.LAT ), POINT ( "+chefLgt+", "+chefLat+" )) /1000,DECIMAL(15,2)) end " , Orders::getDistance);
- }
- if(Objects.nonNull(model.getQueryMyOrderType())){
- if(Constants.equalsInteger(model.getQueryMyOrderType(),Constants.ZERO)){
- //鍙戝崟鏂� 鎴戠殑璁㈠崟
- queryWrapper.eq(Orders::getReleaseMemberId,model.getMember().getId());
- queryWrapper.eq(Objects.nonNull(model.getStatus())&&!Constants.equalsInteger(model.getStatus(),Constants.ordersStatus.waitPay.getKey()),Orders::getStatus,model.getStatus());
- queryWrapper.in(Objects.nonNull(model.getStatus())&&Constants.equalsInteger(model.getStatus(),Constants.ordersStatus.waitPay.getKey()),Orders::getStatus,model.getStatus(),Constants.ordersStatus.feeconfirm.getKey());
- queryWrapper.orderByDesc(Orders::getCreateTime);
- }else if(Constants.equalsInteger(model.getQueryMyOrderType(),Constants.ONE)){
- //鎺ュ崟鏂� 鎴戠殑璁㈠崟
- queryWrapper.eq(Orders::getAcceptMemberId,model.getMember().getId());
- queryWrapper.eq(Objects.nonNull(model.getStatus()),Orders::getStatus,model.getStatus());
-// queryWrapper.in(Objects.nonNull(model.getStatus())&&Constants.equalsInteger(model.getStatus(),Constants.ordersStatus.waitPay.getKey()),Orders::getStatus,model.getStatus(),Constants.ordersStatus.feeconfirm.getKey());
- queryWrapper.orderByDesc(Orders::getAcceptTime);
- }else{
- //鏌ヨ鐢ㄦ埛鐨勬帴鍗曟潈閲� 鎺ュ崟澶у巺
- ReceiveWeight receiveWeight = receiveWeightMapper.selectOne(new QueryWrapper<ReceiveWeight>().lambda().eq(ReceiveWeight::getDeleted,Constants.ZERO).apply(" RECEIVE_MIN < "+model.getMember().getReceiveNum()+" and RECEIVE_MAX > " + model.getMember().getReceiveNum()).last(" limit 1 "));
- if(Objects.nonNull(receiveWeight)){
- queryWrapper.apply(" DATE_ADD(t.CREATE_TIME, INTERVAL "+receiveWeight.getDelayTime()+" MINUTE) < now() ");
- }
- queryWrapper.eq(Orders::getStatus,Constants.ordersStatus.wait.getKey());
- queryWrapper.ne(Orders::getReleaseMemberId,model.getMember().getId());
- if(Objects.nonNull(model.getSortType())){
- if(Constants.equalsInteger(model.getSortType(),Constants.ZERO)){
- queryWrapper.orderByDesc(Orders::getCreateTime);
- }else if(Constants.equalsInteger(model.getSortType(),Constants.ONE)){
- queryWrapper.orderByAsc(" distance ");
- }else{
- queryWrapper.orderByDesc(Orders::getEstimatedAccount);
- }
- }
- }
- }
- IPage<Orders> iPage = ordersMapper.selectJoinPage(page,Orders.class,queryWrapper);
- for (Orders orders:iPage.getRecords()) {
- this.getPriceUnit(orders);
- if(Constants.equalsInteger(model.getQueryMyOrderType(),Constants.ZERO)||Constants.equalsInteger(model.getQueryMyOrderType(),Constants.ONE)){
- orders.setStatusName(
- Constants.equalsInteger(model.getQueryMyOrderType(),Constants.ZERO)?Constants.ordersStatus.getName(orders.getStatus()):
- Constants.ordersStatus.getInfo(orders.getStatus())
- );
- }
- }
- return PageData.from(iPage);
- }
-
-
-
-
- //瀹氫綅璺濈
- public void getDistance(Member member,Orders orders){
- try{
- if(Constants.equalsInteger(orders.getType(),Constants.ZERO)){
- if(Objects.nonNull(member.getWorkerIdentityModel())&&Objects.nonNull(member.getWorkerIdentityModel().getLgt())
- &&Objects.nonNull(member.getWorkerIdentityModel().getLat())){
- orders.setDistance(
- GeoUtils.haversineDistance(
- orders.getLgt().doubleValue(),orders.getLat().doubleValue(),
- member.getWorkerIdentityModel().getLgt().doubleValue(),
- member.getWorkerIdentityModel().getLat().doubleValue()
- )
- );
- }
-
- }else if(Constants.equalsInteger(orders.getType(),Constants.ONE)){
- if(Objects.nonNull(member.getDriverIdentityModel())&&Objects.nonNull(member.getDriverIdentityModel().getLgt())
- &&Objects.nonNull(member.getDriverIdentityModel().getLat())) {
- orders.setDistance(
- GeoUtils.haversineDistance(
- orders.getLgt().doubleValue(), orders.getLat().doubleValue(),
- member.getDriverIdentityModel().getLgt().doubleValue(),
- member.getDriverIdentityModel().getLat().doubleValue()
- )
- );
- }
- }else{
- if(Objects.nonNull(member.getChefIdentityModel())&&Objects.nonNull(member.getChefIdentityModel().getLgt())
- &&Objects.nonNull(member.getChefIdentityModel().getLat())) {
- orders.setDistance(
- GeoUtils.haversineDistance(
- orders.getLgt().doubleValue(),orders.getLat().doubleValue(),
- member.getChefIdentityModel().getLgt().doubleValue(),
- member.getChefIdentityModel().getLat().doubleValue()
- )
- );
- }
- }
- }catch (Exception e){
- orders.setDistance(0L);
- }
- }
-
-
-
- @Override
- public Orders getDetail(Integer id,Member member) {
- Orders orders = ordersMapper.selectJoinOne(Orders.class,new MPJLambdaWrapper<Orders>()
- .selectAll(Orders.class)
- .select(" m1.name " , Orders::getReleaseName)
- .select(" m1.telephone " , Orders::getReleasePhone)
- .select(" case when i.AUTH_TYPE = 0 then i.LINK_NAME else i.COMPANY_NAME end " , Orders::getAcceptName)
- .select(" i.TELEPHONE " , Orders::getAcceptPhone)
- .select("c1.name",Orders::getCategoryName)
- .select("c2.name",Orders::getTransportTypeName)
- .select(" m2.SCORE " , Orders::getScore)
- .select(" m1.PUBLISH_NUM " , Orders::getPublishNum)
- .select(" m2.RECEIVE_NUM " , Orders::getReceiveNum)
- .select(" m1.COVER_IMAGE " , Orders::getReleaseCoverImage)
- .select(" m2.COVER_IMAGE " , Orders::getAcceptCoverImage)
- .leftJoin(" category c1 on t.category_id = c1.id ")
- .leftJoin(" category c2 on t.TRANSPORT_TYPE_ID = c2.id ")
- .leftJoin("member m1 on t.RELEASE_MEMBER_ID = m1.id ")
- .leftJoin("member m2 on t.ACCEPT_MEMBER_ID = m2.id ")
- .leftJoin("identity_info i on m2.id = i.MEMBER_ID and i.TYPE = t.type and i.AUDIT_STATUS = 2 ")
-
- .eq(Orders::getId,id)
- );
- if(Objects.isNull(orders)){
- throw new BusinessException(ResponseStatus.DATA_EMPTY);
- }
- //澶村儚淇℃伅
- String coverPath = systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.RESOURCE_PATH).getCode()
- +systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.MEMBER_FILES).getCode();
- if(org.apache.commons.lang3.StringUtils.isNotBlank(orders.getReleaseCoverImage())){
- orders.setReleaseCoverImage(coverPath + orders.getReleaseCoverImage());
- }
- if(org.apache.commons.lang3.StringUtils.isNotBlank(orders.getAcceptCoverImage())){
- orders.setAcceptCoverImage(coverPath + orders.getAcceptCoverImage());
- }
- List<Multifile> multifileList = multifileMapper.selectList(new QueryWrapper<Multifile>().lambda().eq(Multifile::getObjId,orders.getId())
- .eq(Multifile::getIsdeleted,Constants.ZERO).eq(Multifile::getObjType,Constants.ONE).orderByAsc(Multifile::getId));
- if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(multifileList)){
- String path = systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.RESOURCE_PATH).getCode()
- +systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.ORDERS_FILES).getCode();
- for (Multifile multifile:multifileList) {
- multifile.setFileurlFull(path + multifile.getFileurl());
- }
- orders.setMultifileList(multifileList);
- }
- orders.setStatusName(Constants.ordersStatus.getName(orders.getStatus()));
- orders.setCancelStatus(Constants.ZERO);
- if(Constants.equalsInteger(orders.getStatus(),Constants.ordersStatus.accept.getKey())&&Constants.equalsInteger(orders.getIsUpdate(),Constants.ONE)){
- String autoConfirmTime = systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.AUTO_CONFIRM).getCode();
- orders.setConfirmCountdown(DateUtil.getXMinuteAfterDate(orders.getIsUpdateTime(),Integer.valueOf(autoConfirmTime)).getTime() - System.currentTimeMillis());
- if(orders.getConfirmCountdown()<=Constants.ZERO){
- orders.setConfirmCountdown(0L);
- }
- }
- if(Constants.equalsInteger(orders.getStatus(),Constants.ordersStatus.waitPay.getKey())){
- orders.setCancelCountdown(DateUtil.getXMinuteAfterDate(orders.getCreateTime(),15).getTime() - System.currentTimeMillis());
- if(orders.getCancelCountdown()<=Constants.ZERO){
- orders.setCancelCountdown(0L);
- }
- }
- this.getPriceUnit(orders);
- orders.setCanStart(Constants.ZERO);
- if(orders.getStatus() <= Constants.ordersStatus.accept.getKey()){
- if(Constants.equalsInteger(orders.getReleaseMemberId(),member.getId())){
- if(Constants.equalsInteger(orders.getStatus(),Constants.ordersStatus.accept.getKey())&&orders.getStartDate().getTime() <= System.currentTimeMillis()){
- orders.setCanStart(Constants.ONE);
- }
- //鍒ゆ柇鏄惁鍙慨鏀� 宸插彇娑堟鏁� 涓� 鏃堕棿闄愬埗
- Integer totalCancelTimes = Integer.valueOf(systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.RELEASE_CANCEL_TIMES).getCode());
- Long cancelTimes = ordersMapper.selectCount(new QueryWrapper<Orders>().lambda()
- .apply(" DATE(cancel_time) = DATE(NOW()) ")
- .eq(Orders::getStatus,Constants.ordersStatus.cancel.getKey())
- .eq(Orders::getReleaseMemberId,orders.getReleaseMemberId()));
- //鏌ヨ鍙栨秷娆℃暟
- if(totalCancelTimes<=cancelTimes){
- orders.setCancelStatus(Constants.ONE);
- return orders;
- }
- Integer cancelTimeHour = Integer.valueOf(systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.RELEASE_CANCEL_TIME).getCode());
- Long hours = DateUtil.getBetweenHours(new Date(),orders.getStartDate());
- if(hours < cancelTimeHour){
- orders.setCancelStatus(Constants.ONE);
- return orders;
- }
- }else if(Constants.equalsInteger(orders.getAcceptMemberId(),member.getId())){
- //鍒ゆ柇鏄惁鍙慨鏀� 宸插彇娑堟鏁� 涓� 鏃堕棿闄愬埗
- Integer totalCancelTimes = Integer.valueOf(systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.RECEIVE_CANCEL_TIMES).getCode());
- Long cancelTimes = orderLogMapper.selectCount(new QueryWrapper<OrderLog>().lambda()
- .apply(" DATE(create_time) = DATE(NOW()) ")
- .eq(OrderLog::getObjType,Constants.OrdersLog.CANCEL.getKey())
- .eq(OrderLog::getMemberId,member.getId()));
- //鏌ヨ鍙栨秷娆℃暟
- if(totalCancelTimes<=cancelTimes){
- orders.setCancelStatus(Constants.ONE);
- return orders;
- }
-
- Integer cancelTimeHour = Integer.valueOf(systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.RECEIVE_CANCEL_TIME).getCode());
- Long hours = DateUtil.getBetweenHours(new Date(),orders.getStartDate());
- if(hours < cancelTimeHour){
- orders.setCancelStatus(Constants.ONE);
- return orders;
- }
- }
- } else{
- orders.setCancelStatus(Constants.ONE);
- }
- return orders;
- }
-
-
-
-
- public synchronized String getNextCode(Integer type){
- String prefix = "YG";
- if(!Constants.equalsInteger(type,Constants.ZERO)){
- prefix = (Constants.equalsInteger(type,Constants.ONE)?"YH-":"DC-");
- }
- prefix = prefix + DateUtil.getCurrDateTimeShort() +"-";
-
- Integer countNum = (Integer) redisTemplate.opsForValue().get(Constants.RedisKeys.ORDER_CODE);//RedisUtil.getObject(redisTemplate, Constants.RedisKeys.ORDER_CODE, Integer.class);
- countNum = Constants.formatIntegerNum(countNum)+1;
- //鏇存柊缂撳瓨
- redisTemplate.opsForValue().set(Constants.RedisKeys.ORDER_CODE,countNum);
- String nextIndex =Integer.toString( countNum );
- return prefix + org.apache.commons.lang3.StringUtils.leftPad(nextIndex,3,"0");
- }
-
-
- @Override
- @Transactional(rollbackFor = {Exception.class,BusinessException.class})
- public void refundCallback(RefundNotification refundNotification){
- WithdrawalOrders withdrawalOrders = withdrawalOrdersMapper.selectById(refundNotification.getOutRefundNo());
- if(Objects.isNull(withdrawalOrders)||!Constants.equalsInteger(withdrawalOrders.getStatus(),Constants.ZERO)){
- return;
- }
- withdrawalOrders.setWxExternalNo(refundNotification.getTransactionId());
- withdrawalOrders.setUpdateTime(new Date());
- withdrawalOrders.setDoneTime(withdrawalOrders.getUpdateTime());
- if (!"SUCCESS".equals(refundNotification.getRefundStatus().name())) {
- // 濡傛灉閫�娆剧姸鎬佷笉姝g‘锛屼慨鏀归��娆惧崟鐘舵��
- withdrawalOrders.setStatus(Constants.TWO);
- }else{
- withdrawalOrders.setStatus(Constants.ONE);
- }
- //鏇存柊閫�娆惧崟鐘舵��
- withdrawalOrdersMapper.updateById(withdrawalOrders);
- }
-
-
- /**
- * 鑷姩娲惧崟
- */
- @Override
- public void autoGrabOrders(){
- String autoConfirmTime = systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.AUTO_DISPATCH).getCode();
- List<Orders> ordersList = ordersMapper.selectList(new QueryWrapper<Orders>().lambda().eq(Orders::getDeleted,Constants.ZERO)
- .eq(Orders::getStatus,Constants.ONE).eq(Orders::getCommentStatus,Constants.ZERO)
- .apply(" DATE_ADD(create_time, INTERVAL "+autoConfirmTime+" MINUTE) < now() ")
- .last("limit 100")
- );
- for (Orders orders:ordersList) {
- BigDecimal lat = orders.getLat();
- BigDecimal lgt = orders.getLgt();
- //鏌ヨ鑼冨洿鍐呯殑浼氬憳
- List<Member> memberList = memberMapper.getList(lgt,lat,orders.getType(),orders.getReleaseMemberId());
-// memberMapper.selectList(new MPJLambdaWrapper<Member>()
-// .select(Member::getId,Member::getScore)
-// .select(" ifnull((select r.level from receive_weight r where r.RECEIVE_MAX > RECEIVE_NUM and RECEIVE_NUM > r.RECEIVE_MIN limit 1 ),0) " ,Member::getLevel)
-// .select( " ifnull( (select CONVERT( ST_Distance_Sphere ( POINT ( ii.lgt, ii.lat ), POINT ( "+lgt+", "+lat+" )) /1000,DECIMAL(15,2)) from identity_info ii where ii.AUDIT_STATUS = 2 and type = 0 and ii.member_id = ID limit 1 ),0) ",Member::getDistance )
-////
-// .apply(" id in (" +
-// " select ii.member_id from identity_info ii where ii.AUDIT_STATUS = 2 and type = '"+orders.getType()+"' " +
-// " and ( CONVERT( ST_Distance_Sphere ( POINT ( ii.lgt, ii.lat ), POINT ( "+lgt+", "+lat+" )) /1000,DECIMAL(15,2))) < 100 " +
-// ") ")
-// .orderByDesc(" level , score ")
-// .orderByAsc(Member::getDistance)
-// .last(" limit 1 ")
-// );
- if(CollectionUtils.isEmpty(memberList)){
- continue;
- }
-
- Member member = memberList.get(Constants.ZERO);
- Member releaseMember = memberMapper.selectById(orders.getReleaseMemberId());
- //鑷姩娲惧崟
- Orders model = ordersMapper.selectById(orders.getId());
- if(!Constants.equalsInteger(model.getStatus(),Constants.ONE) || Constants.equalsInteger(releaseMember.getId(),model.getReleaseMemberId())){
- //濡傛灉璁㈠崟宸插垹闄� 骞朵笖闈炲彂甯冩柟
- continue;
- }
- ordersMapper.update(new UpdateWrapper<Orders>().lambda().eq(Orders::getId,model.getId())
- .set(Orders::getUpdateTime,new Date())
- .set(Orders::getAcceptType,Constants.ONE)
- .set(Orders::getAcceptTime,new Date())
- .set(Orders::getAcceptMemberId,member.getId())
- .set(Orders::getStatus,Constants.ordersStatus.accept.getKey())
- );
-
- //鏇存柊鎺ュ崟閲�
- memberMapper.update(new UpdateWrapper<Member>().lambda().setSql(" RECEIVE_NUM = (ifnull(RECEIVE_NUM,0) + 1 )").eq(Member::getId,member.getId()));
-
- //鍒涘缓鎿嶄綔鏃ュ織
- Constants.OrdersLog ordersLog = Constants.OrdersLog.AUTO;
- this.saveOrderLog(orders,ordersLog,
- ordersLog.getInfo(),member.getId(),null);
-
- IdentityInfo wokerIdentityInfo = identityInfoMapper.selectOne(new QueryWrapper<IdentityInfo>().lambda()
- .eq(IdentityInfo::getMemberId,member.getId())
- .eq(IdentityInfo::getType,orders.getType())
- .eq(IdentityInfo::getAuditStatus,Constants.TWO)
- .last("limit 1")
- );
- //閫氱煡鍙戝崟鏂�
- if(org.apache.commons.lang3.StringUtils.isNotBlank(releaseMember.getOpenid())&&Objects.nonNull(wokerIdentityInfo)){
- //鍙戦�佸井淇¢�氱煡
- sendWxMessage.acceptMessage(releaseMember.getOpenid(),orders,wokerIdentityInfo.getLinkName(),wokerIdentityInfo.getTelephone());
- }
-
- //閫氱煡鎺ュ崟鏂�
- sendWxMessage.autoDispatchMessage(member.getOpenid(),orders,GeoUtils.haversineDistance(
- orders.getLgt().doubleValue(), orders.getLat().doubleValue(),
- wokerIdentityInfo.getLgt().doubleValue(),
- wokerIdentityInfo.getLat().doubleValue()
- ));
-
- aliSmsService.businessSendSms(Constants.smsContent.dispatch.getKey(),orders.getLinkPhone(),orders,null,
- null,categoryMapper);
- }
- }
-
- //鑷姩璇勪环 璁㈠崟瀹屾垚7澶╁悗鑷姩璇勪环4鏄�
- @Override
- @Transactional(rollbackFor = {Exception.class,BusinessException.class})
- public void autoComment(){
- List<Orders> ordersList = ordersMapper.selectList(new QueryWrapper<Orders>().lambda()
- .eq(Orders::getStatus,Constants.FOUR).eq(Orders::getCommentStatus,Constants.ZERO)
- .apply(" DATE_ADD(finish_time, INTERVAL 7 DAY) < now() ")
- .last("limit 100")
- );
-
- for (Orders orders:ordersList) {
- ordersMapper.update(new UpdateWrapper<Orders>().lambda()
- .set(Orders::getCommentStatus,Constants.ONE)
- .set(Orders::getUpdateTime,new Date())
- .set(Orders::getCommentTime,new Date())
- .set(Orders::getCommentLevel,Constants.FOUR)
- .set(Orders::getCommentType,Constants.ZERO)
- .eq(Orders::getId,orders.getId())
- );
-
- memberMapper.update(new UpdateWrapper<Member>().lambda()
- .setSql(" score = ( ( total_score +" + Constants.FOUR + " ) / (score_order_num + 1 ) ) ")
- .setSql(" total_score = ( total_score +" + Constants.FOUR + ")")
- .setSql(" score_order_num = ( score_order_num + 1 ) " ).eq(Member::getId,orders.getAcceptMemberId())
- );
-
- //鏃ュ織瀛樺偍
- Constants.OrdersLog ordersLog = Constants.OrdersLog.AUTO_COMMENT;
- this.saveOrderLog(orders,ordersLog,
- ordersLog.getInfo(),orders.getAcceptMemberId(),null);
- }
- }
-
-
- //鑷姩纭 璁㈠崟淇敼鍚庤嫢鏈鐞� 鏍规嵁閰嶇疆鑷姩澶勭悊
- @Override
- @Transactional(rollbackFor = {Exception.class,BusinessException.class})
- public void autoConfirm(){
- String autoConfirmTime = systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.AUTO_CONFIRM).getCode();
- List<Orders> ordersList = ordersMapper.selectList(new QueryWrapper<Orders>().lambda()
- .eq(Orders::getStatus,Constants.ordersStatus.accept.getKey())
- .eq(Orders::getIsUpdate,Constants.ONE)
- .apply(" DATE_ADD(IS_UPDATE_TIME, INTERVAL "+autoConfirmTime+" MINUTE) < now() ")
- .last("limit 100")
- );
- if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(ordersList)){
- for (Orders orders:ordersList) {
- ordersMapper.update(new UpdateWrapper<Orders>().lambda()
- .set(Orders::getIsUpdate,Constants.TWO)
- .set(Orders::getUpdateTime,new Date())
- .eq(Orders::getId,orders.getId())
- );
- //璁板綍鍚屾剰淇敼鐨勬棩蹇�
- Constants.OrdersLog ordersLog = Constants.OrdersLog.AUTO_AGREE;
- this.saveOrderLog(orders,ordersLog,
- ordersLog.getInfo(),null,null);
- }
- }
- }
-
-
-
- //鑷姩鍙栨秷 璁㈠崟鏈敮浠�
- @Override
- @Transactional(rollbackFor = {Exception.class,BusinessException.class})
- public void autoCancelWaitPay(){
- List<Orders> ordersList = ordersMapper.selectList(new QueryWrapper<Orders>().lambda()
- .eq(Orders::getStatus,Constants.ordersStatus.waitPay)
- .apply(" DATE_ADD(CREATE_TIME, INTERVAL 15 MINUTE) < now() ")
- .last("limit 100")
- );
- if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(ordersList)){
- for (Orders orders:ordersList) {
- ordersMapper.update(new UpdateWrapper<Orders>().lambda()
- .set(Orders::getStatus,Constants.ordersStatus.cancel.getKey())
- .set(Orders::getUpdateTime,DateUtil.getCurrDateTime())
- .set(Orders::getCancelTime,DateUtil.getCurrDateTime())
- .set(Orders::getCancelType,Constants.TWO)
- .eq(Orders::getId,orders.getId())
- );
- //璁板綍鍚屾剰淇敼鐨勬棩蹇�
- Constants.OrdersLog ordersLog = Constants.OrdersLog.SYSTEM_CANCEL;
- this.saveOrderLog(orders,ordersLog,
- ordersLog.getInfo(),orders.getAcceptMemberId(),null);
- }
- }
- }
-
-
- @Override
- public void initializeCode(){
- //鏇存柊缂撳瓨
- redisTemplate.opsForValue().set(Constants.RedisKeys.ORDER_CODE,0);
- }
-
}
diff --git a/server/services/src/main/java/com/doumee/service/business/impl/RevenueServiceImpl.java b/server/services/src/main/java/com/doumee/service/business/impl/RevenueServiceImpl.java
new file mode 100644
index 0000000..441ea60
--- /dev/null
+++ b/server/services/src/main/java/com/doumee/service/business/impl/RevenueServiceImpl.java
@@ -0,0 +1,151 @@
+package com.doumee.service.business.impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.doumee.core.constants.Constants;
+import com.doumee.core.constants.ResponseStatus;
+import com.doumee.core.exception.BusinessException;
+import com.doumee.core.model.PageData;
+import com.doumee.core.model.PageWrap;
+import com.doumee.core.utils.Utils;
+import com.doumee.dao.business.RevenueMapper;
+import com.doumee.dao.business.model.Revenue;
+import com.doumee.service.business.RevenueService;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+import java.util.Objects;
+
+/**
+ * 鏀舵敮璁板綍Service瀹炵幇
+ * @author rk
+ * @date 2026/04/10
+ */
+@Service
+public class RevenueServiceImpl implements RevenueService {
+
+ @Autowired
+ private RevenueMapper revenueMapper;
+
+ @Override
+ public Integer create(Revenue revenue) {
+ revenueMapper.insert(revenue);
+ return revenue.getId();
+ }
+
+ @Override
+ public void deleteById(Integer id) {
+ revenueMapper.update(new UpdateWrapper<Revenue>().lambda()
+ .set(Revenue::getDeleted, Constants.ONE)
+ .eq(Revenue::getId, id));
+ }
+
+ @Override
+ public void delete(Revenue revenue) {
+ UpdateWrapper<Revenue> deleteWrapper = new UpdateWrapper<>(revenue);
+ revenueMapper.delete(deleteWrapper);
+ }
+
+ @Override
+ public void deleteByIdInBatch(List<Integer> ids) {
+ if (ids == null || ids.isEmpty()) {
+ return;
+ }
+ revenueMapper.deleteBatchIds(ids);
+ }
+
+ @Override
+ public void updateById(Revenue revenue) {
+ revenueMapper.updateById(revenue);
+ }
+
+ @Override
+ public void updateByIdInBatch(List<Revenue> revenues) {
+ if (revenues == null || revenues.isEmpty()) {
+ return;
+ }
+ for (Revenue revenue : revenues) {
+ this.updateById(revenue);
+ }
+ }
+
+ @Override
+ public Revenue findById(Integer id) {
+ Revenue revenue = revenueMapper.selectById(id);
+ if (Objects.isNull(revenue)) {
+ throw new BusinessException(ResponseStatus.DATA_EMPTY);
+ }
+ return revenue;
+ }
+
+ @Override
+ public Revenue findOne(Revenue revenue) {
+ QueryWrapper<Revenue> wrapper = new QueryWrapper<>(revenue);
+ return revenueMapper.selectOne(wrapper);
+ }
+
+ @Override
+ public List<Revenue> findList(Revenue revenue) {
+ QueryWrapper<Revenue> wrapper = new QueryWrapper<>(revenue);
+ return revenueMapper.selectList(wrapper);
+ }
+
+ @Override
+ public PageData<Revenue> findPage(PageWrap<Revenue> pageWrap) {
+ IPage<Revenue> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
+ QueryWrapper<Revenue> queryWrapper = new QueryWrapper<>();
+ Utils.MP.blankToNull(pageWrap.getModel());
+ pageWrap.getModel().setDeleted(Constants.ZERO);
+ // 鐢ㄦ埛涓婚敭
+ if (pageWrap.getModel().getMemberId() != null) {
+ queryWrapper.lambda().eq(Revenue::getMemberId, pageWrap.getModel().getMemberId());
+ }
+ // 鏃堕棿鑼冨洿
+ if (pageWrap.getModel().getStartTime() != null) {
+ queryWrapper.lambda().ge(Revenue::getCreateTime, pageWrap.getModel().getStartTime());
+ }
+ if (pageWrap.getModel().getEndTime() != null) {
+ queryWrapper.lambda().le(Revenue::getCreateTime, pageWrap.getModel().getEndTime());
+ }
+ // 鏀舵敮绫诲瀷
+ if (pageWrap.getModel().getOptType() != null) {
+ queryWrapper.lambda().eq(Revenue::getOptType, pageWrap.getModel().getOptType());
+ }
+ // 璁㈠崟鍙锋ā绯婃煡璇�
+ if (StringUtils.isNotBlank(pageWrap.getModel().getOrderNo())) {
+ queryWrapper.lambda().like(Revenue::getOrderNo, pageWrap.getModel().getOrderNo());
+ }
+ // 鏄惁鐢熸晥
+ if (pageWrap.getModel().getVaildStatus() != null) {
+ queryWrapper.lambda().eq(Revenue::getVaildStatus, pageWrap.getModel().getVaildStatus());
+ }
+ // 榛樿鎸夊垱寤烘椂闂村�掑簭
+ queryWrapper.lambda().orderByDesc(Revenue::getCreateTime);
+ for (PageWrap.SortData sortData : pageWrap.getSorts()) {
+ if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) {
+ queryWrapper.orderByDesc(sortData.getProperty());
+ } else {
+ queryWrapper.orderByAsc(sortData.getProperty());
+ }
+ }
+ PageData<Revenue> result = PageData.from(revenueMapper.selectPage(page, queryWrapper));
+ // 閲戦鍒嗚浆鍏�
+ if (result != null && result.getRecords() != null) {
+ for (Revenue model : result.getRecords()) {
+ model.setAmountInfo(Constants.getFormatMoney(model.getAmount()));
+ }
+ }
+ return result;
+ }
+
+ @Override
+ public long count(Revenue revenue) {
+ QueryWrapper<Revenue> wrapper = new QueryWrapper<>(revenue);
+ return revenueMapper.selectCount(wrapper);
+ }
+
+}
diff --git a/server/services/src/main/java/com/doumee/service/business/impl/ShopInfoServiceImpl.java b/server/services/src/main/java/com/doumee/service/business/impl/ShopInfoServiceImpl.java
index a69fee6..97d1f7d 100644
--- a/server/services/src/main/java/com/doumee/service/business/impl/ShopInfoServiceImpl.java
+++ b/server/services/src/main/java/com/doumee/service/business/impl/ShopInfoServiceImpl.java
@@ -10,15 +10,31 @@
import com.doumee.core.model.PageData;
import com.doumee.core.model.PageWrap;
import com.doumee.core.utils.Utils;
+import com.doumee.biz.system.AreasBiz;
+import com.doumee.biz.system.SystemDictDataBiz;
+import com.doumee.dao.business.MemberMapper;
+import com.doumee.dao.business.MultifileMapper;
import com.doumee.dao.business.ShopInfoMapper;
+import com.doumee.dao.business.model.Areas;
+import com.doumee.dao.business.model.Member;
+import com.doumee.dao.business.model.Multifile;
import com.doumee.dao.business.model.ShopInfo;
+import com.doumee.dao.dto.AuditDTO;
+import com.doumee.dao.dto.ChangeStatusDTO;
+import com.doumee.dao.dto.ResetPasswordDTO;
+import com.doumee.dao.dto.ShopApplyDTO;
+import com.doumee.dao.dto.ShopUpdateDTO;
+import com.doumee.dao.vo.ShopDetailVO;
import com.doumee.service.business.ShopInfoService;
+import org.apache.commons.collections.CollectionUtils;
+import org.apache.commons.lang3.StringUtils;
+import org.apache.commons.lang3.RandomStringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
-import org.springframework.util.CollectionUtils;
+import org.springframework.transaction.annotation.Transactional;
-import java.util.List;
-import java.util.Objects;
+import java.util.*;
+import java.util.stream.Collectors;
/**
* 闂ㄥ簵淇℃伅Service瀹炵幇
@@ -30,6 +46,18 @@
@Autowired
private ShopInfoMapper shopInfoMapper;
+
+ @Autowired
+ private MemberMapper memberMapper;
+
+ @Autowired
+ private MultifileMapper multifileMapper;
+
+ @Autowired
+ private SystemDictDataBiz systemDictDataBiz;
+
+ @Autowired
+ private AreasBiz areasBiz;
@Override
public Integer create(ShopInfo shopInfo) {
@@ -50,7 +78,7 @@
@Override
public void deleteByIdInBatch(List<Integer> ids) {
- if (CollectionUtils.isEmpty(ids)) {
+ if (ids == null || ids.isEmpty()) {
return;
}
shopInfoMapper.deleteBatchIds(ids);
@@ -63,7 +91,7 @@
@Override
public void updateByIdInBatch(List<ShopInfo> shopInfos) {
- if (CollectionUtils.isEmpty(shopInfos)) {
+ if (shopInfos == null || shopInfos.isEmpty()) {
return;
}
for (ShopInfo shopInfo : shopInfos) {
@@ -111,6 +139,12 @@
queryWrapper.lambda().ge(ShopInfo::getCreateTime, Utils.Date.getStart(pageWrap.getModel().getCreateTime()));
queryWrapper.lambda().le(ShopInfo::getCreateTime, Utils.Date.getEnd(pageWrap.getModel().getCreateTime()));
}
+ if (pageWrap.getModel().getCreateStartTime() != null) {
+ queryWrapper.lambda().ge(ShopInfo::getCreateTime, Utils.Date.getStart(pageWrap.getModel().getCreateStartTime()));
+ }
+ if (pageWrap.getModel().getCreateEndTime() != null) {
+ queryWrapper.lambda().le(ShopInfo::getCreateTime, Utils.Date.getEnd(pageWrap.getModel().getCreateEndTime()));
+ }
if (pageWrap.getModel().getUpdateUser() != null) {
queryWrapper.lambda().eq(ShopInfo::getUpdateUser, pageWrap.getModel().getUpdateUser());
}
@@ -139,6 +173,9 @@
if (pageWrap.getModel().getAreaId() != null) {
queryWrapper.lambda().eq(ShopInfo::getAreaId, pageWrap.getModel().getAreaId());
}
+ if (pageWrap.getModel().getAuditStatus() != null) {
+ queryWrapper.lambda().eq(ShopInfo::getAuditStatus, pageWrap.getModel().getAuditStatus());
+ }
if (pageWrap.getModel().getStatus() != null) {
queryWrapper.lambda().eq(ShopInfo::getStatus, pageWrap.getModel().getStatus());
}
@@ -168,4 +205,445 @@
return shopInfoMapper.selectCount(wrapper);
}
+ // ========== 闂ㄥ簵鍏ラ┗涓氬姟 ==========
+
+ @Override
+ @Transactional(rollbackFor = Exception.class)
+ public void applyShop(ShopApplyDTO request, Member member) {
+ Integer memberId = member.getId();
+
+ // 1. 鏍¢獙闂ㄥ簵鎵嬫満鍙峰敮涓�鎬э紙shop_info.telephone锛�
+ checkTelephoneUnique(request.getTelephone(), null);
+
+ // 2. 鏍规嵁绫诲瀷鏍¢獙闄勪欢
+ if (Constants.equalsInteger(request.getCompanyType(), Constants.ZERO)) {
+ // 涓汉绫诲瀷锛氬繀椤讳笂浼犲姵鍔ㄥ悎鍚屽拰绀句繚璇佹槑
+ if (CollectionUtils.isEmpty(request.getLaborContractImgs())) {
+ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "涓汉绫诲瀷蹇呴』涓婁紶鏈夋晥鍔冲姩鍚堝悓");
+ }
+ if (CollectionUtils.isEmpty(request.getSocialSecurityImgs())) {
+ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "涓汉绫诲瀷蹇呴』涓婁紶绀句繚缂寸撼璇佹槑");
+ }
+ } else if (Constants.equalsInteger(request.getCompanyType(), Constants.ONE)) {
+ // 浼佷笟绫诲瀷锛氬繀椤诲~鍐欐硶浜轰俊鎭拰钀ヤ笟鎵х収
+ if (StringUtils.isBlank(request.getBusinessImg())) {
+ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "浼佷笟绫诲瀷蹇呴』涓婁紶钀ヤ笟鎵х収");
+ }
+ if (StringUtils.isBlank(request.getLegalPersonName())) {
+ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "浼佷笟绫诲瀷蹇呴』濉啓娉曚汉濮撳悕");
+ }
+ if (StringUtils.isBlank(request.getLegalPersonPhone())) {
+ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "浼佷笟绫诲瀷蹇呴』濉啓娉曚汉鐢佃瘽");
+ }
+ if (StringUtils.isBlank(request.getLegalPersonCard())) {
+ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "浼佷笟绫诲瀷蹇呴』濉啓娉曚汉韬唤璇佸彿鐮�");
+ }
+ }
+
+ Date now = new Date();
+ String rawPassword = generateDefaultPassword(request.getTelephone());
+ String salt = RandomStringUtils.randomAlphabetic(6);
+ String encryptedPassword = Utils.Secure.encryptPassword(rawPassword, salt);
+
+ // 3. 鏌ヨ璇ヤ細鍛樻槸鍚﹀凡鏈夐棬搴楄褰�
+ QueryWrapper<ShopInfo> existQw = new QueryWrapper<>();
+ existQw.lambda()
+ .eq(ShopInfo::getRegionMemberId, memberId)
+ .eq(ShopInfo::getDeleted, Constants.ZERO)
+ .last("limit 1");
+ ShopInfo existing = shopInfoMapper.selectOne(existQw);
+
+ Integer shopId;
+ if (existing != null) {
+ // 鏍¢獙鐘舵�侊細鍙湁寰呭鎵�(0)鍜岃椹冲洖(2)鍙慨鏀�
+ if (!Constants.equalsInteger(existing.getAuditStatus(), Constants.ZERO)
+ && !Constants.equalsInteger(existing.getAuditStatus(), Constants.TWO)) {
+ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "褰撳墠闂ㄥ簵鐘舵�佷笉鍏佽淇敼");
+ }
+ // 鏍¢獙openid鍖归厤锛氬綋鍓嶇櫥褰曚細鍛樼殑openid蹇呴』涓庨棬搴楃殑openid涓�鑷�
+ if (existing.getOpenid() != null && !existing.getOpenid().equals(member.getOpenid())) {
+ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "鏃犳潈闄愭搷浣滃綋鍓嶉棬搴椾俊鎭�");
+ }
+ // 鏍¢獙鎵嬫満鍙峰敮涓�鎬э紙鎺掗櫎鑷韩锛�
+ if (!request.getTelephone().equals(existing.getTelephone())) {
+ checkTelephoneUnique(request.getTelephone(), existing.getId());
+ }
+ // 鏇存柊
+ existing.setCompanyType(request.getCompanyType());
+ existing.setName(request.getName());
+ existing.setTelephone(request.getTelephone());
+ existing.setLinkName(request.getLinkName());
+ existing.setLinkPhone(request.getLinkPhone());
+ existing.setIdcard(request.getIdcard());
+ existing.setAreaId(request.getAreaId());
+ existing.setLongitude(request.getLongitude());
+ existing.setLatitude(request.getLatitude());
+ existing.setAddress(request.getAddress());
+ existing.setIdcardImg(request.getIdcardImg());
+ existing.setIdcardImgBack(request.getIdcardImgBack());
+ existing.setBusinessImg(request.getBusinessImg());
+ existing.setLegalPersonName(request.getLegalPersonName());
+ existing.setLegalPersonPhone(request.getLegalPersonPhone());
+ existing.setLegalPersonCard(request.getLegalPersonCard());
+ existing.setPassword(encryptedPassword);
+ existing.setSalt(salt);
+ existing.setAuditStatus(Constants.ZERO);
+ existing.setUpdateTime(now);
+ existing.setUpdateUser(memberId);
+ existing.setAuditRemark(null);
+ existing.setAuditTime(null);
+ existing.setAuditUserId(null);
+ shopInfoMapper.updateById(existing);
+ shopId = existing.getId();
+ } else {
+ // 鏂板缓
+ ShopInfo shopInfo = new ShopInfo();
+ shopInfo.setCompanyType(request.getCompanyType());
+ shopInfo.setName(request.getName());
+ shopInfo.setTelephone(request.getTelephone());
+ shopInfo.setLinkName(request.getLinkName());
+ shopInfo.setLinkPhone(request.getLinkPhone());
+ shopInfo.setIdcard(request.getIdcard());
+ shopInfo.setAreaId(request.getAreaId());
+ shopInfo.setLongitude(request.getLongitude());
+ shopInfo.setLatitude(request.getLatitude());
+ shopInfo.setAddress(request.getAddress());
+ shopInfo.setIdcardImg(request.getIdcardImg());
+ shopInfo.setIdcardImgBack(request.getIdcardImgBack());
+ shopInfo.setBusinessImg(request.getBusinessImg());
+ shopInfo.setLegalPersonName(request.getLegalPersonName());
+ shopInfo.setLegalPersonPhone(request.getLegalPersonPhone());
+ shopInfo.setLegalPersonCard(request.getLegalPersonCard());
+ shopInfo.setPassword(encryptedPassword);
+ shopInfo.setSalt(salt);
+ shopInfo.setOpenid(member.getOpenid());
+ shopInfo.setAuditStatus(Constants.ZERO);
+ shopInfo.setStatus(Constants.ZERO);
+ shopInfo.setDeleted(Constants.ZERO);
+ shopInfo.setCreateTime(now);
+ shopInfo.setUpdateTime(now);
+ shopInfo.setCreateUser(memberId);
+ shopInfo.setRegionMemberId(memberId);
+ shopInfoMapper.insert(shopInfo);
+ shopId = shopInfo.getId();
+ }
+
+ // 4. 鍒犻櫎鏃ч檮浠惰褰�
+ multifileMapper.delete(new QueryWrapper<Multifile>().lambda()
+ .eq(Multifile::getObjId, shopId)
+ .in(Multifile::getObjType,
+ Constants.FileType.STORE_FRONT.getKey(),
+ Constants.FileType.STORE_INTERIOR.getKey(),
+ Constants.FileType.OTHER_MATERIAL.getKey(),
+ Constants.FileType.LABOR_CONTRACT.getKey(),
+ Constants.FileType.SOCIAL_SECURITY.getKey()));
+
+ // 5. 淇濆瓨鏂伴檮浠惰褰�
+ saveMultifileList(shopId, Constants.FileType.STORE_FRONT.getKey(), request.getStoreFrontImgs(), now);
+ saveMultifileList(shopId, Constants.FileType.STORE_INTERIOR.getKey(), request.getStoreInteriorImgs(), now);
+ saveMultifileList(shopId, Constants.FileType.OTHER_MATERIAL.getKey(), request.getOtherMaterialImgs(), now);
+ saveMultifileList(shopId, Constants.FileType.LABOR_CONTRACT.getKey(), request.getLaborContractImgs(), now);
+ saveMultifileList(shopId, Constants.FileType.SOCIAL_SECURITY.getKey(), request.getSocialSecurityImgs(), now);
+ }
+
+ @Override
+ public ShopDetailVO getShopDetail(Integer shopId) {
+ ShopInfo shopInfo = shopInfoMapper.selectById(shopId);
+ if (shopInfo == null || Constants.equalsInteger(shopInfo.getDeleted(), Constants.ONE)) {
+ throw new BusinessException(ResponseStatus.DATA_EMPTY);
+ }
+ return buildShopDetailVO(shopInfo);
+ }
+
+ @Override
+ public ShopDetailVO getMyShop(Integer memberId) {
+ QueryWrapper<ShopInfo> qw = new QueryWrapper<>();
+ qw.lambda()
+ .eq(ShopInfo::getRegionMemberId, memberId)
+ .eq(ShopInfo::getDeleted, Constants.ZERO)
+ .last("limit 1");
+ ShopInfo shopInfo = shopInfoMapper.selectOne(qw);
+ if (shopInfo == null) {
+ return null;
+ }
+ return buildShopDetailVO(shopInfo);
+ }
+
+ @Override
+ @Transactional(rollbackFor = Exception.class)
+ public void auditShop(AuditDTO auditDTO) {
+ if (auditDTO.getId() == null) {
+ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "涓婚敭涓嶈兘涓虹┖");
+ }
+ if (auditDTO.getAuditStatus() == null
+ || (auditDTO.getAuditStatus() != 0 && auditDTO.getAuditStatus() != 1)) {
+ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "瀹℃壒鐘舵�佸弬鏁伴敊璇�");
+ }
+ ShopInfo shopInfo = shopInfoMapper.selectById(auditDTO.getId());
+ if (shopInfo == null || Constants.equalsInteger(shopInfo.getDeleted(), Constants.ONE)) {
+ throw new BusinessException(ResponseStatus.DATA_EMPTY);
+ }
+ if (!Constants.equalsInteger(shopInfo.getAuditStatus(), Constants.ZERO)) {
+ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "褰撳墠鐘舵�佷笉鍏佽瀹℃壒");
+ }
+
+ Date now = new Date();
+ // auditDTO.auditStatus: 0=閫氳繃 鈫� auditStatus=1, 1=椹冲洖 鈫� auditStatus=2
+ Integer newAuditStatus = Constants.equalsInteger(auditDTO.getAuditStatus(), Constants.ZERO) ? Constants.ONE : Constants.TWO;
+ shopInfo.setAuditStatus(newAuditStatus);
+ shopInfo.setAuditTime(now);
+ shopInfo.setAuditRemark(auditDTO.getAuditRemark());
+ shopInfo.setAuditUserId(auditDTO.getAuditUser());
+ shopInfo.setUpdateTime(now);
+ shopInfoMapper.updateById(shopInfo);
+ }
+
+ @Override
+ public void changeStatus(ChangeStatusDTO dto) {
+ if (dto.getId() == null) {
+ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "涓婚敭涓嶈兘涓虹┖");
+ }
+ if (dto.getStatus() == null || (dto.getStatus() != 0 && dto.getStatus() != 1)) {
+ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "鐘舵�佸弬鏁伴敊璇紝0=鍚敤锛�1=绂佺敤");
+ }
+ ShopInfo shopInfo = shopInfoMapper.selectById(dto.getId());
+ if (shopInfo == null || Constants.equalsInteger(shopInfo.getDeleted(), Constants.ONE)) {
+ throw new BusinessException(ResponseStatus.DATA_EMPTY);
+ }
+ shopInfo.setStatus(dto.getStatus());
+ shopInfo.setUpdateTime(new Date());
+ shopInfoMapper.updateById(shopInfo);
+ }
+
+ @Override
+ @Transactional(rollbackFor = Exception.class)
+ public void resetPassword(ResetPasswordDTO dto) {
+ if (dto.getId() == null) {
+ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "闂ㄥ簵涓婚敭涓嶈兘涓虹┖");
+ }
+ ShopInfo shopInfo = shopInfoMapper.selectById(dto.getId());
+ if (shopInfo == null || Constants.equalsInteger(shopInfo.getDeleted(), Constants.ONE)) {
+ throw new BusinessException(ResponseStatus.DATA_EMPTY);
+ }
+ String rawPassword = generateDefaultPassword(shopInfo.getTelephone());
+ String salt = RandomStringUtils.randomAlphabetic(6);
+ shopInfo.setPassword(Utils.Secure.encryptPassword(rawPassword, salt));
+ shopInfo.setSalt(salt);
+ shopInfo.setUpdateTime(new Date());
+ shopInfoMapper.updateById(shopInfo);
+ }
+
+ @Override
+ @Transactional(rollbackFor = Exception.class)
+ public void updateShop(ShopUpdateDTO request) {
+ if (request.getId() == null) {
+ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "闂ㄥ簵涓婚敭涓嶈兘涓虹┖");
+ }
+ ShopInfo shopInfo = shopInfoMapper.selectById(request.getId());
+ if (shopInfo == null || Constants.equalsInteger(shopInfo.getDeleted(), Constants.ONE)) {
+ throw new BusinessException(ResponseStatus.DATA_EMPTY);
+ }
+
+ // 鏍¢獙鎵嬫満鍙峰敮涓�鎬э紙鎺掗櫎鑷韩锛�
+ if (!request.getTelephone().equals(shopInfo.getTelephone())) {
+ checkTelephoneUnique(request.getTelephone(), shopInfo.getId());
+ }
+
+ // 鏍规嵁绫诲瀷鏍¢獙蹇呭~
+ if (Constants.equalsInteger(request.getCompanyType(), Constants.ZERO)) {
+ // 涓汉绫诲瀷锛氬繀椤讳笂浼犲姵鍔ㄥ悎鍚屽拰绀句繚璇佹槑
+ if (CollectionUtils.isEmpty(request.getLaborContractImgs())) {
+ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "涓汉绫诲瀷蹇呴』涓婁紶鏈夋晥鍔冲姩鍚堝悓");
+ }
+ if (CollectionUtils.isEmpty(request.getSocialSecurityImgs())) {
+ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "涓汉绫诲瀷蹇呴』涓婁紶绀句繚缂寸撼璇佹槑");
+ }
+ } else if (Constants.equalsInteger(request.getCompanyType(), Constants.ONE)) {
+ // 浼佷笟绫诲瀷锛氬繀椤诲~鍐欐硶浜轰俊鎭拰钀ヤ笟鎵х収
+ if (StringUtils.isBlank(request.getBusinessImg())) {
+ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "浼佷笟绫诲瀷蹇呴』涓婁紶钀ヤ笟鎵х収");
+ }
+ if (StringUtils.isBlank(request.getLegalPersonName())) {
+ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "浼佷笟绫诲瀷蹇呴』濉啓娉曚汉濮撳悕");
+ }
+ if (StringUtils.isBlank(request.getLegalPersonPhone())) {
+ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "浼佷笟绫诲瀷蹇呴』濉啓娉曚汉鐢佃瘽");
+ }
+ if (StringUtils.isBlank(request.getLegalPersonCard())) {
+ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "浼佷笟绫诲瀷蹇呴』濉啓娉曚汉韬唤璇佸彿鐮�");
+ }
+ }
+
+ Date now = new Date();
+ // 鏇存柊鍩虹淇℃伅
+ shopInfo.setCompanyType(request.getCompanyType());
+ shopInfo.setName(request.getName());
+ shopInfo.setTelephone(request.getTelephone());
+ shopInfo.setLinkName(request.getLinkName());
+ shopInfo.setLinkPhone(request.getLinkPhone());
+ shopInfo.setIdcard(request.getIdcard());
+ shopInfo.setAreaId(request.getAreaId());
+ shopInfo.setLongitude(request.getLongitude());
+ shopInfo.setLatitude(request.getLatitude());
+ shopInfo.setAddress(request.getAddress());
+ // 浼佷笟绫讳俊鎭�
+ shopInfo.setIdcardImg(request.getIdcardImg());
+ shopInfo.setIdcardImgBack(request.getIdcardImgBack());
+ shopInfo.setBusinessImg(request.getBusinessImg());
+ shopInfo.setLegalPersonName(request.getLegalPersonName());
+ shopInfo.setLegalPersonPhone(request.getLegalPersonPhone());
+ shopInfo.setLegalPersonCard(request.getLegalPersonCard());
+ shopInfo.setUpdateTime(now);
+ shopInfoMapper.updateById(shopInfo);
+
+ // 鍒犻櫎鏃ч檮浠惰褰�
+ multifileMapper.delete(new QueryWrapper<Multifile>().lambda()
+ .eq(Multifile::getObjId, shopInfo.getId())
+ .in(Multifile::getObjType,
+ Constants.FileType.STORE_FRONT.getKey(),
+ Constants.FileType.STORE_INTERIOR.getKey(),
+ Constants.FileType.OTHER_MATERIAL.getKey(),
+ Constants.FileType.LABOR_CONTRACT.getKey(),
+ Constants.FileType.SOCIAL_SECURITY.getKey()));
+
+ // 淇濆瓨鏂伴檮浠惰褰�
+ saveMultifileList(shopInfo.getId(), Constants.FileType.STORE_FRONT.getKey(), request.getStoreFrontImgs(), now);
+ saveMultifileList(shopInfo.getId(), Constants.FileType.STORE_INTERIOR.getKey(), request.getStoreInteriorImgs(), now);
+ saveMultifileList(shopInfo.getId(), Constants.FileType.OTHER_MATERIAL.getKey(), request.getOtherMaterialImgs(), now);
+ saveMultifileList(shopInfo.getId(), Constants.FileType.LABOR_CONTRACT.getKey(), request.getLaborContractImgs(), now);
+ saveMultifileList(shopInfo.getId(), Constants.FileType.SOCIAL_SECURITY.getKey(), request.getSocialSecurityImgs(), now);
+ }
+
+ // ========== 绉佹湁鏂规硶 ==========
+
+ /**
+ * 鐢熸垚榛樿瀵嗙爜锛氭墜鏈哄彿鍚�6浣� + @123456
+ */
+ private String generateDefaultPassword(String telephone) {
+ if (StringUtils.isBlank(telephone) || telephone.length() < 6) {
+ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "鎵嬫満鍙锋牸寮忓紓甯革紝鏃犳硶鐢熸垚榛樿瀵嗙爜");
+ }
+ return telephone.substring(telephone.length() - 6) + "@123456";
+ }
+
+ private void checkTelephoneUnique(String telephone, Integer excludeId) {
+ QueryWrapper<ShopInfo> qw = new QueryWrapper<>();
+ qw.lambda()
+ .eq(ShopInfo::getTelephone, telephone)
+ .eq(ShopInfo::getDeleted, Constants.ZERO);
+ if (excludeId != null) {
+ qw.lambda().ne(ShopInfo::getId, excludeId);
+ }
+ long count = shopInfoMapper.selectCount(qw);
+ if (count > 0) {
+ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "璇ユ墜鏈哄彿宸叉敞鍐岄棬搴�");
+ }
+ }
+
+ private void saveMultifileList(Integer objId, Integer objType, List<String> urls, Date now) {
+ if (CollectionUtils.isEmpty(urls)) {
+ return;
+ }
+ int sortNum = 0;
+ for (String url : urls) {
+ Multifile multifile = new Multifile();
+ multifile.setObjId(objId);
+ multifile.setObjType(objType);
+ multifile.setType(Constants.ZERO);
+ multifile.setFileurl(url);
+ multifile.setIsdeleted(Constants.ZERO);
+ multifile.setCreateDate(now);
+ multifile.setSortnum(sortNum++);
+ multifileMapper.insert(multifile);
+ }
+ }
+
+ private ShopDetailVO buildShopDetailVO(ShopInfo shopInfo) {
+ ShopDetailVO vo = new ShopDetailVO();
+ vo.setId(shopInfo.getId());
+ vo.setCompanyType(shopInfo.getCompanyType());
+ vo.setName(shopInfo.getName());
+ vo.setTelephone(shopInfo.getTelephone());
+ vo.setLinkName(shopInfo.getLinkName());
+ vo.setLinkPhone(shopInfo.getLinkPhone());
+ vo.setIdcard(shopInfo.getIdcard());
+ vo.setAreaId(shopInfo.getAreaId());
+ // 濉厖鐪佸競鍖哄悕绉板強涓婚敭
+ Areas area = areasBiz.resolveArea(shopInfo.getAreaId());
+ if (area != null) {
+ vo.setProvinceId(area.getProvinceId());
+ vo.setCityId(area.getCityId());
+ vo.setProvinceName(area.getProvinceName());
+ vo.setCityName(area.getCityName());
+ vo.setAreaName(area.getName());
+ }
+ vo.setLongitude(shopInfo.getLongitude());
+ vo.setLatitude(shopInfo.getLatitude());
+ vo.setAddress(shopInfo.getAddress());
+ vo.setLegalPersonName(shopInfo.getLegalPersonName());
+ vo.setLegalPersonPhone(shopInfo.getLegalPersonPhone());
+ vo.setLegalPersonCard(shopInfo.getLegalPersonCard());
+ vo.setAuditStatus(shopInfo.getAuditStatus());
+ vo.setStatus(shopInfo.getStatus());
+ vo.setAuditTime(shopInfo.getAuditTime());
+ vo.setAuditRemark(shopInfo.getAuditRemark());
+ vo.setOpenid(shopInfo.getOpenid());
+ vo.setPayStatus(shopInfo.getPayStatus());
+ vo.setScore(shopInfo.getScore());
+ vo.setCreateTime(shopInfo.getCreateTime());
+
+ // 鎷兼帴鍥剧墖鍓嶇紑
+ String imgPrefix = "";
+ try {
+ imgPrefix = systemDictDataBiz.queryByCode(Constants.SYSTEM, Constants.RESOURCE_PATH).getCode()
+ + systemDictDataBiz.queryByCode(Constants.SYSTEM, Constants.SHOP_FILES).getCode();
+ } catch (Exception e) {
+ // 鏈厤缃椂蹇界暐
+ }
+ vo.setImgPrefix(imgPrefix);
+
+ // 鍗曞浘瀛楁杩斿洖鍗婅矾寰�
+ vo.setIdcardImg(shopInfo.getIdcardImg());
+ vo.setIdcardImgBack(shopInfo.getIdcardImgBack());
+ vo.setBusinessImg(shopInfo.getBusinessImg());
+
+ // 鏌ヨ闄勪欢
+ QueryWrapper<Multifile> fileQw = new QueryWrapper<>();
+ fileQw.lambda()
+ .eq(Multifile::getObjId, shopInfo.getId())
+ .eq(Multifile::getIsdeleted, Constants.ZERO)
+ .in(Multifile::getObjType,
+ Constants.FileType.STORE_FRONT.getKey(),
+ Constants.FileType.STORE_INTERIOR.getKey(),
+ Constants.FileType.OTHER_MATERIAL.getKey(),
+ Constants.FileType.LABOR_CONTRACT.getKey(),
+ Constants.FileType.SOCIAL_SECURITY.getKey())
+ .orderByAsc(Multifile::getObjType, Multifile::getSortnum);
+ List<Multifile> files = multifileMapper.selectList(fileQw);
+
+ // 鎸� objType 鍒嗙粍锛岃繑鍥炲崐璺緞
+ Map<Integer, List<String>> fileMap = new HashMap<>();
+ for (Multifile f : files) {
+ fileMap.computeIfAbsent(f.getObjType(), k -> new ArrayList<>()).add(f.getFileurl());
+ }
+
+ vo.setStoreFrontImgs(fileMap.getOrDefault(Constants.FileType.STORE_FRONT.getKey(), new ArrayList<>()));
+ vo.setStoreInteriorImgs(fileMap.getOrDefault(Constants.FileType.STORE_INTERIOR.getKey(), new ArrayList<>()));
+ vo.setOtherMaterialImgs(fileMap.getOrDefault(Constants.FileType.OTHER_MATERIAL.getKey(), new ArrayList<>()));
+ vo.setLaborContractImgs(fileMap.getOrDefault(Constants.FileType.LABOR_CONTRACT.getKey(), new ArrayList<>()));
+ vo.setSocialSecurityImgs(fileMap.getOrDefault(Constants.FileType.SOCIAL_SECURITY.getKey(), new ArrayList<>()));
+
+ // 鏌ヨ缁戝畾寮�鎴蜂細鍛樺ご鍍忥紙payMemberOpenId 鍏宠仈 member.openid锛�
+ if (StringUtils.isNotBlank(shopInfo.getPayMemberOpenId())) {
+ QueryWrapper<Member> memberQw = new QueryWrapper<>();
+ memberQw.lambda().eq(Member::getOpenid, shopInfo.getPayMemberOpenId()).last("limit 1");
+ Member payMember = memberMapper.selectOne(memberQw);
+ if (payMember != null) {
+ vo.setPayMemberCoverImage(payMember.getCoverImage());
+ }
+ }
+
+ return vo;
+ }
+
}
diff --git a/server/services/src/main/java/com/doumee/service/business/impl/WithdrawalOrdersServiceImpl.java b/server/services/src/main/java/com/doumee/service/business/impl/WithdrawalOrdersServiceImpl.java
index b7d603d..68070ca 100644
--- a/server/services/src/main/java/com/doumee/service/business/impl/WithdrawalOrdersServiceImpl.java
+++ b/server/services/src/main/java/com/doumee/service/business/impl/WithdrawalOrdersServiceImpl.java
@@ -1,59 +1,35 @@
package com.doumee.service.business.impl;
-import com.alibaba.fastjson.JSONObject;
-import com.doumee.config.wx.SendWxMessage;
-import com.doumee.config.wx.WXPayUtility;
-import com.doumee.config.wx.WxMiniConfig;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.doumee.core.constants.Constants;
import com.doumee.core.constants.ResponseStatus;
import com.doumee.core.exception.BusinessException;
import com.doumee.core.model.PageData;
import com.doumee.core.model.PageWrap;
-import com.doumee.core.utils.DateUtil;
import com.doumee.core.utils.Utils;
-import com.doumee.dao.business.MemberMapper;
-import com.doumee.dao.business.MemberRevenueMapper;
import com.doumee.dao.business.WithdrawalOrdersMapper;
-import com.doumee.dao.business.model.Member;
-import com.doumee.dao.business.model.MemberRevenue;
import com.doumee.dao.business.model.WithdrawalOrders;
-import com.doumee.dao.dto.WithdrawalDTO;
import com.doumee.service.business.WithdrawalOrdersService;
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
-import com.baomidou.mybatisplus.core.metadata.IPage;
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
-import org.springframework.transaction.annotation.Transactional;
-import org.springframework.util.CollectionUtils;
-import org.springframework.util.StringUtils;
-import java.math.BigDecimal;
-import java.util.Date;
import java.util.List;
import java.util.Objects;
-import java.util.UUID;
/**
* 鎻愮幇鐢宠璁板綍Service瀹炵幇
- * @author 姹熻箘韫�
- * @date 2025/07/09 12:00
+ * @author rk
+ * @date 2026/04/10
*/
@Service
public class WithdrawalOrdersServiceImpl implements WithdrawalOrdersService {
@Autowired
private WithdrawalOrdersMapper withdrawalOrdersMapper;
-
- @Autowired
- private MemberMapper memberMapper;
-
- @Autowired
- private MemberRevenueMapper memberRevenueMapper;
-
- @Autowired
- private SendWxMessage sendWxMessage;
@Override
public Integer create(WithdrawalOrders withdrawalOrders) {
@@ -63,7 +39,9 @@
@Override
public void deleteById(Integer id) {
- withdrawalOrdersMapper.deleteById(id);
+ withdrawalOrdersMapper.update(new UpdateWrapper<WithdrawalOrders>().lambda()
+ .set(WithdrawalOrders::getDeleted, Constants.ONE)
+ .eq(WithdrawalOrders::getId, id));
}
@Override
@@ -74,7 +52,7 @@
@Override
public void deleteByIdInBatch(List<Integer> ids) {
- if (CollectionUtils.isEmpty(ids)) {
+ if (ids == null || ids.isEmpty()) {
return;
}
withdrawalOrdersMapper.deleteBatchIds(ids);
@@ -86,18 +64,22 @@
}
@Override
- public void updateByIdInBatch(List<WithdrawalOrders> withdrawalOrderss) {
- if (CollectionUtils.isEmpty(withdrawalOrderss)) {
+ public void updateByIdInBatch(List<WithdrawalOrders> withdrawalOrdersList) {
+ if (withdrawalOrdersList == null || withdrawalOrdersList.isEmpty()) {
return;
}
- for (WithdrawalOrders withdrawalOrders: withdrawalOrderss) {
+ for (WithdrawalOrders withdrawalOrders : withdrawalOrdersList) {
this.updateById(withdrawalOrders);
}
}
@Override
public WithdrawalOrders findById(Integer id) {
- return withdrawalOrdersMapper.selectById(id);
+ WithdrawalOrders withdrawalOrders = withdrawalOrdersMapper.selectById(id);
+ if (Objects.isNull(withdrawalOrders)) {
+ throw new BusinessException(ResponseStatus.DATA_EMPTY);
+ }
+ return withdrawalOrders;
}
@Override
@@ -111,55 +93,21 @@
QueryWrapper<WithdrawalOrders> wrapper = new QueryWrapper<>(withdrawalOrders);
return withdrawalOrdersMapper.selectList(wrapper);
}
-
+
@Override
public PageData<WithdrawalOrders> findPage(PageWrap<WithdrawalOrders> pageWrap) {
IPage<WithdrawalOrders> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
QueryWrapper<WithdrawalOrders> queryWrapper = new QueryWrapper<>();
Utils.MP.blankToNull(pageWrap.getModel());
- if (pageWrap.getModel().getId() != null) {
- queryWrapper.lambda().eq(WithdrawalOrders::getId, pageWrap.getModel().getId());
- }
- if (pageWrap.getModel().getDeleted() != null) {
- queryWrapper.lambda().eq(WithdrawalOrders::getDeleted, pageWrap.getModel().getDeleted());
- }
- if (pageWrap.getModel().getCreateUser() != null) {
- queryWrapper.lambda().eq(WithdrawalOrders::getCreateUser, pageWrap.getModel().getCreateUser());
- }
- if (pageWrap.getModel().getCreateTime() != null) {
- queryWrapper.lambda().ge(WithdrawalOrders::getCreateTime, Utils.Date.getStart(pageWrap.getModel().getCreateTime()));
- queryWrapper.lambda().le(WithdrawalOrders::getCreateTime, Utils.Date.getEnd(pageWrap.getModel().getCreateTime()));
- }
- if (pageWrap.getModel().getUpdateUser() != null) {
- queryWrapper.lambda().eq(WithdrawalOrders::getUpdateUser, pageWrap.getModel().getUpdateUser());
- }
- if (pageWrap.getModel().getUpdateTime() != null) {
- queryWrapper.lambda().ge(WithdrawalOrders::getUpdateTime, Utils.Date.getStart(pageWrap.getModel().getUpdateTime()));
- queryWrapper.lambda().le(WithdrawalOrders::getUpdateTime, Utils.Date.getEnd(pageWrap.getModel().getUpdateTime()));
- }
- if (pageWrap.getModel().getRemark() != null) {
- queryWrapper.lambda().eq(WithdrawalOrders::getRemark, pageWrap.getModel().getRemark());
- }
- if (pageWrap.getModel().getMemberId() != null) {
- queryWrapper.lambda().eq(WithdrawalOrders::getMemberId, pageWrap.getModel().getMemberId());
- }
- if (pageWrap.getModel().getAmount() != null) {
- queryWrapper.lambda().eq(WithdrawalOrders::getAmount, pageWrap.getModel().getAmount());
- }
- if (pageWrap.getModel().getWxExternalNo() != null) {
- queryWrapper.lambda().eq(WithdrawalOrders::getWxExternalNo, pageWrap.getModel().getWxExternalNo());
- }
- if (pageWrap.getModel().getStatus() != null) {
- queryWrapper.lambda().eq(WithdrawalOrders::getStatus, pageWrap.getModel().getStatus());
- }
- if (pageWrap.getModel().getDoneTime() != null) {
- queryWrapper.lambda().ge(WithdrawalOrders::getDoneTime, Utils.Date.getStart(pageWrap.getModel().getDoneTime()));
- queryWrapper.lambda().le(WithdrawalOrders::getDoneTime, Utils.Date.getEnd(pageWrap.getModel().getDoneTime()));
- }
- if (pageWrap.getModel().getDoneInfo() != null) {
- queryWrapper.lambda().eq(WithdrawalOrders::getDoneInfo, pageWrap.getModel().getDoneInfo());
- }
- for(PageWrap.SortData sortData: pageWrap.getSorts()) {
+ pageWrap.getModel().setDeleted(Constants.ZERO);
+ queryWrapper.lambda().eq(WithdrawalOrders::getDeleted, pageWrap.getModel().getDeleted());
+ queryWrapper.lambda().like(StringUtils.isNotBlank(pageWrap.getModel().getOutBillNo()), WithdrawalOrders::getOutBillNo, pageWrap.getModel().getOutBillNo());
+ queryWrapper.lambda().eq(pageWrap.getModel().getMemberId() != null, WithdrawalOrders::getMemberId, pageWrap.getModel().getMemberId());
+ queryWrapper.lambda().eq(pageWrap.getModel().getStatus() != null, WithdrawalOrders::getStatus, pageWrap.getModel().getStatus());
+ queryWrapper.lambda().eq(pageWrap.getModel().getType() != null, WithdrawalOrders::getType, pageWrap.getModel().getType());
+ queryWrapper.lambda().ge(pageWrap.getModel().getCreateStartTime() != null, WithdrawalOrders::getCreateTime, Utils.Date.getStart(pageWrap.getModel().getCreateStartTime()));
+ queryWrapper.lambda().le(pageWrap.getModel().getCreateEndTime() != null, WithdrawalOrders::getCreateTime, Utils.Date.getEnd(pageWrap.getModel().getCreateEndTime()));
+ for (PageWrap.SortData sortData : pageWrap.getSorts()) {
if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) {
queryWrapper.orderByDesc(sortData.getProperty());
} else {
@@ -174,70 +122,5 @@
QueryWrapper<WithdrawalOrders> wrapper = new QueryWrapper<>(withdrawalOrders);
return withdrawalOrdersMapper.selectCount(wrapper);
}
-
-
- /************************************绉诲姩绔帴鍙�*******************************************/
-
-
-
-
- @Override
- public void transferSuccess(String outBillNo,Boolean isSuccess){
- WithdrawalOrders withdrawalOrders = withdrawalOrdersMapper.selectOne(new QueryWrapper<WithdrawalOrders>().lambda()
- .eq(WithdrawalOrders::getOutBillNo,outBillNo).last("limit 1"));
- Member member = memberMapper.selectById(withdrawalOrders.getMemberId());
- if(Objects.isNull(member)){
- return;
- }
- if(Objects.nonNull(withdrawalOrders)){
- //杞处鎴愬姛
- if(isSuccess){
- withdrawalOrdersMapper.update(new UpdateWrapper<WithdrawalOrders>().lambda()
- .set(WithdrawalOrders::getStatus,Constants.ONE)
- .set(WithdrawalOrders::getUpdateTime, DateUtil.getCurrDateTime())
- .eq(WithdrawalOrders::getOutBillNo,outBillNo)
- );
- //淇敼娴佹按璁板綍鐘舵��
- memberRevenueMapper.update(new UpdateWrapper<MemberRevenue>().lambda()
- .set(MemberRevenue::getStatus,Constants.ZERO)
- .set(MemberRevenue::getUpdateTime, DateUtil.getCurrDateTime())
- .eq(MemberRevenue::getObjId,withdrawalOrders.getId())
- .eq(MemberRevenue::getObjType,Constants.ONE)
- );
- withdrawalOrders.setUpdateTime(new Date());
- sendWxMessage.withdrawalMessage(member.getOpenid(),withdrawalOrders);
- }else {
- //鏇存柊鐢ㄦ埛浣欓
- memberMapper.update(new UpdateWrapper<Member>().lambda().setSql(" AMOUNT = AMOUNT + " + withdrawalOrders.getAmount() ).eq(Member::getId,withdrawalOrders.getMemberId()));
- //淇敼娴佹按璁板綍鐘舵��
- memberRevenueMapper.update(new UpdateWrapper<MemberRevenue>().lambda()
- .set(MemberRevenue::getStatus,Constants.ONE)
- .set(MemberRevenue::getUpdateTime, DateUtil.getCurrDateTime())
- .eq(MemberRevenue::getObjId,withdrawalOrders.getId())
- .eq(MemberRevenue::getObjType,Constants.ONE)
- );
- //瀛樺偍娴佹按璁板綍
- MemberRevenue memberRevenue = new MemberRevenue();
- memberRevenue.setCreateTime(new Date());
- memberRevenue.setTransactionNo(withdrawalOrders.getOutBillNo());
- memberRevenue.setDeleted(Constants.ZERO);
- memberRevenue.setMemberId(withdrawalOrders.getMemberId());
- memberRevenue.setType(Constants.FOUR);
- memberRevenue.setOptType(Constants.ONE);
- memberRevenue.setBeforeAmount(member.getAmount());
- memberRevenue.setAmount(withdrawalOrders.getAmount());
- memberRevenue.setAfterAmount(member.getAmount() + withdrawalOrders.getAmount());
- memberRevenue.setObjId(withdrawalOrders.getId());
- memberRevenue.setRemark(Constants.RevenueType.getInfo(memberRevenue.getType()));
- memberRevenue.setObjType(Constants.ONE);
- memberRevenue.setDeleted(Constants.ZERO);
- memberRevenue.setStatus(Constants.ZERO);
- memberRevenueMapper.insert(memberRevenue);
- }
- }
-
- }
-
-
}
diff --git a/server/services/src/main/java/com/doumee/service/system/SystemDictDataService.java b/server/services/src/main/java/com/doumee/service/system/SystemDictDataService.java
index 793b66f..e5d274d 100644
--- a/server/services/src/main/java/com/doumee/service/system/SystemDictDataService.java
+++ b/server/services/src/main/java/com/doumee/service/system/SystemDictDataService.java
@@ -2,7 +2,6 @@
import com.doumee.core.model.PageData;
import com.doumee.core.model.PageWrap;
-import com.doumee.dao.dto.PlatformConfigDTO;
import com.doumee.dao.system.dto.QuerySystemDictDataDTO;
import com.doumee.dao.system.model.SystemDictData;
import com.doumee.dao.system.vo.SystemDictDataListVO;
@@ -99,9 +98,5 @@
* @return long
*/
long count(SystemDictData systemDictData);
-
- PlatformConfigDTO getPlatformConfigDTO();
-
- void updPlatformConfig(PlatformConfigDTO platformConfigDTO);
}
diff --git a/server/services/src/main/java/com/doumee/service/system/impl/SystemDictDataServiceImpl.java b/server/services/src/main/java/com/doumee/service/system/impl/SystemDictDataServiceImpl.java
index d6ea68a..3480531 100644
--- a/server/services/src/main/java/com/doumee/service/system/impl/SystemDictDataServiceImpl.java
+++ b/server/services/src/main/java/com/doumee/service/system/impl/SystemDictDataServiceImpl.java
@@ -1,13 +1,9 @@
package com.doumee.service.system.impl;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
-import com.doumee.core.constants.Constants;
import com.doumee.core.exception.BusinessException;
-import com.doumee.dao.dto.PlatformConfigDTO;
import com.doumee.dao.system.model.SystemDict;
-import com.doumee.dao.system.model.SystemMenu;
import com.doumee.service.system.SystemDictService;
-import com.github.pagehelper.Constant;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.doumee.core.model.PageData;
@@ -121,7 +117,7 @@
queryDictDataDto.setDeleted(Boolean.FALSE);
return this.findList(queryDictDataDto);
}
-
+
@Override
public PageData<SystemDictDataListVO> findPage(PageWrap<QuerySystemDictDataDTO> pageWrap) {
PageHelper.startPage(pageWrap.getPage(), pageWrap.getCapacity());
@@ -133,84 +129,5 @@
Wrapper<SystemDictData> wrapper = new QueryWrapper<>(systemDictData);
return systemDictDataMapper.selectCount(wrapper);
}
-
-
-
- @Override
- public PlatformConfigDTO getPlatformConfigDTO(){
- PlatformConfigDTO platformConfigDTO = new PlatformConfigDTO();
- platformConfigDTO.setAutoConfirm("0");
- platformConfigDTO.setReceiveCancelTime("0");
- platformConfigDTO.setReceiveCancelTimes("0");
- platformConfigDTO.setReleaseCancelTimes("0");
- platformConfigDTO.setReleaseCancelTime("0");
- platformConfigDTO.setAutoDispatch("0");
- platformConfigDTO.setAutoDispatchDistance("0");
-
- List<SystemDictData> systemDictDataList = systemDictDataMapper.selectList(new QueryWrapper<SystemDictData>()
- .lambda().eq(SystemDictData::getDictId,100)
- .in(SystemDictData::getLabel, Constants.AUTO_DISPATCH
- ,Constants.AUTO_CONFIRM,Constants.AUTO_DISPATCH_DISTANCE,Constants.RELEASE_CANCEL_TIME
- ,Constants.RELEASE_CANCEL_TIMES,Constants.RECEIVE_CANCEL_TIMES,Constants.RECEIVE_CANCEL_TIME)
- );
- if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(systemDictDataList)){
- for (SystemDictData systemDictData:systemDictDataList) {
- if(systemDictData.getLabel().equals(Constants.AUTO_DISPATCH)){
- platformConfigDTO.setAutoDispatch(systemDictData.getCode());
- }else if(systemDictData.getLabel().equals(Constants.AUTO_CONFIRM)){
- platformConfigDTO.setAutoConfirm(systemDictData.getCode());
- }else if(systemDictData.getLabel().equals(Constants.AUTO_DISPATCH_DISTANCE)){
- platformConfigDTO.setAutoDispatchDistance(systemDictData.getCode());
- }else if(systemDictData.getLabel().equals(Constants.RELEASE_CANCEL_TIME)){
- platformConfigDTO.setReleaseCancelTime(systemDictData.getCode());
- }else if(systemDictData.getLabel().equals(Constants.RELEASE_CANCEL_TIMES)){
- platformConfigDTO.setReleaseCancelTimes(systemDictData.getCode());
- }else if(systemDictData.getLabel().equals(Constants.RECEIVE_CANCEL_TIMES)){
- platformConfigDTO.setReceiveCancelTimes(systemDictData.getCode());
- }else if(systemDictData.getLabel().equals(Constants.RECEIVE_CANCEL_TIME)){
- platformConfigDTO.setReceiveCancelTime(systemDictData.getCode());
- }
- }
- }
- return platformConfigDTO;
- }
-
-
-
- @Override
- @Transactional(rollbackFor = {Exception.class, BusinessException.class})
- public void updPlatformConfig(PlatformConfigDTO platformConfigDTO){
- List<SystemDictData> systemDictDataList = systemDictDataMapper.selectList(new QueryWrapper<SystemDictData>()
- .lambda().eq(SystemDictData::getDictId,100)
- .in(SystemDictData::getLabel, Constants.AUTO_DISPATCH
- ,Constants.AUTO_CONFIRM,Constants.AUTO_DISPATCH_DISTANCE,Constants.RELEASE_CANCEL_TIME
- ,Constants.RELEASE_CANCEL_TIMES,Constants.RECEIVE_CANCEL_TIMES,Constants.RECEIVE_CANCEL_TIME)
- );
- if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(systemDictDataList)){
- for (SystemDictData systemDictData:systemDictDataList) {
- if(systemDictData.getLabel().equals(Constants.AUTO_DISPATCH)){
- systemDictData.setCode(platformConfigDTO.getAutoDispatch());
- }else if(systemDictData.getLabel().equals(Constants.AUTO_CONFIRM)){
- systemDictData.setCode(platformConfigDTO.getAutoConfirm());
- }else if(systemDictData.getLabel().equals(Constants.AUTO_DISPATCH_DISTANCE)){
- systemDictData.setCode(platformConfigDTO.getAutoDispatchDistance());
- }else if(systemDictData.getLabel().equals(Constants.RELEASE_CANCEL_TIME)){
- systemDictData.setCode(platformConfigDTO.getReleaseCancelTime());
- }else if(systemDictData.getLabel().equals(Constants.RELEASE_CANCEL_TIMES)){
- systemDictData.setCode(platformConfigDTO.getReleaseCancelTimes());
- }else if(systemDictData.getLabel().equals(Constants.RECEIVE_CANCEL_TIMES)){
- systemDictData.setCode(platformConfigDTO.getReceiveCancelTimes());
- }else if(systemDictData.getLabel().equals(Constants.RECEIVE_CANCEL_TIME)){
- systemDictData.setCode(platformConfigDTO.getReceiveCancelTime());
- }
- systemDictDataMapper.update(new UpdateWrapper<SystemDictData>().lambda()
- .set(SystemDictData::getCode,systemDictData.getCode())
- .eq(SystemDictData::getId,systemDictData.getId()));
- }
- }
- }
-
-
-
}
diff --git a/server/web/src/main/java/com/doumee/api/web/AppVersionApi.java b/server/web/src/main/java/com/doumee/api/web/AppVersionApi.java
new file mode 100644
index 0000000..8c8c352
--- /dev/null
+++ b/server/web/src/main/java/com/doumee/api/web/AppVersionApi.java
@@ -0,0 +1,33 @@
+package com.doumee.api.web;
+
+import com.doumee.core.model.ApiResponse;
+import com.doumee.dao.business.model.AppVersion;
+import com.doumee.service.business.AppVersionService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import io.swagger.annotations.ApiParam;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+/**
+ * APP鐗堟湰锛堝皬绋嬪簭绔級
+ * @author rk
+ * @date 2026/04/10
+ */
+@Api(tags = "APP鐗堟湰")
+@RestController
+@RequestMapping("/web/appVersion")
+public class AppVersionApi extends ApiController {
+
+ @Autowired
+ private AppVersionService appVersionService;
+
+ @ApiOperation("鑾峰彇鏈�鏂扮増鏈�")
+ @GetMapping("/latest")
+ public ApiResponse<AppVersion> latest(
+ @ApiParam(value = "骞冲彴绫诲瀷 0=Android 1=IOS", required = true, example = "0")
+ @RequestParam Integer type) {
+ return ApiResponse.success(appVersionService.getLatestVersion(type));
+ }
+
+}
diff --git a/server/web/src/main/java/com/doumee/api/web/OrdersApi.java b/server/web/src/main/java/com/doumee/api/web/OrdersApi.java
deleted file mode 100644
index 4262967..0000000
--- a/server/web/src/main/java/com/doumee/api/web/OrdersApi.java
+++ /dev/null
@@ -1,221 +0,0 @@
-package com.doumee.api.web;
-
-import com.azure.core.annotation.Post;
-import com.doumee.core.annotation.LoginRequired;
-import com.doumee.core.annotation.trace.Trace;
-import com.doumee.core.model.ApiResponse;
-import com.doumee.core.model.PageData;
-import com.doumee.core.model.PageWrap;
-import com.doumee.dao.business.model.IdentityInfo;
-import com.doumee.dao.business.model.Member;
-import com.doumee.dao.business.model.Orders;
-import com.doumee.dao.dto.*;
-import com.doumee.dao.vo.OrderReleaseVO;
-import com.doumee.service.business.IdentityInfoService;
-import com.doumee.service.business.MemberService;
-import com.doumee.service.business.OrdersService;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiImplicitParam;
-import io.swagger.annotations.ApiImplicitParams;
-import io.swagger.annotations.ApiOperation;
-import lombok.extern.slf4j.Slf4j;
-import org.apache.shiro.authz.annotation.RequiresPermissions;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
-
-/**
- * Created by IntelliJ IDEA.
- *
- * @Author : Rk
- * @create 2025/7/10 9:29
- */
-@Api(tags = "璁㈠崟涓氬姟")
-@Trace(exclude = true)
-@RestController
-@RequestMapping("/web/orders")
-@Slf4j
-public class OrdersApi extends ApiController{
-
-
- @Autowired
- private MemberService memberService;
-
- @Autowired
- private OrdersService ordersService;
-
- @LoginRequired
- @ApiOperation(value = "鍙戝竷璁㈠崟 - 鍙戝崟鏂�", notes = "灏忕▼搴忕")
- @PostMapping("/release")
- @ApiImplicitParams({
- @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "鐢ㄦ埛token鍊�", required = true),
- })
- public ApiResponse<OrderReleaseVO> release(@RequestBody Orders orders) {
- orders.setMember(this.getMemberResponse());
- return ApiResponse.success("鎿嶄綔鎴愬姛",ordersService.create(orders));
- }
-
- @LoginRequired
- @ApiOperation(value = "淇敼璁㈠崟 - 鍙戝崟鏂�", notes = "灏忕▼搴忕")
- @PostMapping("/updateOrder")
- @ApiImplicitParams({
- @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "鐢ㄦ埛token鍊�", required = true),
- })
- public ApiResponse updateOrder(@RequestBody Orders orders) {
- orders.setMember(this.getMemberResponse());
- ordersService.update(orders);
- return ApiResponse.success("鎿嶄綔鎴愬姛");
- }
-
- @LoginRequired
- @ApiOperation(value = "鎺ュ崟鏂圭‘璁よ鍗曡垂鐢� - 鎺ュ崟鏂�", notes = "灏忕▼搴忕")
- @PostMapping("/confirmFee")
- @ApiImplicitParams({
- @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "鐢ㄦ埛token鍊�", required = true),
- })
- public ApiResponse confirmFee(@RequestBody ConfirmFeeOrderDTO orders) {
- orders.setMember(this.getMemberResponse());
- ordersService.confirmFee(orders);
- return ApiResponse.success("鎿嶄綔鎴愬姛");
- }
-
-
-// @LoginRequired
-// @ApiOperation(value = "淇敼璁㈠崟鏃ユ湡 - 鍙戝崟鏂�", notes = "灏忕▼搴忕")
-// @PostMapping("/updOrderData")
-// @ApiImplicitParams({
-// @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "鐢ㄦ埛token鍊�", required = true),
-// })
-// public ApiResponse updOrderData(@RequestBody UpdOrderDataDTO updOrderDataDTO) {
-// updOrderDataDTO.setMember(this.getMemberResponse());
-// ordersService.updOrderData(updOrderDataDTO);
-// return ApiResponse.success("鎿嶄綔鎴愬姛");
-// }
-
- @LoginRequired
- @ApiOperation(value = "鎵嬪姩鎺ュ崟 - 鎺ュ崟鏂�", notes = "灏忕▼搴忕")
- @GetMapping("/accept")
- @ApiImplicitParams({
- @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "鐢ㄦ埛token鍊�", required = true),
- })
- public ApiResponse accept(@RequestParam Integer orderId) {
- ordersService.accept(orderId,this.getMemberResponse());
- return ApiResponse.success("鎿嶄綔鎴愬姛");
- }
-
- @LoginRequired
- @ApiOperation(value = "寮�濮嬩綔涓� - 鍙戝崟鏂�", notes = "灏忕▼搴忕")
- @GetMapping("/begin")
- @ApiImplicitParams({
- @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "鐢ㄦ埛token鍊�", required = true),
- })
- public ApiResponse begin(@RequestParam Integer orderId) {
- ordersService.begin(orderId,this.getMemberResponse());
- return ApiResponse.success("鎿嶄綔鎴愬姛");
- }
-
- @LoginRequired
- @ApiOperation(value = "鍙栨秷璁㈠崟 - 鍙戝崟鏂�", notes = "灏忕▼搴忕")
- @GetMapping("/cancelOrder")
- @ApiImplicitParams({
- @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "鐢ㄦ埛token鍊�", required = true),
- })
- public ApiResponse cancelOrder(@RequestParam Integer orderId) {
- ordersService.cancelOrder(orderId,this.getMemberResponse());
- return ApiResponse.success("鎿嶄綔鎴愬姛");
- }
-
- @LoginRequired
- @ApiOperation(value = "鍙栨秷鍓嶆彁绀鸿 - 鍙戝崟鏂�", notes = "灏忕▼搴忕")
- @GetMapping("/cancelTips")
- @ApiImplicitParams({
- @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "鐢ㄦ埛token鍊�", required = true),
- })
- public ApiResponse cancelTips(@RequestParam Integer orderId) {
- ordersService.cancelTips(orderId,this.getMemberResponse());
- return ApiResponse.success("鎿嶄綔鎴愬姛");
- }
-
-
-
- @LoginRequired
- @ApiOperation(value = "纭璁㈠崟淇敼 - 鎺ュ崟鏂�", notes = "灏忕▼搴忕")
- @PostMapping("/confirmUpd")
- @ApiImplicitParams({
- @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "鐢ㄦ埛token鍊�", required = true),
- })
- public ApiResponse confirmUpd(@RequestBody ConfirmUpdOrderDTO confirmUpdOrderDTO) {
- confirmUpdOrderDTO.setMember(this.getMemberResponse());
- ordersService.confirmUpd(confirmUpdOrderDTO);
- return ApiResponse.success("鎿嶄綔鎴愬姛");
- }
-
- @LoginRequired
- @ApiOperation(value = "瀹屾垚璁㈠崟 - 鍙戝崟鏂�", notes = "灏忕▼搴忕")
- @PostMapping("/doneOrder")
- @ApiImplicitParams({
- @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "鐢ㄦ埛token鍊�", required = true),
- })
- public ApiResponse<OrderReleaseVO> doneOrder(@RequestBody DoneOrderDTO doneOrderDTO) {
- doneOrderDTO.setMember(getMemberResponse());
- return ApiResponse.success("鎿嶄綔鎴愬姛",ordersService.doneOrder(doneOrderDTO));
- }
-
- @LoginRequired
- @ApiOperation(value = "璁㈠崟閲嶆柊鏀粯 - 鍙戝崟鏂�", notes = "灏忕▼搴忕")
- @PostMapping("/reusePay")
- @ApiImplicitParams({
- @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "鐢ㄦ埛token鍊�", required = true),
- })
- public ApiResponse<OrderReleaseVO> reusePay(@RequestBody ReusePayDTO reusePayDTO) {
- reusePayDTO.setMember(getMemberResponse());
- return ApiResponse.success("鎿嶄綔鎴愬姛",ordersService.reusePay(reusePayDTO));
- }
-
-
- @LoginRequired
- @ApiOperation(value = "璁㈠崟璇勪环 - 鍙戝崟鏂�", notes = "灏忕▼搴忕")
- @PostMapping("/comment")
- @ApiImplicitParams({
- @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "鐢ㄦ埛token鍊�", required = true),
- })
- public ApiResponse comment(@RequestBody CommentDTO commentDTO) {
- commentDTO.setMember(this.getMemberResponse());
- ordersService.comment(commentDTO);
- return ApiResponse.success("鎿嶄綔鎴愬姛");
- }
-
-
-
- @LoginRequired
- @ApiOperation("鍒嗛〉鏌ヨ")
- @PostMapping("/page")
- @ApiImplicitParams({
- @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "鐢ㄦ埛token鍊�", required = true),
- })
- public ApiResponse<PageData<Orders>> findPage (@RequestBody PageWrap<Orders> pageWrap) {
- pageWrap.getModel().setMember(this.getMemberResponse());
- return ApiResponse.success(ordersService.findPageForMini(pageWrap));
- }
-
- @LoginRequired
- @ApiOperation(value = "璁㈠崟璇︽儏", notes = "灏忕▼搴忕")
- @GetMapping("/getDetail")
- @ApiImplicitParams({
- @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "鐢ㄦ埛token鍊�", required = true),
- })
- public ApiResponse<Orders> getDetail(@RequestParam Integer orderId) {
- return ApiResponse.success("鎿嶄綔鎴愬姛",ordersService.getDetail(orderId,this.getMemberResponse()));
- }
-
- @LoginRequired
- @ApiOperation("鑾峰彇棰勮閲戦锛堝垎锛�")
- @PostMapping("/getTotal")
- @ApiImplicitParams({
- @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "鐢ㄦ埛token鍊�", required = true),
- })
- public ApiResponse<Long> getTotal(@RequestBody Orders orders) {
- return ApiResponse.success(ordersService.getTotal(orders));
- }
-
-
-}
diff --git a/server/web/src/main/java/com/doumee/api/web/ShopInfoApi.java b/server/web/src/main/java/com/doumee/api/web/ShopInfoApi.java
new file mode 100644
index 0000000..d128ca8
--- /dev/null
+++ b/server/web/src/main/java/com/doumee/api/web/ShopInfoApi.java
@@ -0,0 +1,44 @@
+package com.doumee.api.web;
+
+import com.doumee.core.annotation.LoginRequired;
+import com.doumee.core.model.ApiResponse;
+import com.doumee.dao.business.model.Member;
+import com.doumee.dao.dto.ShopApplyDTO;
+import com.doumee.dao.vo.ShopDetailVO;
+import com.doumee.service.business.ShopInfoService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.web.bind.annotation.*;
+
+/**
+ * 闂ㄥ簵鍏ラ┗锛堝皬绋嬪簭绔級
+ * @author rk
+ * @date 2026/04/10
+ */
+@Api(tags = "闂ㄥ簵鍏ラ┗")
+@RestController
+@RequestMapping("/web/shopInfo")
+public class ShopInfoApi extends ApiController {
+
+ @Autowired
+ private ShopInfoService shopInfoService;
+
+ @LoginRequired
+ @ApiOperation("闂ㄥ簵鍏ラ┗鐢宠/淇敼")
+ @PostMapping("/apply")
+ public ApiResponse apply(@RequestBody @Validated ShopApplyDTO request) {
+ Member member = this.getMemberResponse();
+ shopInfoService.applyShop(request, member);
+ return ApiResponse.success("鎿嶄綔鎴愬姛");
+ }
+
+ @LoginRequired
+ @ApiOperation("鏌ヨ鎴戠殑闂ㄥ簵淇℃伅")
+ @GetMapping("/myShop")
+ public ApiResponse<ShopDetailVO> myShop() {
+ return ApiResponse.success(shopInfoService.getMyShop(this.getMemberId()));
+ }
+
+}
diff --git a/server/web/src/main/java/com/doumee/api/web/UserApi.java b/server/web/src/main/java/com/doumee/api/web/UserApi.java
index c02650b..294fd91 100644
--- a/server/web/src/main/java/com/doumee/api/web/UserApi.java
+++ b/server/web/src/main/java/com/doumee/api/web/UserApi.java
@@ -13,9 +13,7 @@
import com.doumee.dao.vo.AccountResponse;
import com.doumee.dao.vo.UserCenterVO;
import com.doumee.service.business.IdentityInfoService;
-import com.doumee.service.business.MemberRevenueService;
import com.doumee.service.business.MemberService;
-import com.doumee.service.business.WithdrawalOrdersService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
--
Gitblit v1.9.3