From f8cc44e926fd22f9d1d864dc684c827f6960270b Mon Sep 17 00:00:00 2001 From: hjl <1657978663@qq.com> Date: 星期五, 26 七月 2024 11:51:30 +0800 Subject: [PATCH] feat: 最新代码及配置 --- ruoyi-service/ruoyi-order/src/main/resources/mapper/order/EvaluateMapper.xml | 22 ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/request/EvaluatePageRequest.java | 2 ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/controller/EvaluateController.java | 24 + ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/entity/RecoveryServePrice.java | 4 ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/factory/OrderFallbackFactory.java | 5 ruoyi-service/ruoyi-user/src/main/java/com/ruoyi/user/service/impl/RegionServiceImpl.java | 2 ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/entity/Franchisee.java | 6 sql/secondary_recovery_order.sql | 268 +++++++++++++- ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/GaoDeMapUtil.java | 24 + ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/controller/FranchiseeController.java | 20 + ruoyi-service/ruoyi-worker/src/main/java/com/ruoyi/worker/vo/OrderListVO.java | 1 ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/controller/RegionController.java | 17 ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java | 11 ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/constant/Constants.java | 20 ruoyi-service/ruoyi-worker/src/main/java/com/ruoyi/worker/service/impl/MasterWorkerServiceImpl.java | 4 ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/mapper/OrderMapper.java | 10 ruoyi-service/ruoyi-order/src/main/resources/mapper/order/ChangeDispatchMapper.xml | 2 ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/feignClient/OrderClient.java | 8 ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/controller/HomePageController.java | 23 - ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/controller/RecoveryServeController.java | 5 ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/vo/OrderCountVO.java | 3 ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/entity/UserOrderRequest.java | 3 ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/controller/WorkerProcessController.java | 4 sql/secondary_recovery.sql | 49 +- ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/controller/OrderController.java | 21 + ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/service/impl/RegionServiceImpl.java | 21 ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/service/impl/UserServiceImpl.java | 21 ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/service/RegionService.java | 3 ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/entity/OrderRequest.java | 3 ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/service/impl/MasterWorkerServiceImpl.java | 2 ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/entity/ChangeDispatch.java | 4 ruoyi-service/ruoyi-user/src/main/java/com/ruoyi/user/request/OrderRequest.java | 6 ruoyi-service/ruoyi-user/src/main/java/com/ruoyi/user/service/impl/OrderServiceImpl.java | 21 + ruoyi-common/ruoyi-common-security/src/main/java/com/ruoyi/common/security/handler/GlobalExceptionHandler.java | 2 ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/vo/CityInfoVO.java | 24 + ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/model/LoginUser.java | 1 ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/controller/MasterWorkerController.java | 4 ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/vo/GaoDeAddressInfoVO.java | 23 + ruoyi-service/ruoyi-user/src/main/java/com/ruoyi/user/controller/EvaluateController.java | 2 ruoyi-service/ruoyi-user/src/main/java/com/ruoyi/user/entity/RecoveryServePrice.java | 4 ruoyi-service/ruoyi-user/src/main/java/com/ruoyi/user/entity/UserRecipient.java | 8 ruoyi-service/ruoyi-order/src/main/resources/mapper/order/OrderMapper.xml | 58 ++ ruoyi-service/ruoyi-worker/src/main/java/com/ruoyi/worker/controller/MasterWorkerController.java | 2 ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/entity/Order.java | 10 ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/mapper/UserMapper.java | 1 ruoyi-service/ruoyi-user/src/main/java/com/ruoyi/user/vo/OrderDetailVO.java | 4 ruoyi-service/ruoyi-order/src/main/resources/mapper/order/WithdrawMapper.xml | 8 ruoyi-service/ruoyi-user/src/main/resources/mapper/user/RecoveryServeMapper.xml | 2 ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/entity/OrderCountVO.java | 3 ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/request/RecoveryServePriceRequest.java | 3 ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/OrderController.java | 32 + ruoyi-service/ruoyi-user/src/main/java/com/ruoyi/user/service/impl/UserServiceImpl.java | 29 - ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/vo/Geocodes.java | 27 + ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/service/impl/OrderServiceImpl.java | 2 sql/nacos_config_export_20240726114948.zip | 0 ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/entity/Withdraw.java | 4 ruoyi-service/ruoyi-user/src/main/java/com/ruoyi/user/controller/RecoveryServeController.java | 28 + ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/entity/ChangeDispatch.java | 3 ruoyi-service/ruoyi-admin/src/main/resources/mapper/admin/UserMapper.xml | 7 ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/entity/MasterWorker.java | 4 ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/vo/EvaluateOrderInfoVO.java | 3 ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/entity/WorkerProcess.java | 4 ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/entity/Order.java | 4 ruoyi-service/ruoyi-user/src/main/java/com/ruoyi/user/controller/OrderController.java | 18 ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/entity/Withdraw.java | 4 ruoyi-service/ruoyi-worker/src/main/java/com/ruoyi/worker/controller/OrderController.java | 3 ruoyi-service/ruoyi-user/src/main/java/com/ruoyi/user/controller/UserController.java | 15 /dev/null | 0 ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/OrderService.java | 9 ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/entity/Agreement.java | 3 ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/WithdrawServiceImpl.java | 1 ruoyi-service/ruoyi-user/src/main/java/com/ruoyi/user/vo/ServeDetailVO.java | 29 + ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/request/EvaluatePageRequest.java | 2 ruoyi-service/ruoyi-worker/src/main/java/com/ruoyi/worker/vo/ServeCoordinate.java | 4 74 files changed, 828 insertions(+), 205 deletions(-) diff --git a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/entity/ChangeDispatch.java b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/entity/ChangeDispatch.java index 7b8ae3b..d3e4f1a 100644 --- a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/entity/ChangeDispatch.java +++ b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/entity/ChangeDispatch.java @@ -72,5 +72,8 @@ @TableField("user_name") private String userName; + @ApiModelProperty("城市编码") + @TableField("city_code") + private String cityCode; } diff --git a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/entity/Order.java b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/entity/Order.java index 14d39c0..a3ffb4b 100644 --- a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/entity/Order.java +++ b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/entity/Order.java @@ -28,7 +28,7 @@ @ApiModel(value = "Order对象", description = "订单管理") public class Order extends BaseEntity { - @TableId(value = "id", type = IdType.AUTO) + @TableId(value = "id", type = IdType.ASSIGN_ID) private String id; @ApiModelProperty("下单城市") @@ -150,6 +150,14 @@ @TableField("top_sort") private Integer topSort; + @ApiModelProperty("是否评价(0:未评价,1:已评价)") + @TableField("is_evaluate") + private Integer isEvaluate; + + @ApiModelProperty("城市code") + @TableField("city_code") + private String cityCode; + @ApiModelProperty("回收服务封面图") @TableField(exist = false) private String cover; diff --git a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/entity/OrderCountVO.java b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/entity/OrderCountVO.java index 02035c7..05d0bde 100644 --- a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/entity/OrderCountVO.java +++ b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/entity/OrderCountVO.java @@ -13,6 +13,9 @@ @ApiModel(value = "OrderCountVO对象", description = "订单统计返回类") public class OrderCountVO { + @ApiModelProperty("订单中师傅名称") + private String workerName; + @ApiModelProperty("师傅id") private Integer workerId; diff --git a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/entity/OrderRequest.java b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/entity/OrderRequest.java index 9579839..9cc1cb0 100644 --- a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/entity/OrderRequest.java +++ b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/entity/OrderRequest.java @@ -18,6 +18,9 @@ @ApiModelProperty("下单城市") private String city; + @ApiModelProperty("城市编码") + private String cityCode; + @ApiModelProperty("订单编号") private String orderNumber; diff --git a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/entity/UserOrderRequest.java b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/entity/UserOrderRequest.java index 5d05dd8..a066593 100644 --- a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/entity/UserOrderRequest.java +++ b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/entity/UserOrderRequest.java @@ -16,6 +16,9 @@ @ApiModel(value = "OrderRequest对象", description = "用户下单请求参数对象") public class UserOrderRequest { + @ApiModelProperty("下单城市") + private String city; + @ApiModelProperty("订单编号") private String orderNumber; diff --git a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/entity/Withdraw.java b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/entity/Withdraw.java index e79cd91..e9249d0 100644 --- a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/entity/Withdraw.java +++ b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/entity/Withdraw.java @@ -60,5 +60,9 @@ @TableField("order_id") private String orderId; + @ApiModelProperty("城市code") + @TableField("city_code") + private String cityCode; + } diff --git a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/factory/OrderFallbackFactory.java b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/factory/OrderFallbackFactory.java index bf255a5..9eacc05 100644 --- a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/factory/OrderFallbackFactory.java +++ b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/factory/OrderFallbackFactory.java @@ -179,6 +179,11 @@ } @Override + public R<Boolean> orderByUserId(Integer userId) { + return R.fail(cause.getMessage()); + } + + @Override public R<Boolean> supplementAllowance(String orderId, String prizeName) { return R.fail(cause.getMessage()); } diff --git a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/feignClient/OrderClient.java b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/feignClient/OrderClient.java index ba98a22..00bd7cc 100644 --- a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/feignClient/OrderClient.java +++ b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/feignClient/OrderClient.java @@ -367,6 +367,14 @@ R<Boolean> placeOrder(@RequestBody UserOrderRequest userOrderRequest); /** + * 判断用户是否下单 + * + * @param userId 用户id + */ + @GetMapping(value = "/order/orderByUserId") + R<Boolean> orderByUserId(@RequestParam("userId") Integer userId); + + /** * 站点详情 * * @param orderId 订单id diff --git a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/request/EvaluatePageRequest.java b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/request/EvaluatePageRequest.java index b1f56c6..a7e6f21 100644 --- a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/request/EvaluatePageRequest.java +++ b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/request/EvaluatePageRequest.java @@ -24,4 +24,6 @@ private Integer pageSize; + private List<Integer> userIdList; + } diff --git a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/model/LoginUser.java b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/model/LoginUser.java index cda391a..088eb9e 100644 --- a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/model/LoginUser.java +++ b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/model/LoginUser.java @@ -68,6 +68,7 @@ /** * 加盟商所管辖城市 + * 城市code列表 */ private List<String> cityList; diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/constant/Constants.java b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/constant/Constants.java index dd754e6..2915276 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/constant/Constants.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/constant/Constants.java @@ -148,11 +148,6 @@ public static final String EXCEL_ORDER_FILE_NAME = "订单记录"; /** - * 文件上传常量后缀 - */ - public static final String APK = "apk"; - - /** * 用户编号生成前缀 */ public static final String USER_NO_PRE = "用户%s"; @@ -278,6 +273,21 @@ public static final String DEFAULT_USER_NUMBER_PRE = "用户"; /** + * 师傅端默认用户ID前缀 + */ + public static final String SUBSIDY_MONEY = "¥"; + + /** + * 师傅端默认用户ID前缀 + */ + public static final String PROVINCE = "省"; + + /** + * 师傅端默认用户ID前缀 + */ + public static final String MARKET = "市"; + + /** * 师傅端默认密码 */ public static final String DEFAULT_PASSWORD = "123456"; diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/GaoDeMapUtil.java b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/GaoDeMapUtil.java index 4fcbc50..9789aef 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/GaoDeMapUtil.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/GaoDeMapUtil.java @@ -6,10 +6,7 @@ import com.ruoyi.common.core.domain.Result; import com.ruoyi.common.core.enums.GaoDeEnum; import com.ruoyi.common.core.exception.GlobalException; -import com.ruoyi.common.core.vo.GaoDeMap; -import com.ruoyi.common.core.vo.Path; -import com.ruoyi.common.core.vo.PolylineData; -import com.ruoyi.common.core.vo.Steps; +import com.ruoyi.common.core.vo.*; import java.io.BufferedReader; import java.io.IOException; @@ -130,6 +127,25 @@ } /** + * 功能描述: 根据地址获取城市code + * + * @param address d地址 + * @return 两个定位点之间的距离 + */ + public static Result<CityInfoVO> getAddressInfo(String address) { + // 返回起始地startAddr与目的地endAddr之间的距离,单位:米 + String queryUrl = "https://restapi.amap.com/v3/geocode/geo?address=" + address + + "&key=" + GAO_DE_KEY; + String queryResult = getResponse(queryUrl); + GaoDeAddressInfoVO data = JSONObject.parseObject(queryResult, GaoDeAddressInfoVO.class); + List<Geocodes> geocodes = data.getGeocodes(); + Geocodes info = geocodes.get(0); + String adcode = info.getAdcode(); + String city = info.getCity(); + return Result.succeed(new CityInfoVO(city, adcode), "距离计算成功!"); + } + + /** * 功能描述: 发送请求 * * @param serverUrl 请求地址 diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/ObsUploadUtil.java b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/ObsUploadUtil.java deleted file mode 100644 index 2a80b87..0000000 --- a/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/ObsUploadUtil.java +++ /dev/null @@ -1,71 +0,0 @@ -package com.ruoyi.common.core.utils; - -import com.obs.services.ObsClient; -import com.obs.services.model.ObjectMetadata; -import com.ruoyi.common.core.constant.Constants; -import org.springframework.web.multipart.MultipartFile; - -import java.io.IOException; -import java.io.InputStream; -import java.util.UUID; - -/** - * @author HJL - */ -public class ObsUploadUtil { - - public static String endPoint = "obs.cn-north-4.myhuaweicloud.com"; - public static String accessKeyId = "X3V6GPYUK1VQ03K0JG4G"; - public static String accessKeySecret = "CustHR4B9XKdT7hGcEYEpV9UVUoc4pmUhnHckU9h"; - public static String bucketName = "jkjianshen"; - public static String oss_domain = "https://jkjianshen.obs.cn-north-4.myhuaweicloud.com/"; - /** - * 创建ObsClient实例 - */ - public static ObsClient obsClient = new ObsClient(accessKeyId, accessKeySecret, endPoint); - - public static String obsUpload(MultipartFile file) throws IOException { - //CommonsMultipartFile file = (CommonsMultipartFile)multipartFile; - String fileName = ""; - if (file != null && !"".equals(file.getOriginalFilename()) && file.getOriginalFilename() != null) { - //获得指定文件的输入流 - InputStream content = file.getInputStream(); - // 创建上传Object的Metadata - ObjectMetadata meta = new ObjectMetadata(); - // 必须设置ContentLength - meta.setContentLength(file.getSize()); - String originalFilename = file.getOriginalFilename(); - if (originalFilename.contains(Constants.APK)) { - fileName = "bf2fe5c5499341e5bc0d56c0c7d5fb2e.apk"; - System.err.println("apk"); - } else { - fileName = UUID.randomUUID().toString().replaceAll("-", "") + originalFilename.subSequence(originalFilename.lastIndexOf("."), originalFilename.length()); - } - // 上传Object. - obsClient.putObject(bucketName, "admin/" + fileName, content, meta); - if (!"".equals(fileName)) { - System.out.println(fileName); - fileName = oss_domain + "admin/" + fileName; - } - } - return fileName; - } - - /** - * 删除某个Object - */ - public static boolean deleteObject(String bucketUrl) { - try { - bucketUrl = bucketUrl.replace(oss_domain + "web", ""); - // 删除Object. - obsClient.deleteObject(bucketName, bucketUrl); - } catch (Exception e) { - e.printStackTrace(); - return false; - } finally { - //ossClient.shutdown(); - } - return true; - } - -} diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/vo/CityInfoVO.java b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/vo/CityInfoVO.java new file mode 100644 index 0000000..24085a4 --- /dev/null +++ b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/vo/CityInfoVO.java @@ -0,0 +1,24 @@ +package com.ruoyi.common.core.vo; + +import lombok.Data; + +/** + * @author HJL + * @version 1.0 + * @since 2024-07-25 14:31 + */ +@Data +public class CityInfoVO { + + private String city; + + private String code; + + public CityInfoVO() { + } + + public CityInfoVO(String city, String code) { + this.city = city; + this.code = code; + } +} diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/vo/GaoDeAddressInfoVO.java b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/vo/GaoDeAddressInfoVO.java new file mode 100644 index 0000000..bbd7daa --- /dev/null +++ b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/vo/GaoDeAddressInfoVO.java @@ -0,0 +1,23 @@ +package com.ruoyi.common.core.vo; + +import lombok.Data; + +import java.util.List; + +/** + * @author HJL + */ +@Data +public class GaoDeAddressInfoVO { + + private String status; + + private String info; + + private String infocode; + + private String count; + + private List<Geocodes> geocodes; + +} \ No newline at end of file diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/vo/Geocodes.java b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/vo/Geocodes.java new file mode 100644 index 0000000..b978f35 --- /dev/null +++ b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/vo/Geocodes.java @@ -0,0 +1,27 @@ +package com.ruoyi.common.core.vo; + +import lombok.Data; + +/** + * @author HJL + * @version 1.0 + * @since 2024-07-25 14:25 + */ +@Data +public class Geocodes { + + private String formatted_address; + + private String country; + + private String province; + + private String citycode; + + private String city; + + private String district; + + private String adcode; + +} diff --git a/ruoyi-common/ruoyi-common-security/src/main/java/com/ruoyi/common/security/handler/GlobalExceptionHandler.java b/ruoyi-common/ruoyi-common-security/src/main/java/com/ruoyi/common/security/handler/GlobalExceptionHandler.java index 27ddb98..23d684c 100644 --- a/ruoyi-common/ruoyi-common-security/src/main/java/com/ruoyi/common/security/handler/GlobalExceptionHandler.java +++ b/ruoyi-common/ruoyi-common-security/src/main/java/com/ruoyi/common/security/handler/GlobalExceptionHandler.java @@ -143,7 +143,7 @@ */ @ExceptionHandler(GlobalException.class) public R<String> handleDemoModeException(GlobalException g) { - return R.fail(null, g.getCode(), g.getMessage()); + return R.fail(null, g.getCode() == null ? 500 : g.getCode(), g.getMessage()); } /** diff --git a/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/controller/EvaluateController.java b/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/controller/EvaluateController.java index bc95d95..f674e78 100644 --- a/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/controller/EvaluateController.java +++ b/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/controller/EvaluateController.java @@ -2,7 +2,10 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.ruoyi.admin.entity.User; +import com.ruoyi.admin.service.UserService; import com.ruoyi.common.core.domain.R; +import com.ruoyi.common.core.utils.StringUtils; import com.ruoyi.common.security.annotation.Logical; import com.ruoyi.common.security.annotation.RequiresPermissions; import com.ruoyi.common.security.service.TokenService; @@ -23,6 +26,7 @@ import javax.annotation.Resource; import java.util.ArrayList; import java.util.List; +import java.util.stream.Collectors; /** * <p> @@ -41,6 +45,8 @@ private EvaluateClient evaluateClient; @Resource private TokenService tokenService; + @Resource + private UserService userService; /** * 订单评价分页列表 @@ -69,6 +75,13 @@ if (loginUser.getIsFranchisee()) { cityList = loginUser.getCityList(); } + List<User> userList; + if (StringUtils.isNotBlank(userNo)) { + userList = userService.lambdaQuery().like(User::getNickname, userNo).list(); + } else { + userList = new ArrayList<>(); + } + List<Integer> userIdList = userList.stream().map(User::getId).collect(Collectors.toList()); EvaluatePageRequest evaluatePageRequest = new EvaluatePageRequest(); evaluatePageRequest.setUserNo(userNo); evaluatePageRequest.setOrderNumber(orderNumber); @@ -76,7 +89,16 @@ evaluatePageRequest.setCityList(cityList); evaluatePageRequest.setPageNum(pageNum); evaluatePageRequest.setPageSize(pageSize); - return evaluateClient.queryPageList(evaluatePageRequest); + evaluatePageRequest.setUserIdList(userIdList); + R<Page<EvaluatePageVO>> r = evaluateClient.queryPageList(evaluatePageRequest); + for (EvaluatePageVO record : r.getData().getRecords()) { + Integer userId = record.getUserId(); + User user = userService.getById(userId); + if (null != user) { + record.setUserNo(user.getNickname()); + } + } + return r; } /** diff --git a/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/controller/FranchiseeController.java b/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/controller/FranchiseeController.java index abd18d9..d645f5f 100644 --- a/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/controller/FranchiseeController.java +++ b/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/controller/FranchiseeController.java @@ -5,9 +5,11 @@ import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.ruoyi.admin.entity.Franchisee; +import com.ruoyi.admin.entity.Region; import com.ruoyi.admin.entity.SysUser; import com.ruoyi.admin.entity.UserRole; import com.ruoyi.admin.service.FranchiseeService; +import com.ruoyi.admin.service.RegionService; import com.ruoyi.admin.service.SysUserService; import com.ruoyi.admin.service.UserRoleService; import com.ruoyi.common.core.constant.Constants; @@ -47,6 +49,8 @@ private SysUserService sysUserService; @Resource private UserRoleService userRoleService; + @Resource + private RegionService regionService; /** * 加盟商信息分页列表 @@ -104,7 +108,7 @@ public R<List<String>> cityDetail(@RequestParam("id") Integer id) { Franchisee franchisee = franchiseeService.lambdaQuery() .eq(Franchisee::getId, id).eq(Franchisee::getIsDelete, 0).one(); - return R.ok(Arrays.stream(franchisee.getCity().split(",")).collect(Collectors.toList())); + return R.ok(Arrays.stream(franchisee.getCityCode().split(",")).collect(Collectors.toList())); } /** @@ -120,6 +124,18 @@ throw new GlobalException("请输入管理员初始密码!"); } String md5Password = checkFranchisee(franchisee); + String cityCode = franchisee.getCityCode(); + List<String> list = Arrays.stream(cityCode.split(",")).collect(Collectors.toList()); + StringBuilder str = new StringBuilder(); + for (String code : list) { + Region region = regionService.lambdaQuery() + .eq(Region::getCode, code).one(); + if (null != region) { + str.append(region.getName()).append(","); + } + } + String city = str.substring(Constants.ZERO, str.length() - 1); + franchisee.setCity(city); boolean save = franchiseeService.save(franchisee); // 生成sysUser账号 SysUser sysUser = new SysUser(); @@ -217,7 +233,7 @@ .eq(SysUser::getIsDelete, Constants.ZERO) .eq(SysUser::getFranchiseeId, null).one(); if (null != only || null != user) { - throw new GlobalException("该账号已存在!"); + throw new GlobalException("该账号已存在!", 500); } // String city = franchisee.getCity(); // List<String> cityList = Arrays.stream(city.split(",")).collect(Collectors.toList()); diff --git a/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/controller/HomePageController.java b/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/controller/HomePageController.java index d0aa1c1..c1f197a 100644 --- a/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/controller/HomePageController.java +++ b/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/controller/HomePageController.java @@ -1,7 +1,5 @@ package com.ruoyi.admin.controller; -import com.ruoyi.admin.netty.NettyChannelMap; -import com.ruoyi.admin.netty.NettyWebSocketController; import com.ruoyi.admin.request.UserDataCountRequest; import com.ruoyi.admin.service.MasterWorkerService; import com.ruoyi.admin.service.UserService; @@ -15,10 +13,12 @@ import com.ruoyi.order.api.entity.OrderResultVO; import com.ruoyi.order.api.feignClient.OrderClient; import com.ruoyi.system.api.model.LoginUser; -import io.netty.channel.ChannelHandlerContext; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; -import org.springframework.web.bind.annotation.*; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; import javax.annotation.Resource; import java.util.List; @@ -41,21 +41,6 @@ private OrderClient orderClient; @Resource private TokenService tokenService; - - /** - * netty测试 - * - * @param workerId 请求参数 - */ - @ApiOperation(value = "netty测试", tags = {"后台-首页"}) - @GetMapping(value = "/nettySend") - public R<?> nettySend(@RequestParam Integer workerId) { - ChannelHandlerContext context = NettyChannelMap.getData(String.valueOf(workerId)); - if (null != context) { - NettyWebSocketController.sendMsgToClient(context, "您有一条新的订单,请注意查收!"); - } - return R.ok(); - } /** * 用户数据统计 diff --git a/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/controller/MasterWorkerController.java b/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/controller/MasterWorkerController.java index 172f262..580d976 100644 --- a/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/controller/MasterWorkerController.java +++ b/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/controller/MasterWorkerController.java @@ -87,9 +87,9 @@ // 最后一跳城市不匹配or条件 String s = cityList.get(i); if (cityList.size() - 1 == i) { - wrapper.like(MasterWorker::getCity, s); + wrapper.like(MasterWorker::getCityCode, s); } else { - wrapper.like(MasterWorker::getCity, s).or(); + wrapper.like(MasterWorker::getCityCode, s).or(); } } return R.ok(wrapper.eq(MasterWorker::getIsDelete, Constants.ZERO) diff --git a/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/controller/OrderController.java b/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/controller/OrderController.java index 2181b11..1f7169b 100644 --- a/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/controller/OrderController.java +++ b/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/controller/OrderController.java @@ -14,7 +14,10 @@ import com.ruoyi.admin.vo.OrderDetailVO; import com.ruoyi.common.core.constant.Constants; import com.ruoyi.common.core.domain.R; +import com.ruoyi.common.core.domain.Result; +import com.ruoyi.common.core.utils.GaoDeMapUtil; import com.ruoyi.common.core.utils.SnowflakeIdWorker; +import com.ruoyi.common.core.vo.CityInfoVO; import com.ruoyi.common.security.annotation.Logical; import com.ruoyi.common.security.annotation.RequiresPermissions; import com.ruoyi.common.security.service.TokenService; @@ -117,7 +120,11 @@ return R.loginExpire("登录失效!"); } if (loginUser.getIsFranchisee()) { - orderQueryRequest.setCityList(loginUser.getCityList()); + if (null == orderQueryRequest.getCityList() || orderQueryRequest.getCityList().isEmpty()) { + orderQueryRequest.setCityList(loginUser.getCityList()); + } else { + orderQueryRequest.getCityList().addAll(loginUser.getCityList()); + } } Page<Order> data = orderClient.queryPage(orderQueryRequest).getData(); if (null != data) { @@ -131,6 +138,7 @@ record.setServerName(masterWorker.getRealName()); record.setServerPhone(masterWorker.getPhone()); } + record.setReservationAddress(record.getReservationAddress() + record.getAddress()); } } return R.ok(data); @@ -143,6 +151,17 @@ @ApiOperation(value = "订单列表-各订单数量统计", tags = {"后台-订单管理"}) @PostMapping(value = "/orderPageCount") public R<OrderPageCountVO> orderPageCount(@RequestBody OrderQueryRequest orderQueryRequest) { + LoginUser loginUser = tokenService.getLoginUser(); + if (null == loginUser) { + return R.loginExpire("登录失效!"); + } + if (loginUser.getIsFranchisee()) { + if (null == orderQueryRequest.getCityList() || orderQueryRequest.getCityList().isEmpty()) { + orderQueryRequest.setCityList(loginUser.getCityList()); + } else { + orderQueryRequest.getCityList().addAll(loginUser.getCityList()); + } + } return R.ok(orderClient.orderPageCount(orderQueryRequest).getData()); } diff --git a/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/controller/RecoveryServeController.java b/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/controller/RecoveryServeController.java index e42fba3..aacae71 100644 --- a/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/controller/RecoveryServeController.java +++ b/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/controller/RecoveryServeController.java @@ -141,6 +141,7 @@ price.setRecoveryServeId(serve.getId()); price.setRecoveryPrice(recoveryPrice); price.setCity(city); + price.setCityCode(data.getCityCode()); save = save && recoveryServePriceService.save(price); } } @@ -179,6 +180,7 @@ price.setRecoveryServeId(serve.getId()); price.setRecoveryPrice(recoveryPrice); price.setCity(city); + price.setCityCode(data.getCityCode()); update = update && recoveryServePriceService.save(price); } } @@ -200,6 +202,9 @@ List<String> idList = Arrays.stream(ids.split(",")).collect(Collectors.toList()); List<RecoveryServe> list = recoveryServeService.lambdaQuery().in(RecoveryServe::getId, idList).list(); list.forEach(data -> data.setIsDelete(1)); + recoveryServePriceService.lambdaUpdate() + .set(RecoveryServePrice::getIsDelete, Constants.ONE) + .in(RecoveryServePrice::getRecoveryServeId, idList).update(); return recoveryServeService.updateBatchById(list) ? R.ok() : R.fail(); } diff --git a/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/controller/RecoveryServePriceController.java b/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/controller/RecoveryServePriceController.java deleted file mode 100644 index cc278f0..0000000 --- a/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/controller/RecoveryServePriceController.java +++ /dev/null @@ -1,20 +0,0 @@ -package com.ruoyi.admin.controller; - - -import org.springframework.web.bind.annotation.RequestMapping; - -import org.springframework.web.bind.annotation.RestController; - -/** - * <p> - * 回收服务对应回收价格及所在城市 前端控制器 - * </p> - * - * @author hjl - * @since 2024-05-29 - */ -@RestController -@RequestMapping("/recoveryServePrice") -public class RecoveryServePriceController { - -} diff --git a/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/controller/RegionController.java b/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/controller/RegionController.java index 0319956..ead6b5d 100644 --- a/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/controller/RegionController.java +++ b/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/controller/RegionController.java @@ -4,6 +4,8 @@ import com.ruoyi.admin.entity.Region; import com.ruoyi.admin.service.RegionService; import com.ruoyi.common.core.domain.R; +import com.ruoyi.common.security.service.TokenService; +import com.ruoyi.system.api.model.LoginUser; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.web.bind.annotation.GetMapping; @@ -11,6 +13,7 @@ import org.springframework.web.bind.annotation.RestController; import javax.annotation.Resource; +import java.util.ArrayList; import java.util.List; /** @@ -28,6 +31,8 @@ @Resource private RegionService regionService; + @Resource + private TokenService tokenService; /** * 收货地址省市二级联动 @@ -35,7 +40,17 @@ @GetMapping("/addressTree") @ApiOperation(value = "选择城市:省市二级联动", tags = {"后台-首页"}) public R<List<Region>> addressTree() { - return R.ok(regionService.addressTree()); + LoginUser loginUser = tokenService.getLoginUser(); + if (null == loginUser) { + return R.loginExpire("登录失效!"); + } + List<String> cityCodeList; + if (loginUser.getIsFranchisee()) { + cityCodeList = loginUser.getCityList(); + } else { + cityCodeList = new ArrayList<>(); + } + return R.ok(regionService.addressTree(cityCodeList)); } } diff --git a/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/controller/WorkerProcessController.java b/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/controller/WorkerProcessController.java index d321b5b..993872d 100644 --- a/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/controller/WorkerProcessController.java +++ b/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/controller/WorkerProcessController.java @@ -81,9 +81,9 @@ // 最后一跳城市不匹配or条件 String s = cityList.get(i); if (cityList.size() - 1 == i) { - wrapper.like(WorkerProcess::getCity, s); + wrapper.like(WorkerProcess::getCityCode, s); } else { - wrapper.like(WorkerProcess::getCity, s).or(); + wrapper.like(WorkerProcess::getCityCode, s).or(); } } return R.ok(wrapper.eq(WorkerProcess::getIsDelete, 0) diff --git a/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/entity/Agreement.java b/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/entity/Agreement.java index 124521d..2ed9dc4 100644 --- a/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/entity/Agreement.java +++ b/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/entity/Agreement.java @@ -10,6 +10,8 @@ import lombok.Getter; import lombok.Setter; +import javax.validation.constraints.NotBlank; + /** * <p> * 协议政策、司机操作指导 @@ -29,6 +31,7 @@ @ApiModelProperty("内容") @TableField("content") + @NotBlank private String content; @ApiModelProperty("0注册协议;1:隐私政策;2:司机操作指导") diff --git a/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/entity/Franchisee.java b/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/entity/Franchisee.java index e1c4759..2da88f4 100644 --- a/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/entity/Franchisee.java +++ b/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/entity/Franchisee.java @@ -62,7 +62,6 @@ @ApiModelProperty("管辖城市( ',' 隔开)") @TableField("city") - @NotBlank(message = "请选择:管辖城市") private String city; @ApiModelProperty("身份证正反面照片 ,隔开") @@ -82,4 +81,9 @@ @TableField("city_str") private String cityStr; + @ApiModelProperty("对应城市code") + @NotBlank(message = "请选择:管辖城市") + @TableField("city_code") + private String cityCode; + } diff --git a/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/entity/MasterWorker.java b/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/entity/MasterWorker.java index e6350a9..9446416 100644 --- a/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/entity/MasterWorker.java +++ b/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/entity/MasterWorker.java @@ -89,4 +89,8 @@ @TableField("city_str") private String cityStr; + @ApiModelProperty("对应城市code") + @TableField("city_code") + private String cityCode; + } diff --git a/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/entity/RecoveryServePrice.java b/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/entity/RecoveryServePrice.java index b4dd1b3..0241a27 100644 --- a/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/entity/RecoveryServePrice.java +++ b/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/entity/RecoveryServePrice.java @@ -41,4 +41,8 @@ @TableField("city") private String city; + @ApiModelProperty("对应城市code") + @TableField("city_code") + private String cityCode; + } diff --git a/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/entity/WorkerProcess.java b/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/entity/WorkerProcess.java index 49289be..e1d95fc 100644 --- a/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/entity/WorkerProcess.java +++ b/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/entity/WorkerProcess.java @@ -85,4 +85,8 @@ @TableField("city_str") private String cityStr; + @ApiModelProperty("对应城市code") + @TableField("city_code") + private String cityCode; + } diff --git a/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/mapper/UserMapper.java b/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/mapper/UserMapper.java index 24738bf..cd3b5ed 100644 --- a/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/mapper/UserMapper.java +++ b/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/mapper/UserMapper.java @@ -42,4 +42,5 @@ * @return 注册用户数量 */ Long increaseNumberByMonth(@Param("cityList") List<String> cityList); + } diff --git a/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/request/RecoveryServePriceRequest.java b/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/request/RecoveryServePriceRequest.java index 8cd9737..2c72bef 100644 --- a/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/request/RecoveryServePriceRequest.java +++ b/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/request/RecoveryServePriceRequest.java @@ -26,4 +26,7 @@ @ApiModelProperty("对应城市") private String city; + @ApiModelProperty("对应城市code") + private String cityCode; + } diff --git a/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/service/RegionService.java b/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/service/RegionService.java index 5ba0fa6..154ea31 100644 --- a/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/service/RegionService.java +++ b/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/service/RegionService.java @@ -18,7 +18,8 @@ /** * 收货地址省市区二级联动 * + * @param cityCodeList 城市编码列表 * @return 无限级树 */ - List<Region> addressTree(); + List<Region> addressTree(List<String> cityCodeList); } diff --git a/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/service/impl/MasterWorkerServiceImpl.java b/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/service/impl/MasterWorkerServiceImpl.java index 516dacf..261353e 100644 --- a/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/service/impl/MasterWorkerServiceImpl.java +++ b/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/service/impl/MasterWorkerServiceImpl.java @@ -34,7 +34,7 @@ if (null == cityList || cityList.isEmpty()) { masterWorkerList = lambdaQuery().eq(MasterWorker::getIsDelete, 0).list(); } else { - masterWorkerList = lambdaQuery().in(MasterWorker::getCity, cityList) + masterWorkerList = lambdaQuery().in(MasterWorker::getCityCode, cityList) .eq(MasterWorker::getIsDelete, 0).list(); } if (null == masterWorkerList || masterWorkerList.isEmpty()) { diff --git a/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/service/impl/OrderServiceImpl.java b/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/service/impl/OrderServiceImpl.java index 65ad09f..a2912c0 100644 --- a/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/service/impl/OrderServiceImpl.java +++ b/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/service/impl/OrderServiceImpl.java @@ -225,7 +225,7 @@ } orderByUserInfo.setReservationName(order.getReservationName()); orderByUserInfo.setReservationPhone(order.getReservationPhone()); - orderByUserInfo.setReservationAddress(order.getReservationAddress()); + orderByUserInfo.setReservationAddress(order.getReservationAddress() + order.getAddress()); orderByUserInfo.setTime(order.getTime()); result.setUserInfo(orderByUserInfo); } diff --git a/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/service/impl/RegionServiceImpl.java b/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/service/impl/RegionServiceImpl.java index 350303c..e423b06 100644 --- a/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/service/impl/RegionServiceImpl.java +++ b/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/service/impl/RegionServiceImpl.java @@ -10,7 +10,6 @@ import javax.annotation.Resource; import java.util.ArrayList; -import java.util.Collection; import java.util.List; import java.util.Map; import java.util.concurrent.TimeUnit; @@ -31,11 +30,9 @@ private RedisTemplate<Object, Object> redisTemplate; @Override - public List<Region> addressTree() { - // redis缓存 - Map<Object, Object> regionList = redisTemplate.opsForHash().entries(RedisConstants.ADDRESS_TREE); + public List<Region> addressTree(List<String> cityCodeList) { // 获取所有地区信息 省市区三级 - List<Region> regions = getReginList(regionList); + List<Region> regions = getReginList(cityCodeList); // 所有地区 Map<String, Region> courseTypeMap = regions.stream(). collect(Collectors.toMap(region -> region.getId().toString() @@ -67,15 +64,13 @@ /** * 获取redis数据进行封装 */ - private List<Region> getReginList(Map<Object, Object> regionMap) { - List<Region> regions = new ArrayList<>(); - if (!regionMap.isEmpty()) { - Collection<Object> values = regionMap.values(); - for (Object value : values) { - regions.add((Region) value); - } - } else { + private List<Region> getReginList(List<String> cityCodeList) { + List<Region> regions; + if (cityCodeList.isEmpty()) { regions = this.list(); + } else { + regions = this.lambdaQuery() + .in(Region::getCode, cityCodeList).list(); } return regions; } diff --git a/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/service/impl/UserServiceImpl.java b/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/service/impl/UserServiceImpl.java index 320b592..59b8464 100644 --- a/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/service/impl/UserServiceImpl.java +++ b/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/service/impl/UserServiceImpl.java @@ -9,6 +9,7 @@ import com.ruoyi.admin.vo.UserDataCountVO; import com.ruoyi.admin.vo.UserTrendsVO; import com.ruoyi.common.core.constant.OrderConstants; +import com.ruoyi.common.core.domain.R; import com.ruoyi.order.api.entity.MoneyQueryRequest; import com.ruoyi.order.api.feignClient.OrderClient; import com.ruoyi.order.api.feignClient.WithdrawClient; @@ -49,9 +50,21 @@ public UserDataCountVO userDataCount(UserDataCountRequest userDataCountRequest) { List<String> cityList = userDataCountRequest.getCityList(); String type = userDataCountRequest.getCountType(); - List<User> userList = lambdaQuery().eq(User::getIsDelete, 0).list(); + LambdaQueryChainWrapper<User> userWrapper = lambdaQuery().eq(User::getIsDelete, 0); + if (null != cityList && !cityList.isEmpty()) { + userWrapper.in(User::getCityCode, cityList); + } + List<User> userList = userWrapper.list(); + // 判断用户是否在管辖城市内下过订单 + for (User user : userList) { + Integer userId = user.getId(); + R<Boolean> r = orderClient.orderByUserId(userId); + if (!r.getData()) { + userList.remove(user); + } + } + Integer userNumber = userList.size(); // 用户总量 - Integer userNumber = null == userList ? 0 : userList.size(); // 计算当前季度时间所包含时间 int currentYear = Year.now().getValue(); // 获取当前月份 @@ -71,8 +84,8 @@ // 用户增长数 LambdaQueryChainWrapper<User> wrapper = lambdaQuery().ge(User::getCreateTime, startDateStr) .le(User::getCreateTime, endDateStr); - if (!cityList.isEmpty()) { - wrapper.in(User::getCity, cityList); + if (null != cityList && !cityList.isEmpty()) { + wrapper.in(User::getCityCode, cityList); } increaseNumber = wrapper.eq(User::getIsDelete, 0).count(); } else if (OrderConstants.YEAR.equals(type)) { diff --git a/ruoyi-service/ruoyi-admin/src/main/resources/mapper/admin/UserMapper.xml b/ruoyi-service/ruoyi-admin/src/main/resources/mapper/admin/UserMapper.xml index 81c2dbd..ee081af 100644 --- a/ruoyi-service/ruoyi-admin/src/main/resources/mapper/admin/UserMapper.xml +++ b/ruoyi-service/ruoyi-admin/src/main/resources/mapper/admin/UserMapper.xml @@ -21,7 +21,7 @@ FROM t_user <where> <if test="city != null and city.size() != 0"> - city in + city_code in <foreach collection="city" item="city" open="(" separator="," close=")"> #{city} </foreach> @@ -39,7 +39,7 @@ WHERE YEAR(createTime) = YEAR(NOW()) and is_delete = 0 <if test="cityList != null and cityList.size() != 0"> - and city in + and city_code in <foreach collection="cityList" item="city" open="(" separator="," close=")"> #{city} </foreach> @@ -52,10 +52,11 @@ WHERE MONTH(createTime) = MONTH(NOW()) AND YEAR(createTime) = YEAR(NOW()) <if test="cityList != null and cityList.size() != 0"> - and city in + and city_code in <foreach collection="cityList" item="city" open="(" separator="," close=")"> #{city} </foreach> </if> </select> + </mapper> diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/OrderController.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/OrderController.java index 9ad1c53..c703917 100644 --- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/OrderController.java +++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/OrderController.java @@ -159,8 +159,16 @@ } catch (Exception e) { bigDecimal = BigDecimal.ZERO; } - return R.ok(orderService.lambdaUpdate() - .eq(Order::getId, orderId).set(Order::getSubsidy, bigDecimal).update()); + Order order = orderService.lambdaQuery() + .eq(Order::getId, orderId).eq(Order::getIsDelete, 0).one(); + BigDecimal subsidy = order.getSubsidy(); + if (null == subsidy) { + order.setSubsidy(bigDecimal); + } else { + BigDecimal add = order.getSubsidy().add(bigDecimal); + order.setSubsidy(add); + } + return R.ok(orderService.updateById(order)); } /** @@ -319,8 +327,21 @@ @ApiImplicitParam(value = "每页条数", name = "pageSize", dataType = "Integer", required = true) }) public R<Page<OrderCountVO>> orderCount(@RequestBody OrderCountDataRequest request) { - return R.ok(orderService.orderCount(request.getWorkerName(), request.getWorkerPhone(), + return R.ok(orderService.orderCount(request.getWorkerName(), request.getWorkerPhone(), request.getCityList(), Page.of(request.getPageNum(), request.getPageSize()))); + } + + /** + * 判断用户是否下单 + * + * @param userId 用户id + */ + @GetMapping(value = "/orderByUserId") + public R<Boolean> orderByUserId(@RequestParam("userId") Integer userId) { + List<Order> list = orderService.lambdaQuery() + .eq(Order::getUserId, userId) + .eq(Order::getIsDelete, Constants.ZERO).list(); + return R.ok(!list.isEmpty()); } /** @@ -451,6 +472,7 @@ public R<OrderDetailVO> orderDetail(@RequestParam("orderId") String orderId) { // 订单信息 Order order = orderService.lambdaQuery().eq(Order::getId, orderId).eq(Order::getIsDelete, 0).one(); + order.setReservationAddress(order.getReservationAddress() + order.getAddress()); // 服务信息(服务备注、上门时间、完成时间、完成所拍现场照片) ServeRecord serveRecord = serveRecordService.lambdaQuery().eq(ServeRecord::getOrderId, orderId) .eq(ServeRecord::getIsDelete, 0).one(); @@ -556,7 +578,9 @@ @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize) { LambdaQueryChainWrapper<Order> wrapper = orderService.lambdaQuery() .eq(Order::getIsDelete, 0).eq(Order::getUserId, userId); - if (state != -1) { + if (state == 1 || state == 2) { + wrapper.in(Order::getState, Constants.ONE, Constants.TWO); + } else if (state != -1) { wrapper.eq(Order::getState, state); } return R.ok(wrapper.orderByDesc(Order::getCreateTime).page(Page.of(pageNum, pageSize))); diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/entity/ChangeDispatch.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/entity/ChangeDispatch.java index c35bd71..be164fb 100644 --- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/entity/ChangeDispatch.java +++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/entity/ChangeDispatch.java @@ -72,5 +72,9 @@ @TableField("user_name") private String userName; + @ApiModelProperty("城市编码") + @TableField("city_code") + private String cityCode; + } diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/entity/Order.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/entity/Order.java index 19b8051..da4b655 100644 --- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/entity/Order.java +++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/entity/Order.java @@ -150,6 +150,10 @@ @TableField("top_sort") private Integer topSort; + @ApiModelProperty("城市code") + @TableField("city_code") + private String cityCode; + @ApiModelProperty("是否评价(0:未评价,1:已评价)") @TableField("is_evaluate") private Integer isEvaluate; diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/entity/Withdraw.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/entity/Withdraw.java index f2ff4dc..9cfb019 100644 --- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/entity/Withdraw.java +++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/entity/Withdraw.java @@ -68,4 +68,8 @@ @TableField("order_id") private String orderId; + @ApiModelProperty("城市code") + @TableField("city_code") + private String cityCode; + } diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/mapper/OrderMapper.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/mapper/OrderMapper.java index 249d601..47ed38c 100644 --- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/mapper/OrderMapper.java +++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/mapper/OrderMapper.java @@ -85,12 +85,14 @@ /** * 订单管理-订单统计 * - * @param name 师傅姓名 - * @param phone 师傅电话 - * @param page 分页 + * @param name 师傅姓名 + * @param phone 师傅电话 + * @param cityList 城市列表 + * @param page 分页 * @return 分页统计 */ - Page<OrderCountVO> orderCount(@Param("name") String name, @Param("phone") String phone, Page<OrderCountVO> page); + Page<OrderCountVO> orderCount(@Param("name") String name, @Param("phone") String phone, + @Param("cityList") List<String> cityList, Page<OrderCountVO> page); /** * 订单列表 diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/request/EvaluatePageRequest.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/request/EvaluatePageRequest.java index 810eaa5..833dae5 100644 --- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/request/EvaluatePageRequest.java +++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/request/EvaluatePageRequest.java @@ -24,4 +24,6 @@ private Integer pageSize; + private List<Integer> userIdList; + } diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/OrderService.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/OrderService.java index e7e921f..46f6585 100644 --- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/OrderService.java +++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/OrderService.java @@ -47,12 +47,13 @@ /** * 订单管理-订单统计 * - * @param name 师傅姓名 - * @param phone 师傅电话 - * @param page 分页 + * @param name 师傅姓名 + * @param phone 师傅电话 + * @param cityList 城市列表 + * @param page 分页 * @return 分页统计 */ - Page<OrderCountVO> orderCount(String name, String phone, Page<OrderCountVO> page); + Page<OrderCountVO> orderCount(String name, String phone, List<String> cityList, Page<OrderCountVO> page); /** * 订单管理分页模块,订单数量统计 diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java index 24cde1d..9d2abb3 100644 --- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java +++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java @@ -71,11 +71,11 @@ long diffInMillis = date2.getTime() - date1.getTime(); long diffInDays = diffInMillis / (24 * 60 * 60 * 1000); if (diffInDays > Constants.YEAR_DAY) { - list = baseMapper.orderCountByTimeRangeYear(cityList, startTime, endTime,orderState); + list = baseMapper.orderCountByTimeRangeYear(cityList, startTime, endTime, orderState); } else if (diffInDays > Constants.THIRTY) { - list = baseMapper.orderCountByTimeRangeMonth(cityList, startTime, endTime,orderState); + list = baseMapper.orderCountByTimeRangeMonth(cityList, startTime, endTime, orderState); } else { - list = baseMapper.orderCountByTimeRange(cityList, startTime, endTime,orderState); + list = baseMapper.orderCountByTimeRange(cityList, startTime, endTime, orderState); } } catch (ParseException e) { list = new ArrayList<>(); @@ -131,8 +131,8 @@ @Override - public Page<OrderCountVO> orderCount(String name, String phone, Page<OrderCountVO> page) { - return baseMapper.orderCount(name, phone, page); + public Page<OrderCountVO> orderCount(String name, String phone, List<String> cityList, Page<OrderCountVO> page) { + return baseMapper.orderCount(name, phone, cityList, page); } @Override @@ -307,6 +307,7 @@ order.setServeName(serveName); order.setServePrice(defaultPrice); order.setUserId(userId); + order.setIsEvaluate(Constants.ZERO); order.setReservationName(reservationName); order.setReservationPhone(reservationPhone); if (null == userOrderRequest.getAddressId()) { diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/WithdrawServiceImpl.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/WithdrawServiceImpl.java index bca8a9a..bc9b449 100644 --- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/WithdrawServiceImpl.java +++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/WithdrawServiceImpl.java @@ -203,6 +203,7 @@ withdraw.setApplyForTime(new Date()); withdraw.setApplyForMoney(order.getOrderMoney()); withdraw.setOrderId(orderId); + withdraw.setCityCode(order.getCityCode()); return this.save(withdraw); } diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/vo/EvaluateOrderInfoVO.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/vo/EvaluateOrderInfoVO.java index 2ccd818..29b93d8 100644 --- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/vo/EvaluateOrderInfoVO.java +++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/vo/EvaluateOrderInfoVO.java @@ -42,4 +42,7 @@ @ApiModelProperty("回收服务id") private Integer serveId; + @ApiModelProperty("是否评价(0:未评价;1:已评价)") + private Integer isEvaluate; + } diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/vo/OrderCountVO.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/vo/OrderCountVO.java index 8478482..59fb593 100644 --- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/vo/OrderCountVO.java +++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/vo/OrderCountVO.java @@ -13,6 +13,9 @@ @ApiModel(value = "OrderCountVO对象", description = "订单统计返回类") public class OrderCountVO { + @ApiModelProperty("订单中师傅名称") + private String workerName; + @ApiModelProperty("师傅id") private Integer workerId; diff --git a/ruoyi-service/ruoyi-order/src/main/resources/mapper/order/ChangeDispatchMapper.xml b/ruoyi-service/ruoyi-order/src/main/resources/mapper/order/ChangeDispatchMapper.xml index 7bff320..3a4e0ca 100644 --- a/ruoyi-service/ruoyi-order/src/main/resources/mapper/order/ChangeDispatchMapper.xml +++ b/ruoyi-service/ruoyi-order/src/main/resources/mapper/order/ChangeDispatchMapper.xml @@ -37,7 +37,7 @@ and c.user_name like concat('%', #{data.userName}, '%') </if> <if test="data.cityList != null and data.cityList.size() != 0"> - and o.city in + and o.city_code in <foreach collection="data.cityList" item="city" open="(" separator="," close=")"> #{city} </foreach> diff --git a/ruoyi-service/ruoyi-order/src/main/resources/mapper/order/EvaluateMapper.xml b/ruoyi-service/ruoyi-order/src/main/resources/mapper/order/EvaluateMapper.xml index 4fef17c..afec60c 100644 --- a/ruoyi-service/ruoyi-order/src/main/resources/mapper/order/EvaluateMapper.xml +++ b/ruoyi-service/ruoyi-order/src/main/resources/mapper/order/EvaluateMapper.xml @@ -21,7 +21,6 @@ <resultMap id="evaluatePageVO" type="com.ruoyi.order.vo.EvaluatePageVO"> <result column="id" property="id"/> <result column="user_id" property="userId"/> - <result column="userNo" property="userNo"/> <result column="user_phone" property="userPhone"/> <result column="order_id" property="orderId"/> <result column="order_number" property="orderNumber"/> @@ -45,17 +44,19 @@ e.serve_no, e.star_rating, e.is_delete, - o.reservation_name as userNo, o.order_number, - o.server_name as workerName, - o.server_phone as workerPhone + o.server_name as workerName, + o.server_phone as workerPhone from t_evaluate e left join t_order o on e.order_id = o.id <where> e.is_delete = 0 and o.is_delete = 0 - <if test="data.userNo != null and data.userNo != ''"> - and o.reservation_name like concat('%', #{data.userNo}, '%') + <if test="data.cityList != null and data.cityList.size() != 0"> + and o.user_id in + <foreach collection="data.userIdList" item="id" open="(" separator="," close=")"> + #{id} + </foreach> </if> <if test="data.orderNumber != null and data.orderNumber != ''"> and o.order_number like concat('%', #{data.orderNumber}, '%') @@ -64,7 +65,7 @@ and o.server_name like concat('%', #{data.workerName}, '%') </if> <if test="data.cityList != null and data.cityList.size() != 0"> - and o.city in + and o.city_code in <foreach collection="data.cityList" item="city" open="(" separator="," close=")"> #{city} </foreach> @@ -111,6 +112,7 @@ <result column="server_name" property="serverName"/> <result column="server_phone" property="serverPhone"/> <result column="serve_id" property="serveId"/> + <result column="is_evaluate" property="isEvaluate"/> </association> <association property="evaluateInfo" javaType="com.ruoyi.order.vo.EvaluateInfoVO"> <result column="content" property="content"/> @@ -125,6 +127,7 @@ o.complete_time, o.server_name, o.server_phone, + o.is_evaluate, e.content, e.star_rating, e.createTime, @@ -132,7 +135,10 @@ FROM t_order o LEFT JOIN t_evaluate e on o.id = e.order_id <where> - o.user_id = #{userId} + o.user_id = #{userId} and e.user_id = #{userId} + <!--订单评价列表只展示已完成订单--> + and o.state = 3 + and o.is_delete = 0 and e.is_delete = 0 <if test="state != -1"> and o.is_evaluate = #{state} </if> diff --git a/ruoyi-service/ruoyi-order/src/main/resources/mapper/order/OrderMapper.xml b/ruoyi-service/ruoyi-order/src/main/resources/mapper/order/OrderMapper.xml index e505b4d..0ba4a05 100644 --- a/ruoyi-service/ruoyi-order/src/main/resources/mapper/order/OrderMapper.xml +++ b/ruoyi-service/ruoyi-order/src/main/resources/mapper/order/OrderMapper.xml @@ -30,13 +30,15 @@ <select id="orderCountByYear" resultType="com.ruoyi.order.vo.OrderQueryVO"> - SELECT DATE_FORMAT(createTime, '%Y-%m') AS dateTime, COUNT(*) AS number, sum(IFNULL(serve_price, 0)) as totalPrice + SELECT DATE_FORMAT(createTime, '%Y-%m') AS dateTime, + COUNT(*) AS number, + sum(IFNULL(serve_price, 0)) as totalPrice FROM t_order <where> is_delete = 0 and YEAR(createTime) = YEAR(NOW()) <if test="cityList != null and cityList.size() != 0"> - and city in + and city_code in <foreach collection="cityList" item="id" open="(" separator="," close=")"> #{id} </foreach> @@ -50,13 +52,15 @@ </select> <select id="orderCountByWeek" resultType="com.ruoyi.order.vo.OrderQueryVO"> - SELECT DATE_FORMAT(createTime, '%Y-%m-%d') AS dateTime, COUNT(*) AS number, sum(IFNULL(serve_price, 0)) as totalPrice + SELECT DATE_FORMAT(createTime, '%Y-%m-%d') AS dateTime, + COUNT(*) AS number, + sum(IFNULL(serve_price, 0)) as totalPrice FROM t_order <where> is_delete = 0 and YEARWEEK(DATE_FORMAT(createTime, '%Y-%m-%d'), 1) = YEARWEEK(NOW(), 1) <if test="cityList != null and cityList.size() != 0"> - and city in + and city_code in <foreach collection="cityList" item="id" open="(" separator="," close=")"> #{id} </foreach> @@ -70,14 +74,16 @@ </select> <select id="orderCountByMonth" resultType="com.ruoyi.order.vo.OrderQueryVO"> - SELECT DATE_FORMAT(createTime, '%Y-%m-%d') AS dateTime, COUNT(*) AS number, sum(IFNULL(serve_price, 0)) as totalPrice + SELECT DATE_FORMAT(createTime, '%Y-%m-%d') AS dateTime, + COUNT(*) AS number, + sum(IFNULL(serve_price, 0)) as totalPrice FROM t_order <where> is_delete = 0 and MONTH(createTime) = MONTH(NOW()) AND YEAR(createTime) = YEAR(NOW()) <if test="cityList != null and cityList.size() != 0"> - and city in + and city_code in <foreach collection="cityList" item="id" open="(" separator="," close=")"> #{id} </foreach> @@ -91,13 +97,15 @@ </select> <select id="orderCountByToday" resultType="com.ruoyi.order.vo.OrderQueryVO"> - SELECT DATE_FORMAT(createTime, '%Y-%m-%d') AS dateTime, COUNT(*) AS number, sum(IFNULL(serve_price, 0)) as totalPrice + SELECT DATE_FORMAT(createTime, '%Y-%m-%d') AS dateTime, + COUNT(*) AS number, + sum(IFNULL(serve_price, 0)) as totalPrice FROM t_order <where> is_delete = 0 and DATE(createTime) = CURDATE() <if test="cityList != null and cityList.size() != 0"> - and city in + and city_code in <foreach collection="cityList" item="id" open="(" separator="," close=")"> #{id} </foreach> @@ -117,9 +125,9 @@ is_delete = 0 and state = 4 <if test="cityList != null and cityList.size() != 0"> - and city in + and city_code in <foreach collection="cityList" item="id" open="(" separator="," close=")"> - #{id} + #{id} </foreach> </if> <if test="start != null and start != ''"> @@ -138,7 +146,7 @@ and is_delete = 0 and state = 4 <if test="cityList != null and cityList.size() != 0"> - and city in + and city_code in <foreach collection="cityList" item="id" open="(" separator="," close=")"> #{id} </foreach> @@ -153,7 +161,7 @@ and is_delete = 0 and state = 4 <if test="cityList != null and cityList.size() != 0"> - and city in + and city_code in <foreach collection="cityList" item="id" open="(" separator="," close=")"> #{id} </foreach> @@ -168,6 +176,12 @@ FROM t_order o WHERE o.is_delete = 0 and o.server_id is not null + <if test="cityList != null and cityList.size() != 0"> + and o.city in + <foreach collection="cityList" item="city" open="(" separator="," close=")"> + #{city} + </foreach> + </if> <if test="phone != null and phone != ''"> and o.server_phone like concat('%', #{phone}, '%') </if> @@ -233,6 +247,12 @@ from t_order o <where> o.is_delete = 0 + <if test="data.cityList != null and data.cityList.size() != 0"> + and o.city in + <foreach collection="data.cityList" item="city" open="(" separator="," close=")"> + #{city} + </foreach> + </if> <if test="data.orderNumber != null and data.orderNumber != ''"> and o.order_number like concat('%', #{data.orderNumber}, '%') </if> @@ -378,12 +398,14 @@ </select> <select id="orderCountByTimeRange" resultType="com.ruoyi.order.vo.OrderQueryVO"> - SELECT DATE_FORMAT(createTime, '%Y-%m-%d') AS dateTime, COUNT(*) AS number, sum(IFNULL(serve_price, 0)) as totalPrice + SELECT DATE_FORMAT(createTime, '%Y-%m-%d') AS dateTime, + COUNT(*) AS number, + sum(IFNULL(serve_price, 0)) as totalPrice FROM t_order <where> is_delete = 0 <if test="cityList != null and cityList.size() != 0"> - and city in + and city_code in <foreach collection="cityList" item="id" open="(" separator="," close=")"> #{id} </foreach> @@ -408,7 +430,7 @@ <where> is_delete = 0 <if test="cityList != null and cityList.size() != 0"> - and city in + and city_code in <foreach collection="cityList" item="id" open="(" separator="," close=")"> #{id} </foreach> @@ -428,12 +450,14 @@ </select> <select id="orderCountByTimeRangeMonth" resultType="com.ruoyi.order.vo.OrderQueryVO"> - SELECT DATE_FORMAT(createTime, '%Y-%m') AS dateTime, COUNT(*) AS number, sum(IFNULL(serve_price, 0)) as totalPrice + SELECT DATE_FORMAT(createTime, '%Y-%m') AS dateTime, + COUNT(*) AS number, + sum(IFNULL(serve_price, 0)) as totalPrice FROM t_order <where> is_delete = 0 <if test="cityList != null and cityList.size() != 0"> - and city in + and city_code in <foreach collection="cityList" item="id" open="(" separator="," close=")"> #{id} </foreach> diff --git a/ruoyi-service/ruoyi-order/src/main/resources/mapper/order/WithdrawMapper.xml b/ruoyi-service/ruoyi-order/src/main/resources/mapper/order/WithdrawMapper.xml index e0cbb07..1e90e97 100644 --- a/ruoyi-service/ruoyi-order/src/main/resources/mapper/order/WithdrawMapper.xml +++ b/ruoyi-service/ruoyi-order/src/main/resources/mapper/order/WithdrawMapper.xml @@ -98,12 +98,12 @@ <if test="end != null and end != ''"> and w.createTime <![CDATA[ <= ]]> #{end} </if> - <!--<if test="cityList != null and cityList.size() != 0"> - and u.city in + <if test="cityList != null and cityList.size() != 0"> + and city_code in <foreach collection="cityList" item="id" open="(" separator="," close=")"> - #{id} + #{id} </foreach> - </if>--> + </if> </where> </select> diff --git a/ruoyi-service/ruoyi-user/src/main/java/com/ruoyi/user/controller/EvaluateController.java b/ruoyi-service/ruoyi-user/src/main/java/com/ruoyi/user/controller/EvaluateController.java index 097a2f3..09b4bed 100644 --- a/ruoyi-service/ruoyi-user/src/main/java/com/ruoyi/user/controller/EvaluateController.java +++ b/ruoyi-service/ruoyi-user/src/main/java/com/ruoyi/user/controller/EvaluateController.java @@ -54,7 +54,7 @@ Page<OrderEvaluateVO> list = evaluateClient.evaluateListByUser(loginUser.getUserid(), state, pageNum, pageSize).getData(); if (null != list) { // 数据封装,减少循环io - List<Integer> ids = list.getRecords().stream().map(OrderEvaluateVO::getServeId).collect(Collectors.toList()); + List<Integer> ids = list.getRecords().stream().map(data -> data.getOrderInfo().getServeId()).collect(Collectors.toList()); if (!ids.isEmpty()) { List<RecoveryServe> serveList = recoveryServeService.lambdaQuery() .in(RecoveryServe::getId, ids) diff --git a/ruoyi-service/ruoyi-user/src/main/java/com/ruoyi/user/controller/OrderController.java b/ruoyi-service/ruoyi-user/src/main/java/com/ruoyi/user/controller/OrderController.java index c662152..0334ea9 100644 --- a/ruoyi-service/ruoyi-user/src/main/java/com/ruoyi/user/controller/OrderController.java +++ b/ruoyi-service/ruoyi-user/src/main/java/com/ruoyi/user/controller/OrderController.java @@ -7,7 +7,9 @@ import com.ruoyi.common.core.constant.Constants; import com.ruoyi.common.core.domain.R; import com.ruoyi.common.core.exception.GlobalException; +import com.ruoyi.common.core.utils.GaoDeMapUtil; import com.ruoyi.common.core.utils.StringUtils; +import com.ruoyi.common.core.vo.CityInfoVO; import com.ruoyi.common.security.service.TokenService; import com.ruoyi.order.api.entity.Order; import com.ruoyi.order.api.entity.ServeRecord; @@ -95,7 +97,7 @@ @ApiOperation(value = "在线评估", tags = {"用户端-订单"}) @ApiImplicitParams({ @ApiImplicitParam(value = "回收服务id", name = "orderId", dataType = "Integer", required = true), - @ApiImplicitParam(value = "所在城市", name = "city", dataType = "String") + @ApiImplicitParam(value = "所在城市code", name = "city", dataType = "String") }) public R<BigDecimal> estimate(@RequestParam String orderId, String city) { Order order = orderClient.detail(orderId).getData(); @@ -104,9 +106,11 @@ .eq(RecoveryServe::getIsDelete, 0).one(); BigDecimal money = recoveryServe.getDefaultPrice(); if (StringUtils.isNotBlank(city)) { + CityInfoVO info = GaoDeMapUtil.getAddressInfo(city).getDatas(); RecoveryServePrice price = recoveryServePriceService.lambdaQuery() .eq(RecoveryServePrice::getRecoveryServeId, recoveryServe.getId()) - .eq(RecoveryServePrice::getCity, city).one(); + .eq(RecoveryServePrice::getCityCode, info.getCode()) + .eq(RecoveryServePrice::getIsDelete, Constants.ZERO).one(); if (null != price) { money = price.getRecoveryPrice(); } @@ -166,9 +170,15 @@ public R<Object> allowanceMoney(@RequestParam("orderId") String orderId, @RequestParam("prizeId") String prizeId) { Prize data = adminClient.prizeDetail(prizeId).getData(); if (null == data) { - return R.fail("奖品信息获取失败!"); + return R.fail(adminClient.prizeDetail(prizeId).getMsg()); } - return R.ok(orderClient.supplementAllowance(orderId, data.getPrizeName()).getData()); + String prizeMoney; + if (data.getPrizeName().contains(Constants.SUBSIDY_MONEY)) { + prizeMoney = data.getPrizeName().substring(Constants.ONE); + } else { + prizeMoney = "0"; + } + return R.ok(orderClient.supplementAllowance(orderId, prizeMoney).getData()); } @PostMapping("/orderEstimate") diff --git a/ruoyi-service/ruoyi-user/src/main/java/com/ruoyi/user/controller/RecoveryServeController.java b/ruoyi-service/ruoyi-user/src/main/java/com/ruoyi/user/controller/RecoveryServeController.java index 0204b90..cf5a89f 100644 --- a/ruoyi-service/ruoyi-user/src/main/java/com/ruoyi/user/controller/RecoveryServeController.java +++ b/ruoyi-service/ruoyi-user/src/main/java/com/ruoyi/user/controller/RecoveryServeController.java @@ -10,9 +10,12 @@ import com.ruoyi.user.entity.RecoveryClassify; import com.ruoyi.user.entity.RecoveryServe; import com.ruoyi.user.entity.UserCollect; +import com.ruoyi.user.entity.UserRecipient; import com.ruoyi.user.service.RecoveryClassifyService; import com.ruoyi.user.service.RecoveryServeService; import com.ruoyi.user.service.UserCollectService; +import com.ruoyi.user.service.UserRecipientService; +import com.ruoyi.user.vo.ServeDetailVO; import com.ruoyi.user.vo.ServeListVO; import com.ruoyi.user.vo.UserServeTypeVO; import io.swagger.annotations.Api; @@ -49,6 +52,8 @@ private UserCollectService collectService; @Resource private TokenService tokenService; + @Resource + private UserRecipientService userRecipientService; /** * 获取服务列表 @@ -68,7 +73,7 @@ List<RecoveryClassify> serveList = recoveryClassifyService.lambdaQuery() .eq(RecoveryClassify::getIsDelete, 0) .eq(RecoveryClassify::getSupClassify, serveType) - .orderByAsc(RecoveryClassify::getSort) + .orderByDesc(RecoveryClassify::getSort) .orderByDesc(RecoveryClassify::getCreateTime).list(); List<UserServeTypeVO> list = new ArrayList<>(); for (RecoveryClassify classify : serveList) { @@ -89,7 +94,7 @@ Page<RecoveryServe> page = recoveryServeService.lambdaQuery() .eq(RecoveryServe::getClassifyId, id) .eq(RecoveryServe::getIsDelete, 0) - .orderByAsc(RecoveryServe::getSort) + .orderByDesc(RecoveryServe::getSort) .orderByDesc(RecoveryServe::getCreateTime).page(Page.of(pageNum, pageSize)); return R.ok(page); } @@ -111,12 +116,17 @@ @ApiImplicitParams({ @ApiImplicitParam(value = "服务id", name = "serveId", dataType = "String", required = true) }) - public R<RecoveryServe> serveDetail(@RequestParam String serveId) { + public R<ServeDetailVO> serveDetail(@RequestParam String serveId) { + LoginUserInfo loginUser = tokenService.getLoginUserByUser(); + if (null == loginUser) { + return R.loginExpire("登录失效!"); + } RecoveryServe recoveryServe = recoveryServeService.lambdaQuery().eq(RecoveryServe::getId, serveId) - .eq(RecoveryServe::getIsDelete, 0).orderByAsc(RecoveryServe::getSort).one(); + .eq(RecoveryServe::getIsDelete, 0).one(); // 用户是否收藏 UserCollect one = collectService.lambdaQuery() .eq(UserCollect::getServeId, serveId) + .eq(UserCollect::getUserId, loginUser.getUserid()) .eq(UserCollect::getIsDelete, 0).one(); if (null != one) { recoveryServe.setIsCollect(Boolean.TRUE); @@ -126,14 +136,18 @@ // 获取服务分类 Integer classifyId = recoveryServe.getClassifyId(); RecoveryClassify classify = recoveryClassifyService.lambdaQuery() - .eq(RecoveryClassify::getId, classifyId) - .eq(RecoveryClassify::getIsDelete, 0).one(); + .eq(RecoveryClassify::getId, classifyId).one(); if (classify.getSupClassify().equals(Constants.TRADE_IN)) { recoveryServe.setType(Constants.ZERO); } else { recoveryServe.setType(Constants.ONE); } - return R.ok(recoveryServe); + // 获取用户默认收货地址 + UserRecipient userRecipient = userRecipientService.lambdaQuery() + .eq(UserRecipient::getIsDefault, Constants.ONE) + .eq(UserRecipient::getUserId, loginUser.getUserid()) + .eq(UserRecipient::getIsDelete, Constants.ZERO).one(); + return R.ok(new ServeDetailVO(recoveryServe, userRecipient)); } /** diff --git a/ruoyi-service/ruoyi-user/src/main/java/com/ruoyi/user/controller/UserController.java b/ruoyi-service/ruoyi-user/src/main/java/com/ruoyi/user/controller/UserController.java index 866cb3e..7d0b568 100644 --- a/ruoyi-service/ruoyi-user/src/main/java/com/ruoyi/user/controller/UserController.java +++ b/ruoyi-service/ruoyi-user/src/main/java/com/ruoyi/user/controller/UserController.java @@ -24,6 +24,7 @@ import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiOperation; +import org.springframework.beans.factory.annotation.Value; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; @@ -58,6 +59,12 @@ private RecoveryClassifyService recoveryClassifyService; @Resource private RecoveryServeService recoveryServeService; + + /** + * 用户端默认头像 + */ + @Value("${default.profilePicture}") + private String profilePicture; /** * 解密用户敏感数据 @@ -128,6 +135,7 @@ // 随机编号 user.setUserNo(String.format(Constants.USER_NO_PRE, RandomUtil.randomNumbers(Constants.EIGHT))); user.setState(Constants.ONE); + user.setProfilePicture(profilePicture); user.setNickname(String.format(Constants.USER_NO_PRE, StringUtils.getCharAndNum(Constants.SIX))); user.setPhone(phone); user.setCity(loginPhoneRequest.getCity()); @@ -239,7 +247,8 @@ @ApiOperation(value = "首页回收分类推荐", tags = {"用户端-首页"}) public R<List<RecoveryClassify>> recommend() { return R.ok(recoveryClassifyService.lambdaQuery().eq(RecoveryClassify::getIsRecommend, Constants.ONE) - .eq(RecoveryClassify::getIsDelete, 0).orderByAsc(RecoveryClassify::getSort).list()); + .eq(RecoveryClassify::getIsDelete, 0).orderByDesc(RecoveryClassify::getSort) + .orderByDesc(RecoveryClassify::getCreateTime).list()); } /** @@ -253,10 +262,10 @@ public R<List<RecoveryServe>> recoverySearch(@RequestParam String keyword) { LambdaQueryChainWrapper<RecoveryServe> wrapper = recoveryServeService.lambdaQuery() .eq(RecoveryServe::getIsDelete, 0) - .orderByAsc(RecoveryServe::getSort); + .orderByDesc(RecoveryServe::getSort); wrapper = null != keyword && !"".equals(keyword.trim()) ? wrapper.like(RecoveryServe::getServeName, keyword) : wrapper; - List<RecoveryServe> serveList = wrapper.list(); + List<RecoveryServe> serveList = wrapper.orderByDesc(RecoveryServe::getCreateTime).list(); for (RecoveryServe recoveryServe : serveList) { RecoveryClassify classify = recoveryClassifyService.lambdaQuery() .eq(RecoveryClassify::getId, recoveryServe.getClassifyId()).one(); diff --git a/ruoyi-service/ruoyi-user/src/main/java/com/ruoyi/user/entity/RecoveryServePrice.java b/ruoyi-service/ruoyi-user/src/main/java/com/ruoyi/user/entity/RecoveryServePrice.java index 6cf94d5..6f0cc75 100644 --- a/ruoyi-service/ruoyi-user/src/main/java/com/ruoyi/user/entity/RecoveryServePrice.java +++ b/ruoyi-service/ruoyi-user/src/main/java/com/ruoyi/user/entity/RecoveryServePrice.java @@ -41,4 +41,8 @@ @TableField("city") private String city; + @ApiModelProperty("对应城市code") + @TableField("city_code") + private String cityCode; + } diff --git a/ruoyi-service/ruoyi-user/src/main/java/com/ruoyi/user/entity/UserRecipient.java b/ruoyi-service/ruoyi-user/src/main/java/com/ruoyi/user/entity/UserRecipient.java index ba8900d..2eb83d4 100644 --- a/ruoyi-service/ruoyi-user/src/main/java/com/ruoyi/user/entity/UserRecipient.java +++ b/ruoyi-service/ruoyi-user/src/main/java/com/ruoyi/user/entity/UserRecipient.java @@ -55,6 +55,14 @@ @TableField("isDefault") private Integer isDefault; + @ApiModelProperty("城市") + @TableField("city") + private String city; + + @ApiModelProperty("城市code") + @TableField("city_code") + private String cityCode; + @ApiModelProperty("经度") @TableField("longitude") private Double longitude; diff --git a/ruoyi-service/ruoyi-user/src/main/java/com/ruoyi/user/request/OrderRequest.java b/ruoyi-service/ruoyi-user/src/main/java/com/ruoyi/user/request/OrderRequest.java index 1eb1393..222f6e9 100644 --- a/ruoyi-service/ruoyi-user/src/main/java/com/ruoyi/user/request/OrderRequest.java +++ b/ruoyi-service/ruoyi-user/src/main/java/com/ruoyi/user/request/OrderRequest.java @@ -16,6 +16,12 @@ @ApiModel(value = "OrderRequest对象", description = "用户下单请求参数对象") public class OrderRequest { + @ApiModelProperty("下单城市") + private String city; + + @ApiModelProperty("下单城市code") + private String cityCode; + @ApiModelProperty("订单编号") private String orderNumber; diff --git a/ruoyi-service/ruoyi-user/src/main/java/com/ruoyi/user/service/impl/OrderServiceImpl.java b/ruoyi-service/ruoyi-user/src/main/java/com/ruoyi/user/service/impl/OrderServiceImpl.java index e2bbacd..61b34c1 100644 --- a/ruoyi-service/ruoyi-user/src/main/java/com/ruoyi/user/service/impl/OrderServiceImpl.java +++ b/ruoyi-service/ruoyi-user/src/main/java/com/ruoyi/user/service/impl/OrderServiceImpl.java @@ -2,16 +2,19 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.ruoyi.admin.api.entity.Prize; +import com.ruoyi.common.core.constant.Constants; import com.ruoyi.common.core.exception.GlobalException; import com.ruoyi.common.core.utils.SnowflakeIdWorker; import com.ruoyi.order.api.entity.UserOrderRequest; import com.ruoyi.order.api.feignClient.OrderClient; import com.ruoyi.user.entity.Order; import com.ruoyi.user.entity.RecoveryServe; +import com.ruoyi.user.entity.RecoveryServePrice; import com.ruoyi.user.entity.UserRecipient; import com.ruoyi.user.mapper.OrderMapper; import com.ruoyi.user.request.OrderRequest; import com.ruoyi.user.service.OrderService; +import com.ruoyi.user.service.RecoveryServePriceService; import com.ruoyi.user.service.RecoveryServeService; import com.ruoyi.user.service.UserRecipientService; import org.springframework.stereotype.Service; @@ -38,6 +41,8 @@ private RecoveryServeService recoveryServeService; @Resource private OrderClient orderClient; + @Resource + private RecoveryServePriceService servePriceService; /** * 雪花算法类 @@ -84,6 +89,10 @@ if (null == recoveryServe || null == userRecipient) { throw new GlobalException("下单失败,预约服务信息或收货地址信息异常!"); } + String address = userRecipient.getAddress(); + if (address.contains(Constants.PROVINCE) && address.contains(Constants.MARKET)) { + + } UserOrderRequest userOrderRequest = new UserOrderRequest(); userOrderRequest.setOrderNumber(orderRequest.getOrderNumber()); userOrderRequest.setServeId(orderRequest.getServeId()); @@ -112,7 +121,10 @@ // 下单相关信息 RecoveryServe recoveryServe = recoveryServeService.lambdaQuery().eq(RecoveryServe::getId, serveId) .eq(RecoveryServe::getIsDelete, 0).one(); - + RecoveryServePrice price = servePriceService.lambdaQuery() + .eq(RecoveryServePrice::getRecoveryServeId, serveId) + .eq(RecoveryServePrice::getCity, orderRequest.getCity()) + .eq(RecoveryServePrice::getIsDelete, 0).one(); if (null == recoveryServe) { throw new GlobalException("下单失败,预约服务信息或收货地址信息异常!"); } @@ -135,7 +147,12 @@ userOrderRequest.setLongitude(orderRequest.getLongitude()); userOrderRequest.setLatitude(orderRequest.getLatitude()); userOrderRequest.setSubsidy(orderRequest.getSubsidy()); - userOrderRequest.setDefaultPrice(recoveryServe.getDefaultPrice()); + // 城市回收价 + if (null == price) { + userOrderRequest.setDefaultPrice(recoveryServe.getDefaultPrice()); + } else { + userOrderRequest.setDefaultPrice(price.getRecoveryPrice()); + } userOrderRequest.setServeName(recoveryServe.getServeName()); userOrderRequest.setUserId(userid); return orderClient.orderEstimate(userOrderRequest).getData(); diff --git a/ruoyi-service/ruoyi-user/src/main/java/com/ruoyi/user/service/impl/RegionServiceImpl.java b/ruoyi-service/ruoyi-user/src/main/java/com/ruoyi/user/service/impl/RegionServiceImpl.java index 611de69..2fc2b4a 100644 --- a/ruoyi-service/ruoyi-user/src/main/java/com/ruoyi/user/service/impl/RegionServiceImpl.java +++ b/ruoyi-service/ruoyi-user/src/main/java/com/ruoyi/user/service/impl/RegionServiceImpl.java @@ -80,7 +80,7 @@ for (Region region : reginList) { String firstLetter = getFullSpell(region.getName()).substring(0, 1); if (letter.equals(firstLetter)) { - RegionVo regionVo = new RegionVo(region.getName(), region.getCityCode()); + RegionVo regionVo = new RegionVo(region.getName(), region.getCode()); regionVos.add(regionVo); } map.put(letter, regionVos); diff --git a/ruoyi-service/ruoyi-user/src/main/java/com/ruoyi/user/service/impl/UserServiceImpl.java b/ruoyi-service/ruoyi-user/src/main/java/com/ruoyi/user/service/impl/UserServiceImpl.java index a1cf658..1817cf9 100644 --- a/ruoyi-service/ruoyi-user/src/main/java/com/ruoyi/user/service/impl/UserServiceImpl.java +++ b/ruoyi-service/ruoyi-user/src/main/java/com/ruoyi/user/service/impl/UserServiceImpl.java @@ -1,7 +1,6 @@ package com.ruoyi.user.service.impl; import cn.binarywang.wx.miniapp.api.WxMaService; -import cn.binarywang.wx.miniapp.api.WxMaUserService; import cn.binarywang.wx.miniapp.bean.WxMaJscode2SessionResult; import cn.binarywang.wx.miniapp.bean.WxMaPhoneNumberInfo; import cn.hutool.core.util.RandomUtil; @@ -37,8 +36,6 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements UserService { @Resource - private WxMaUserService wxMaUserService; - @Resource private TokenService tokenService; @Resource private WxMaService wxMaService; @@ -49,7 +46,8 @@ @Value("${wx.appSecret}") private String appSecret; - private final String BASE_URL = "https://api.weixin.qq.com/sns/oauth2/access_token?appid=%s&secret=%s&code=%s&grant_type=authorization_code"; + @Value("${default.profilePicture}") + private String profilePicture; @Override public R<String> decodeOpenid(HttpServletResponse response, String code) { @@ -109,6 +107,7 @@ user = new User(); user.setUserNo(String.format(Constants.USER_NO_PRE, RandomUtil.randomNumbers(Constants.EIGHT))); user.setState(Constants.ONE); + user.setProfilePicture(profilePicture); user.setNickname(String.format(Constants.USER_NO_PRE, StringUtils.getCharAndNum(Constants.SIX))); user.setState(Constants.ONE); user.setOpenId(openid); @@ -134,27 +133,5 @@ return null; } - - public JSONObject getPhone(String code) { - // 授权(必填) - String grantType = "client_credential"; - // 向微信服务器 使用登录凭证 code 获取 session_key 和 openid - // 请求参数 - String params2 = "appid=" + appId + "&secret=" + appSecret + "&grant_type=" + grantType; - // 发送请求 - String sr2 = com.ruoyi.user.vx.utils.HttpRequest.sendGet("https://api.weixin.qq.com/cgi-bin/token", params2); - // 解析相应内容(转换成json对象) - JSONObject json2 = JSONObject.parseObject(sr2); - String accessToken = json2.getString("access_token"); - //使用获取到的token和接受到的code像微信获取手机号 - JSONObject jsonObject = new JSONObject(); - jsonObject.put("code", code); - String url = ("https://api.weixin.qq.com/wxa/business/getuserphonenumber?access_token=" + accessToken); - String sr3 = com.ruoyi.user.vx.utils.HttpRequest.sendPostNew(url, jsonObject); - JSONObject json = JSONObject.parseObject(sr3); - JSONObject phoneInfo = json.getJSONObject("phone_info"); -// return phoneInfo.getString("phoneNumber"); - return phoneInfo; - } } diff --git a/ruoyi-service/ruoyi-user/src/main/java/com/ruoyi/user/vo/OrderDetailVO.java b/ruoyi-service/ruoyi-user/src/main/java/com/ruoyi/user/vo/OrderDetailVO.java index 92e824d..2c769a1 100644 --- a/ruoyi-service/ruoyi-user/src/main/java/com/ruoyi/user/vo/OrderDetailVO.java +++ b/ruoyi-service/ruoyi-user/src/main/java/com/ruoyi/user/vo/OrderDetailVO.java @@ -73,6 +73,9 @@ @ApiModelProperty("家电照片") private String photo; + @ApiModelProperty("是否评价(0:未评价,1:已评价)") + private Integer isEvaluate; + public OrderDetailVO(Order order) { this.orderId = order.getId(); this.orderNumber = order.getOrderNumber(); @@ -91,5 +94,6 @@ this.completeTime = order.getCompleteTime(); this.subsidy = order.getSubsidy(); this.address = order.getAddress(); + this.isEvaluate = order.getIsEvaluate(); } } diff --git a/ruoyi-service/ruoyi-user/src/main/java/com/ruoyi/user/vo/ServeDetailVO.java b/ruoyi-service/ruoyi-user/src/main/java/com/ruoyi/user/vo/ServeDetailVO.java new file mode 100644 index 0000000..25137fa --- /dev/null +++ b/ruoyi-service/ruoyi-user/src/main/java/com/ruoyi/user/vo/ServeDetailVO.java @@ -0,0 +1,29 @@ +package com.ruoyi.user.vo; + +import com.ruoyi.user.entity.RecoveryServe; +import com.ruoyi.user.entity.UserRecipient; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @author HJL + * @version 1.0 + * @since 2024-07-24 11:49 + */ +@Data +public class ServeDetailVO { + + @ApiModelProperty("服务详情") + private RecoveryServe serve; + + @ApiModelProperty("默认收货地址") + private UserRecipient recipient; + + public ServeDetailVO() { + } + + public ServeDetailVO(RecoveryServe serve, UserRecipient recipient) { + this.serve = serve; + this.recipient = recipient; + } +} diff --git a/ruoyi-service/ruoyi-user/src/main/resources/mapper/user/RecoveryServeMapper.xml b/ruoyi-service/ruoyi-user/src/main/resources/mapper/user/RecoveryServeMapper.xml index 9b107d5..a95a725 100644 --- a/ruoyi-service/ruoyi-user/src/main/resources/mapper/user/RecoveryServeMapper.xml +++ b/ruoyi-service/ruoyi-user/src/main/resources/mapper/user/RecoveryServeMapper.xml @@ -39,6 +39,6 @@ left join sys_recovery_classify c on s.classify_id = c.id where s.is_delete = 0 and c.is_delete = 0 - order by c.sort + order by c.sort desc, c.createTime desc </select> </mapper> diff --git a/ruoyi-service/ruoyi-worker/src/main/java/com/ruoyi/worker/controller/MasterWorkerController.java b/ruoyi-service/ruoyi-worker/src/main/java/com/ruoyi/worker/controller/MasterWorkerController.java index 050ff5c..0fc97fd 100644 --- a/ruoyi-service/ruoyi-worker/src/main/java/com/ruoyi/worker/controller/MasterWorkerController.java +++ b/ruoyi-service/ruoyi-worker/src/main/java/com/ruoyi/worker/controller/MasterWorkerController.java @@ -89,7 +89,6 @@ if (Constants.ZERO.equals(process.getState())) { return R.fail("入驻申请暂未审核通过,请耐心等待!"); } else if (Constants.TWO.equals(process.getState())) { -// return R.fail("入驻申请已驳回,请重新提交入驻申请!"); return R.fail("当前手机号未注册!"); } else { return R.registered("当前账号未提交入驻申请,无法登录!"); @@ -185,7 +184,6 @@ if (Constants.ZERO.equals(process.getState())) { return R.fail("入驻申请暂未审核通过,请耐心等待!"); } else if (Constants.TWO.equals(process.getState())) { -// return R.fail("入驻申请已驳回,请重新提交入驻申请!"); return R.fail("当前手机号未注册!"); } else { return R.registered("当前账号未提交入驻申请,无法登录!"); diff --git a/ruoyi-service/ruoyi-worker/src/main/java/com/ruoyi/worker/controller/OrderController.java b/ruoyi-service/ruoyi-worker/src/main/java/com/ruoyi/worker/controller/OrderController.java index 1e3a350..74acf1c 100644 --- a/ruoyi-service/ruoyi-worker/src/main/java/com/ruoyi/worker/controller/OrderController.java +++ b/ruoyi-service/ruoyi-worker/src/main/java/com/ruoyi/worker/controller/OrderController.java @@ -18,7 +18,7 @@ import com.ruoyi.system.api.model.LoginUserInfo; import com.ruoyi.worker.entity.MasterWorker; import com.ruoyi.worker.entity.RecoveryServe; -import com.ruoyi.worker.entity.ServeCoordinate; +import com.ruoyi.worker.vo.ServeCoordinate; import com.ruoyi.worker.service.MasterWorkerService; import com.ruoyi.worker.service.RecoveryServeService; import io.swagger.annotations.Api; @@ -97,6 +97,7 @@ mw -> Optional.ofNullable(mw.getCover()).orElse(""))); for (Order order : orderList) { order.setCover(map.get(order.getServeId())); + order.setReservationAddress(order.getReservationAddress() + order.getAddress()); } } return R.ok(dataList); diff --git a/ruoyi-service/ruoyi-worker/src/main/java/com/ruoyi/worker/entity/Evaluate.java b/ruoyi-service/ruoyi-worker/src/main/java/com/ruoyi/worker/entity/Evaluate.java deleted file mode 100644 index d5ed75c..0000000 --- a/ruoyi-service/ruoyi-worker/src/main/java/com/ruoyi/worker/entity/Evaluate.java +++ /dev/null @@ -1,75 +0,0 @@ -package com.ruoyi.worker.entity; - -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.fasterxml.jackson.annotation.JsonFormat; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import lombok.Getter; -import lombok.Setter; - -import java.math.BigDecimal; -import java.util.Date; - -/** - * <p> - * 用户评价表 - * </p> - * - * @author hjl - * @since 2024-06-06 - */ -@Getter -@Setter -@TableName("t_evaluate") -@ApiModel(value = "Evaluate对象", description = "用户评价表") -public class Evaluate { - - @TableId(value = "id",type = IdType.AUTO) - private Integer id; - - @ApiModelProperty("用户id") - @TableField("user_id") - private Integer userId; - - @ApiModelProperty("用户手机号") - @TableField("user_phone") - private String userPhone; - - @ApiModelProperty("订单id") - @TableField("order_id") - private String orderId; - - @ApiModelProperty("评价内容") - @TableField("content") - private String content; - - @ApiModelProperty("评价师傅id") - @TableField("worker_id") - private Integer workerId; - - @ApiModelProperty("评价星级") - @TableField("star_rating") - private BigDecimal starRating; - - @TableField("createBy") - private String createBy; - - @TableField("updateBy") - private String updateBy; - - @TableField("createTime") - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private Date createTime; - - @TableField("updateTime") - private Date updateTime; - - @ApiModelProperty("是否删除 0未删除;1已删除") - @TableField("is_delete") - private Integer isDelete; - - -} diff --git a/ruoyi-service/ruoyi-worker/src/main/java/com/ruoyi/worker/mapper/EvaluateMapper.java b/ruoyi-service/ruoyi-worker/src/main/java/com/ruoyi/worker/mapper/EvaluateMapper.java deleted file mode 100644 index 9d30fd9..0000000 --- a/ruoyi-service/ruoyi-worker/src/main/java/com/ruoyi/worker/mapper/EvaluateMapper.java +++ /dev/null @@ -1,18 +0,0 @@ -package com.ruoyi.worker.mapper; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.ruoyi.worker.entity.Evaluate; -import org.apache.ibatis.annotations.Mapper; - -/** - * <p> - * 用户评价表 Mapper 接口 - * </p> - * - * @author hjl - * @since 2024-06-06 - */ -@Mapper -public interface EvaluateMapper extends BaseMapper<Evaluate> { - -} diff --git a/ruoyi-service/ruoyi-worker/src/main/java/com/ruoyi/worker/service/EvaluateService.java b/ruoyi-service/ruoyi-worker/src/main/java/com/ruoyi/worker/service/EvaluateService.java deleted file mode 100644 index 1607c3c..0000000 --- a/ruoyi-service/ruoyi-worker/src/main/java/com/ruoyi/worker/service/EvaluateService.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.ruoyi.worker.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.ruoyi.worker.entity.Evaluate; - -/** - * <p> - * 用户评价表 服务类 - * </p> - * - * @author hjl - * @since 2024-06-06 - */ -public interface EvaluateService extends IService<Evaluate> { - -} diff --git a/ruoyi-service/ruoyi-worker/src/main/java/com/ruoyi/worker/service/impl/EvaluateServiceImpl.java b/ruoyi-service/ruoyi-worker/src/main/java/com/ruoyi/worker/service/impl/EvaluateServiceImpl.java deleted file mode 100644 index d25bd41..0000000 --- a/ruoyi-service/ruoyi-worker/src/main/java/com/ruoyi/worker/service/impl/EvaluateServiceImpl.java +++ /dev/null @@ -1,20 +0,0 @@ -package com.ruoyi.worker.service.impl; - -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.ruoyi.worker.entity.Evaluate; -import com.ruoyi.worker.mapper.EvaluateMapper; -import com.ruoyi.worker.service.EvaluateService; -import org.springframework.stereotype.Service; - -/** - * <p> - * 用户评价表 服务实现类 - * </p> - * - * @author hjl - * @since 2024-06-06 - */ -@Service -public class EvaluateServiceImpl extends ServiceImpl<EvaluateMapper, Evaluate> implements EvaluateService { - -} diff --git a/ruoyi-service/ruoyi-worker/src/main/java/com/ruoyi/worker/service/impl/MasterWorkerServiceImpl.java b/ruoyi-service/ruoyi-worker/src/main/java/com/ruoyi/worker/service/impl/MasterWorkerServiceImpl.java index e01981d..ab93803 100644 --- a/ruoyi-service/ruoyi-worker/src/main/java/com/ruoyi/worker/service/impl/MasterWorkerServiceImpl.java +++ b/ruoyi-service/ruoyi-worker/src/main/java/com/ruoyi/worker/service/impl/MasterWorkerServiceImpl.java @@ -75,7 +75,7 @@ orderListVO.setUserId(userid); orderListVO.setReservationName(order.getReservationName()); orderListVO.setReservationPhone(order.getReservationPhone()); - orderListVO.setReservationAddress(order.getReservationAddress()); + orderListVO.setReservationAddress(order.getReservationAddress() + order.getAddress()); orderListVO.setTime(order.getTime()); orderListVO.setServerId(order.getServerId()); orderListVO.setServerName(order.getServerName()); @@ -152,7 +152,7 @@ orderListVO.setUserId(userid); orderListVO.setReservationName(order.getReservationName()); orderListVO.setReservationPhone(order.getReservationPhone()); - orderListVO.setReservationAddress(order.getReservationAddress()); + orderListVO.setReservationAddress(order.getReservationAddress() + order.getAddress()); orderListVO.setTime(order.getTime()); orderListVO.setServerId(order.getServerId()); orderListVO.setServerName(order.getServerName()); diff --git a/ruoyi-service/ruoyi-worker/src/main/java/com/ruoyi/worker/vo/OrderListVO.java b/ruoyi-service/ruoyi-worker/src/main/java/com/ruoyi/worker/vo/OrderListVO.java index e6978c1..4253610 100644 --- a/ruoyi-service/ruoyi-worker/src/main/java/com/ruoyi/worker/vo/OrderListVO.java +++ b/ruoyi-service/ruoyi-worker/src/main/java/com/ruoyi/worker/vo/OrderListVO.java @@ -100,4 +100,5 @@ public String getOrderIdStr() { return String.valueOf(getOrderId()); } + } diff --git a/ruoyi-service/ruoyi-worker/src/main/java/com/ruoyi/worker/entity/ServeCoordinate.java b/ruoyi-service/ruoyi-worker/src/main/java/com/ruoyi/worker/vo/ServeCoordinate.java similarity index 91% rename from ruoyi-service/ruoyi-worker/src/main/java/com/ruoyi/worker/entity/ServeCoordinate.java rename to ruoyi-service/ruoyi-worker/src/main/java/com/ruoyi/worker/vo/ServeCoordinate.java index 8745a62..e25055d 100644 --- a/ruoyi-service/ruoyi-worker/src/main/java/com/ruoyi/worker/entity/ServeCoordinate.java +++ b/ruoyi-service/ruoyi-worker/src/main/java/com/ruoyi/worker/vo/ServeCoordinate.java @@ -1,4 +1,4 @@ -package com.ruoyi.worker.entity; +package com.ruoyi.worker.vo; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; @@ -16,7 +16,7 @@ @Getter @Setter @ApiModel(value = "ServeCoordinate对象", description = "师傅路线经纬度信息") -public class ServeCoordinate{ +public class ServeCoordinate { @ApiModelProperty("师傅id") private Integer workerId; diff --git a/ruoyi-service/ruoyi-worker/src/main/resources/mapper/worker/EvaluateMapper.xml b/ruoyi-service/ruoyi-worker/src/main/resources/mapper/worker/EvaluateMapper.xml deleted file mode 100644 index 692d207..0000000 --- a/ruoyi-service/ruoyi-worker/src/main/resources/mapper/worker/EvaluateMapper.xml +++ /dev/null @@ -1,19 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> -<mapper namespace="com.ruoyi.worker.mapper.EvaluateMapper"> - <!-- 通用查询映射结果 --> - <resultMap id="BaseResultMap" type="com.ruoyi.worker.entity.Evaluate"> - <id column="id" property="id"/> - <result column="user_id" property="userId"/> - <result column="user_phone" property="userPhone"/> - <result column="order_id" property="orderId"/> - <result column="content" property="content"/> - <result column="worker_id" property="workerId"/> - <result column="star_rating" property="starRating"/> - <result column="createBy" property="createBy"/> - <result column="updateBy" property="updateBy"/> - <result column="createTime" property="createTime"/> - <result column="updateTime" property="updateTime"/> - <result column="is_delete" property="isDelete"/> - </resultMap> -</mapper> diff --git a/sql/nacos_config.zip b/sql/nacos_config.zip deleted file mode 100644 index e9c9338..0000000 --- a/sql/nacos_config.zip +++ /dev/null Binary files differ diff --git a/sql/nacos_config_export_20240726114948.zip b/sql/nacos_config_export_20240726114948.zip new file mode 100644 index 0000000..689324a --- /dev/null +++ b/sql/nacos_config_export_20240726114948.zip Binary files differ diff --git a/sql/secondary_recovery.sql b/sql/secondary_recovery.sql index 6be4af2..237d974 100644 --- a/sql/secondary_recovery.sql +++ b/sql/secondary_recovery.sql @@ -11,7 +11,7 @@ Target Server Version : 80037 (8.0.37) File Encoding : 65001 - Date: 16/07/2024 09:28:34 + Date: 26/07/2024 11:50:32 */ SET NAMES utf8mb4; @@ -40,7 +40,7 @@ `c_schema` text CHARACTER SET utf8mb3 COLLATE utf8mb3_bin NULL, PRIMARY KEY (`id`) USING BTREE, UNIQUE INDEX `uk_configinfo_datagrouptenant`(`data_id` ASC, `group_id` ASC, `tenant_id` ASC) USING BTREE -) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb3 COLLATE = utf8mb3_bin COMMENT = 'config_info' ROW_FORMAT = Dynamic; +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_bin COMMENT = 'config_info' ROW_FORMAT = Dynamic; -- ---------------------------- -- Table structure for config_info_aggr @@ -57,7 +57,7 @@ `tenant_id` varchar(128) CHARACTER SET utf8mb3 COLLATE utf8mb3_bin NULL DEFAULT '' COMMENT '租户字段', PRIMARY KEY (`id`) USING BTREE, UNIQUE INDEX `uk_configinfoaggr_datagrouptenantdatum`(`data_id` ASC, `group_id` ASC, `tenant_id` ASC, `datum_id` ASC) USING BTREE -) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb3 COLLATE = utf8mb3_bin COMMENT = '增加租户字段' ROW_FORMAT = Dynamic; +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_bin COMMENT = '增加租户字段' ROW_FORMAT = Dynamic; -- ---------------------------- -- Table structure for config_info_beta @@ -78,7 +78,7 @@ `tenant_id` varchar(128) CHARACTER SET utf8mb3 COLLATE utf8mb3_bin NULL DEFAULT '' COMMENT '租户字段', PRIMARY KEY (`id`) USING BTREE, UNIQUE INDEX `uk_configinfobeta_datagrouptenant`(`data_id` ASC, `group_id` ASC, `tenant_id` ASC) USING BTREE -) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb3 COLLATE = utf8mb3_bin COMMENT = 'config_info_beta' ROW_FORMAT = Dynamic; +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_bin COMMENT = 'config_info_beta' ROW_FORMAT = Dynamic; -- ---------------------------- -- Table structure for config_info_tag @@ -99,7 +99,7 @@ `src_ip` varchar(50) CHARACTER SET utf8mb3 COLLATE utf8mb3_bin NULL DEFAULT NULL COMMENT 'source ip', PRIMARY KEY (`id`) USING BTREE, UNIQUE INDEX `uk_configinfotag_datagrouptenanttag`(`data_id` ASC, `group_id` ASC, `tenant_id` ASC, `tag_id` ASC) USING BTREE -) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb3 COLLATE = utf8mb3_bin COMMENT = 'config_info_tag' ROW_FORMAT = Dynamic; +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_bin COMMENT = 'config_info_tag' ROW_FORMAT = Dynamic; -- ---------------------------- -- Table structure for config_tags_relation @@ -116,7 +116,7 @@ PRIMARY KEY (`nid`) USING BTREE, UNIQUE INDEX `uk_configtagrelation_configidtag`(`id` ASC, `tag_name` ASC, `tag_type` ASC) USING BTREE, INDEX `idx_tenant_id`(`tenant_id` ASC) USING BTREE -) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb3 COLLATE = utf8mb3_bin COMMENT = 'config_tag_relation' ROW_FORMAT = Dynamic; +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_bin COMMENT = 'config_tag_relation' ROW_FORMAT = Dynamic; -- ---------------------------- -- Table structure for data_address @@ -368,7 +368,7 @@ `gmt_modified` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '修改时间', PRIMARY KEY (`id`) USING BTREE, UNIQUE INDEX `uk_group_id`(`group_id` ASC) USING BTREE -) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb3 COLLATE = utf8mb3_bin COMMENT = '集群、各Group容量信息表' ROW_FORMAT = Dynamic; +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_bin COMMENT = '集群、各Group容量信息表' ROW_FORMAT = Dynamic; -- ---------------------------- -- Table structure for his_config_info @@ -392,7 +392,7 @@ INDEX `idx_gmt_create`(`gmt_create` ASC) USING BTREE, INDEX `idx_gmt_modified`(`gmt_modified` ASC) USING BTREE, INDEX `idx_did`(`data_id` ASC) USING BTREE -) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb3 COLLATE = utf8mb3_bin COMMENT = '多租户改造' ROW_FORMAT = Dynamic; +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_bin COMMENT = '多租户改造' ROW_FORMAT = Dynamic; -- ---------------------------- -- Table structure for permissions @@ -512,8 +512,9 @@ `updateTime` datetime NULL DEFAULT NULL, `is_delete` int NULL DEFAULT NULL COMMENT '是否删除 0未删除;1已删除', `city_str` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '城市数组字符串', + `city_code` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '城市code', PRIMARY KEY (`id`) USING BTREE -) ENGINE = InnoDB AUTO_INCREMENT = 6 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '加盟商信息表' ROW_FORMAT = DYNAMIC; +) ENGINE = InnoDB AUTO_INCREMENT = 16 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '加盟商信息表' ROW_FORMAT = Dynamic; -- ---------------------------- -- Table structure for sys_logininfor @@ -529,7 +530,7 @@ PRIMARY KEY (`info_id`) USING BTREE, INDEX `idx_sys_logininfor_s`(`status` ASC) USING BTREE, INDEX `idx_sys_logininfor_lt`(`access_time` ASC) USING BTREE -) ENGINE = InnoDB AUTO_INCREMENT = 194 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '系统访问记录' ROW_FORMAT = Dynamic; +) ENGINE = InnoDB AUTO_INCREMENT = 218 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '系统访问记录' ROW_FORMAT = Dynamic; -- ---------------------------- -- Table structure for sys_master_worker @@ -557,8 +558,9 @@ `updateTime` datetime NULL DEFAULT NULL, `is_delete` int NULL DEFAULT NULL COMMENT '是否删除 0未删除;1已删除', `city_str` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '城市数组字符串', + `city_code` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '城市code', PRIMARY KEY (`id`) USING BTREE -) ENGINE = InnoDB AUTO_INCREMENT = 600563730 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '师傅信息表' ROW_FORMAT = DYNAMIC; +) ENGINE = InnoDB AUTO_INCREMENT = 600563739 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '师傅信息表' ROW_FORMAT = Dynamic; -- ---------------------------- -- Table structure for sys_menu @@ -658,7 +660,7 @@ `updateTime` datetime NULL DEFAULT NULL, `is_delete` int NULL DEFAULT NULL COMMENT '是否删除 0未删除;1已删除', PRIMARY KEY (`id`) USING BTREE -) ENGINE = InnoDB AUTO_INCREMENT = 20 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '回收分类表' ROW_FORMAT = DYNAMIC; +) ENGINE = InnoDB AUTO_INCREMENT = 42 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '回收分类表' ROW_FORMAT = Dynamic; -- ---------------------------- -- Table structure for sys_recovery_serve @@ -673,14 +675,14 @@ `default_price` decimal(10, 2) NULL DEFAULT NULL COMMENT '默认回收价', `sort` int NULL DEFAULT NULL COMMENT '排序权重', `cover` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '封面图片', - `rotate` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '轮播图片', + `rotate` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '轮播图片', `createBy` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL, `updateBy` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL, `createTime` datetime NULL DEFAULT NULL, `updateTime` datetime NULL DEFAULT NULL, `is_delete` int NULL DEFAULT NULL COMMENT '是否删除 0未删除;1已删除', PRIMARY KEY (`id`) USING BTREE -) ENGINE = InnoDB AUTO_INCREMENT = 11 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '回收服务列表' ROW_FORMAT = DYNAMIC; +) ENGINE = InnoDB AUTO_INCREMENT = 38 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '回收服务列表' ROW_FORMAT = Dynamic; -- ---------------------------- -- Table structure for sys_recovery_serve_price @@ -696,8 +698,9 @@ `createTime` datetime NULL DEFAULT NULL, `updateTime` datetime NULL DEFAULT NULL, `is_delete` int NULL DEFAULT NULL COMMENT '是否删除 0未删除;1已删除', + `city_code` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '城市code', PRIMARY KEY (`id`) USING BTREE -) ENGINE = InnoDB AUTO_INCREMENT = 12 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '回收服务对应回收价格及所在城市' ROW_FORMAT = DYNAMIC; +) ENGINE = InnoDB AUTO_INCREMENT = 20 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '回收服务对应回收价格及所在城市' ROW_FORMAT = Dynamic; -- ---------------------------- -- Table structure for sys_role @@ -848,6 +851,7 @@ `is_delete` int NULL DEFAULT NULL COMMENT '是否删除 0未删除;1已删除', `opinion` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '审批意见', `city_str` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '城市数组', + `city_code` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '城市code', PRIMARY KEY (`id`) USING BTREE ) ENGINE = InnoDB AUTO_INCREMENT = 7512401 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '师傅入驻审核表' ROW_FORMAT = DYNAMIC; @@ -877,6 +881,7 @@ `profile_picture` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '头像', `state` int NULL DEFAULT NULL COMMENT '账号状态 0未启用;1已启用', `city` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '注册城市', + `city_code` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '城市编码', `open_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '微信openId', `createBy` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL, `updateBy` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL, @@ -884,7 +889,7 @@ `updateTime` datetime NULL DEFAULT NULL, `is_delete` int NULL DEFAULT NULL COMMENT '是否删除 0未删除;1已删除', PRIMARY KEY (`id`) USING BTREE -) ENGINE = InnoDB AUTO_INCREMENT = 9 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '用户列表' ROW_FORMAT = DYNAMIC; +) ENGINE = InnoDB AUTO_INCREMENT = 28 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '用户列表' ROW_FORMAT = Dynamic; -- ---------------------------- -- Table structure for t_user_collect @@ -900,7 +905,7 @@ `updateTime` datetime NULL DEFAULT NULL, `is_delete` int NULL DEFAULT NULL COMMENT '是否删除 0未删除;1已删除', PRIMARY KEY (`id`) USING BTREE -) ENGINE = InnoDB AUTO_INCREMENT = 19 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '用户收藏表' ROW_FORMAT = Dynamic; +) ENGINE = InnoDB AUTO_INCREMENT = 17 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '用户收藏表' ROW_FORMAT = Dynamic; -- ---------------------------- -- Table structure for t_user_recipient @@ -921,9 +926,11 @@ `createTime` datetime NULL DEFAULT NULL, `updateTime` datetime NULL DEFAULT NULL, `is_delete` int NULL DEFAULT 0 COMMENT '是否删除 0否1是', - `name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '地图搜索地址名称', + `name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '地图搜索名称', + `city` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '所属城市', + `city_code` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '城市code', PRIMARY KEY (`id`) USING BTREE -) ENGINE = InnoDB AUTO_INCREMENT = 18 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '用户收货地址' ROW_FORMAT = Dynamic; +) ENGINE = InnoDB AUTO_INCREMENT = 14 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '用户收货地址' ROW_FORMAT = Dynamic; -- ---------------------------- -- Table structure for tenant_capacity @@ -942,7 +949,7 @@ `gmt_modified` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '修改时间', PRIMARY KEY (`id`) USING BTREE, UNIQUE INDEX `uk_tenant_id`(`tenant_id` ASC) USING BTREE -) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb3 COLLATE = utf8mb3_bin COMMENT = '租户容量信息表' ROW_FORMAT = Dynamic; +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_bin COMMENT = '租户容量信息表' ROW_FORMAT = Dynamic; -- ---------------------------- -- Table structure for tenant_info @@ -960,7 +967,7 @@ PRIMARY KEY (`id`) USING BTREE, UNIQUE INDEX `uk_tenant_info_kptenantid`(`kp` ASC, `tenant_id` ASC) USING BTREE, INDEX `idx_tenant_id`(`tenant_id` ASC) USING BTREE -) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb3 COLLATE = utf8mb3_bin COMMENT = 'tenant_info' ROW_FORMAT = Dynamic; +) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_bin COMMENT = 'tenant_info' ROW_FORMAT = Dynamic; -- ---------------------------- -- Table structure for users diff --git a/sql/secondary_recovery_order.sql b/sql/secondary_recovery_order.sql index b6bfa86..a716b52 100644 --- a/sql/secondary_recovery_order.sql +++ b/sql/secondary_recovery_order.sql @@ -11,11 +11,244 @@ Target Server Version : 80037 (8.0.37) File Encoding : 65001 - Date: 16/07/2024 09:28:41 + Date: 26/07/2024 11:50:39 */ SET NAMES utf8mb4; SET FOREIGN_KEY_CHECKS = 0; + +-- ---------------------------- +-- Table structure for data_address +-- ---------------------------- +DROP TABLE IF EXISTS `data_address`; +CREATE TABLE `data_address` ( + `id` bigint NOT NULL AUTO_INCREMENT, + `uid` bigint NULL DEFAULT 0 COMMENT '用户UID', + `type` tinyint(1) NULL DEFAULT 0 COMMENT '地址类型(0普通,1默认)', + `username` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '收货姓名', + `phone` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '收货手机', + `address` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '地址', + `latitude` decimal(20, 6) NULL DEFAULT NULL COMMENT '维度', + `longitude` decimal(20, 6) NULL DEFAULT NULL COMMENT '经度', + `xxdz` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '详细地址', + `create_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', + PRIMARY KEY (`id`) USING BTREE, + INDEX `idx_data_user_address_type`(`type` ASC) USING BTREE, + INDEX `idx_data_user_address_uuid`(`uid` ASC) USING BTREE +) ENGINE = InnoDB AUTO_INCREMENT = 42 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '用户地址' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for data_advantage +-- ---------------------------- +DROP TABLE IF EXISTS `data_advantage`; +CREATE TABLE `data_advantage` ( + `id` bigint NOT NULL AUTO_INCREMENT, + `name` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '消息名称', + `remark` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '内容', + `sort` bigint NULL DEFAULT 0 COMMENT '排序权重', + `create_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB AUTO_INCREMENT = 882 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '服务优势' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for data_cate +-- ---------------------------- +DROP TABLE IF EXISTS `data_cate`; +CREATE TABLE `data_cate` ( + `id` bigint NOT NULL AUTO_INCREMENT, + `pid` bigint NULL DEFAULT 0 COMMENT '上级分类', + `name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '分类名称', + `index_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '首页分类名称', + `cover` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '分类图标', + `remark` varchar(999) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '分类描述', + `remark_jj` varchar(999) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '分类简介', + `sort` bigint NULL DEFAULT 0 COMMENT '排序权重', + `index_status` tinyint NULL DEFAULT 0 COMMENT '是否首页推荐', + `create_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', + PRIMARY KEY (`id`) USING BTREE, + INDEX `idx_shop_goods_cate_sort`(`sort` ASC) USING BTREE +) ENGINE = InnoDB AUTO_INCREMENT = 26 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '回收分类' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for data_collect +-- ---------------------------- +DROP TABLE IF EXISTS `data_collect`; +CREATE TABLE `data_collect` ( + `id` bigint NOT NULL AUTO_INCREMENT, + `uid` bigint NULL DEFAULT 0 COMMENT '用户ID', + `pid` bigint NULL DEFAULT 0 COMMENT '产品ID', + `create_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB AUTO_INCREMENT = 7 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '收藏' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for data_draw +-- ---------------------------- +DROP TABLE IF EXISTS `data_draw`; +CREATE TABLE `data_draw` ( + `id` int NOT NULL AUTO_INCREMENT, + `name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '奖品名称', + `image` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '奖品图片', + `odds` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '中间几率', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB AUTO_INCREMENT = 19 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '奖品管理' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for data_goods +-- ---------------------------- +DROP TABLE IF EXISTS `data_goods`; +CREATE TABLE `data_goods` ( + `id` bigint NOT NULL AUTO_INCREMENT, + `name` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '服务名称', + `remark` varchar(999) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '服务描述', + `price` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '预估价格', + `pg_price` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '评估价格', + `pid` int NULL DEFAULT 0 COMMENT '上级分类', + `cateids` varchar(999) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '分类编号', + `cover` varchar(999) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '服务封面', + `slider` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL COMMENT '轮播图片', + `sort` bigint NULL DEFAULT 0 COMMENT '列表排序权重', + `create_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB AUTO_INCREMENT = 22 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '服务内容' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for data_message +-- ---------------------------- +DROP TABLE IF EXISTS `data_message`; +CREATE TABLE `data_message` ( + `id` bigint NOT NULL AUTO_INCREMENT, + `name` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '消息名称', + `content` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL COMMENT '消息内容', + `sort` bigint NULL DEFAULT 0 COMMENT '排序权重', + `create_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB AUTO_INCREMENT = 30 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '通知' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for data_order +-- ---------------------------- +DROP TABLE IF EXISTS `data_order`; +CREATE TABLE `data_order` ( + `id` bigint NOT NULL AUTO_INCREMENT, + `order_type` tinyint(1) NULL DEFAULT 0 COMMENT '0用户订单1指定订单', + `order_no` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '商品订单单号', + `product_id` bigint NULL DEFAULT 0 COMMENT '产品ID', + `uid` bigint NULL DEFAULT 0 COMMENT '用户ID', + `server_uid` bigint NULL DEFAULT 0 COMMENT '服务用户ID', + `price` decimal(20, 2) NULL DEFAULT 0.00 COMMENT '实际金额', + `bt_price` decimal(20, 2) NULL DEFAULT 0.00 COMMENT '分享补贴金额', + `username` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '0' COMMENT '用户姓名', + `phone` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '用户手机', + `province` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '地址-省份', + `city` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '地址-城市', + `area` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '地址-区域', + `address` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '收货地址', + `xx_address` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '详细地址', + `latitude` decimal(20, 6) NULL DEFAULT NULL COMMENT '维度', + `longitude` decimal(20, 6) NULL DEFAULT NULL COMMENT '经度', + `sm_time` timestamp NULL DEFAULT NULL COMMENT '上门时间', + `remark` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '服务备注', + `cancel_remark` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '取消订单描述', + `pj_level` int NULL DEFAULT 0 COMMENT '评价等级', + `pj_remark` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '评价描述', + `reason` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '修改时间原因', + `completeTime` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '完工时间', + `yhqrtp` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL COMMENT '用户确认图片', + `jjmptp` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL COMMENT '旧机铭牌图片', + `njtp` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL COMMENT '内机图片', + `wjhqttp` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL COMMENT '外机和其他图片', + `drawnum` int NOT NULL DEFAULT 0 COMMENT '抽奖次数', + `status` tinyint(1) NULL DEFAULT 1 COMMENT '订单流程状态(1待派单,2已派单,3已接单,4已完成,5已取消)', + `jd_status` tinyint(1) NULL DEFAULT 0 COMMENT '订单流程状态(0未接单1确定接单2取消接单)', + `zt_server_uid` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '再投师傅ID', + `pj_status` tinyint(1) NULL DEFAULT 0 COMMENT '评价状态0未评价1已评价', + `time_status` tinyint(1) NULL DEFAULT 0 COMMENT '时间状态', + `create_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT '订单创建时间', + `server_sendnum` int NOT NULL DEFAULT 0, + `user_sendnum` int NOT NULL DEFAULT 0, + `print` int NOT NULL DEFAULT 0, + PRIMARY KEY (`id`) USING BTREE, + INDEX `idx_shop_order_status`(`status` ASC) USING BTREE, + INDEX `idx_shop_order_orderno`(`order_no` ASC) USING BTREE, + INDEX `idx_shop_order_cancel_status`(`username` ASC) USING BTREE, + INDEX `idx_shop_order_deleted`(`remark` ASC) USING BTREE, + INDEX `idx_shop_order_mid`(`uid` ASC) USING BTREE +) ENGINE = InnoDB AUTO_INCREMENT = 10973 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '订单' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for data_question +-- ---------------------------- +DROP TABLE IF EXISTS `data_question`; +CREATE TABLE `data_question` ( + `id` bigint NOT NULL AUTO_INCREMENT, + `name` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '消息名称', + `remark` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '内容', + `sort` bigint NULL DEFAULT 0 COMMENT '排序权重', + `create_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB AUTO_INCREMENT = 12 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '常见问题' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for data_technician +-- ---------------------------- +DROP TABLE IF EXISTS `data_technician`; +CREATE TABLE `data_technician` ( + `id` bigint NOT NULL AUTO_INCREMENT, + `uid` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '用户ID', + `city` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '城市', + `username` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '用户姓名', + `phone` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '用户手机', + `car_type` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '车辆类型', + `car_number` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '车牌号码', + `idcard` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '身份证号码', + `idcard_z` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '身份证正面', + `idcard_f` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '身份证反面', + `xsz` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '行驶证', + `work_status` tinyint(1) NULL DEFAULT 1 COMMENT '工作状态(1正常,0休息)', + `status` tinyint(1) NULL DEFAULT 0 COMMENT '用户状态(0审核中,1同意,2驳回)', + `create_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT '注册时间', + PRIMARY KEY (`id`) USING BTREE, + INDEX `idx_data_user_status`(`work_status` ASC) USING BTREE, + INDEX `idx_data_user_openid1`(`uid` ASC) USING BTREE +) ENGINE = InnoDB AUTO_INCREMENT = 104 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '技师' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for data_transfer +-- ---------------------------- +DROP TABLE IF EXISTS `data_transfer`; +CREATE TABLE `data_transfer` ( + `id` bigint NOT NULL AUTO_INCREMENT, + `uid` bigint NULL DEFAULT 0 COMMENT '用户UID', + `code` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '提现单号', + `charge_amount` decimal(20, 2) NULL DEFAULT 0.00 COMMENT '提现手续费金额', + `amount` decimal(20, 2) NULL DEFAULT 0.00 COMMENT '提现转账金额', + `trade_no` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '交易单号', + `trade_time` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '打款时间', + `status` tinyint(1) NULL DEFAULT 0 COMMENT '提现状态(0待审核,1同意,2驳回,3打款中,4已打款,5已收款)', + `create_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', + PRIMARY KEY (`id`) USING BTREE, + INDEX `idx_data_user_transfer_code`(`code` ASC) USING BTREE, + INDEX `idx_data_user_transfer_status`(`status` ASC) USING BTREE, + INDEX `idx_data_user_transfer_uuid`(`uid` ASC) USING BTREE +) ENGINE = InnoDB AUTO_INCREMENT = 21 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '提现' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for data_user +-- ---------------------------- +DROP TABLE IF EXISTS `data_user`; +CREATE TABLE `data_user` ( + `id` bigint NOT NULL AUTO_INCREMENT, + `openid` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '小程序OPENID', + `avatar` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '用户头像', + `nickname` varchar(99) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '用户昵称', + `price` decimal(20, 2) NULL DEFAULT 0.00 COMMENT '用户金额', + `status` tinyint(1) NULL DEFAULT 0 COMMENT '是否技师(1是0否)', + `sh_status` tinyint(1) NULL DEFAULT 0 COMMENT '是否提交审核(1是0否)', + `create_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT '注册时间', + PRIMARY KEY (`id`) USING BTREE, + INDEX `idx_data_user_openid1`(`openid` ASC) USING BTREE +) ENGINE = InnoDB AUTO_INCREMENT = 1851 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '用户' ROW_FORMAT = Dynamic; -- ---------------------------- -- Table structure for sys_change_dispatch @@ -27,7 +260,7 @@ `worker_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '申请师傅姓名', `apply_reason` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '申请原因', `apply_time` datetime NULL DEFAULT NULL COMMENT '申请改派时间', - `state` int NULL DEFAULT NULL COMMENT '改派状态 (0:未改派 ;1:已改派 ;2:拒绝)', + `state` int NULL DEFAULT NULL COMMENT '改派状态 (0:未改派 ;1:已改派)', `createBy` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL, `updateBy` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL, `createTime` datetime NULL DEFAULT NULL, @@ -37,8 +270,8 @@ `order_number` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '订单编号', `user_id` int NULL DEFAULT NULL COMMENT '下单用户id', `user_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '下单用户名称', - PRIMARY KEY (`id`) USING BTREE -) ENGINE = InnoDB AUTO_INCREMENT = 69 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '改派管理' ROW_FORMAT = Dynamic; + `city_code` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '城市code' +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic; -- ---------------------------- -- Table structure for sys_serve_coordinate @@ -74,17 +307,7 @@ `updateTime` datetime NULL DEFAULT NULL, `is_delete` int NULL DEFAULT NULL COMMENT '是否删除 0未删除;1已删除', PRIMARY KEY (`id`) USING BTREE -) ENGINE = InnoDB AUTO_INCREMENT = 9 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '师傅服务记录' ROW_FORMAT = Dynamic; - --- ---------------------------- --- Table structure for sys_withdrawal_setting --- ---------------------------- -DROP TABLE IF EXISTS `sys_withdrawal_setting`; -CREATE TABLE `sys_withdrawal_setting` ( - `id` int NOT NULL AUTO_INCREMENT, - `enable_process` int NOT NULL COMMENT '是否开启审核(0:未开启,1:已开启)', - PRIMARY KEY (`id`) USING BTREE -) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '审核管理全局设置' ROW_FORMAT = Dynamic; +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '师傅服务记录' ROW_FORMAT = Dynamic; -- ---------------------------- -- Table structure for t_evaluate @@ -104,8 +327,8 @@ `createTime` datetime NULL DEFAULT NULL, `updateTime` datetime NULL DEFAULT NULL, `is_delete` int NULL DEFAULT NULL COMMENT '是否删除 0未删除;1已删除', - PRIMARY KEY (`id`) USING BTREE -) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '用户评价表' ROW_FORMAT = DYNAMIC; + `city_code` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '城市code' +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic; -- ---------------------------- -- Table structure for t_order @@ -130,7 +353,7 @@ `server_phone` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '服务人员手机号', `reservation_remark` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '预约备注(服务备注)', `order_money` decimal(10, 6) NULL DEFAULT NULL COMMENT '订单成交价(服务回收价 + 津贴)', - `state` int NULL DEFAULT NULL COMMENT '订单状态(0:待派单;1:待上门;2:待完工;3:已完结;4:已取消;5:已改派,6:待改派)', + `state` int NULL DEFAULT NULL COMMENT '订单状态(0:待派单;1:待上门;2:待完工;3:已完结;4:已取消;5:已改派)', `createBy` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL, `updateBy` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL, `createTime` datetime NULL DEFAULT NULL, @@ -147,10 +370,10 @@ `address` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '详细地址', `top_sort` int NULL DEFAULT NULL COMMENT '置顶顺序', `cancel_reason` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '订单取消原因', - `is_evaluate` int NULL DEFAULT NULL COMMENT '是否评价(0:未评价,1:已评价)', `is_reinvest` int NULL DEFAULT NULL COMMENT '是否为再投单 1:再投', - PRIMARY KEY (`id`) USING BTREE -) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '订单管理' ROW_FORMAT = DYNAMIC; + `is_evaluate` int NULL DEFAULT NULL COMMENT '是否评价(0:未评价,1:已评价)', + `city_code` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '城市code码' +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic; -- ---------------------------- -- Table structure for t_withdraw @@ -172,7 +395,8 @@ `updateTime` datetime NULL DEFAULT NULL, `is_delete` int NULL DEFAULT NULL COMMENT '是否删除 0未删除;1已删除', `order_id` bigint NULL DEFAULT NULL COMMENT '订单id', + `city_code` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '城市code', PRIMARY KEY (`id`) USING BTREE -) ENGINE = InnoDB AUTO_INCREMENT = 12 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '用户提现申请记录表' ROW_FORMAT = DYNAMIC; +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '用户提现申请记录表' ROW_FORMAT = DYNAMIC; SET FOREIGN_KEY_CHECKS = 1; -- Gitblit v1.7.1