From bf6b379d3ead5e7cb92379d7c7e66517fb288fa0 Mon Sep 17 00:00:00 2001 From: Lihx Date: Mon, 23 Sep 2024 18:10:56 +0800 Subject: [PATCH 01/15] =?UTF-8?q?=E5=B0=8F=E7=A8=8B=E5=BA=8F=E6=9F=A5?= =?UTF-8?q?=E8=AF=A2=E5=AE=A2=E6=9C=8D=E7=94=B5=E8=AF=9D=E5=8F=B7=E7=A0=81?= =?UTF-8?q?=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../admin/CustomerMainController.java | 31 +++++++++++++++++++ .../custom/vo/CustomerMainSaveReqVO.java | 4 +++ .../controller/UniShopConfigController.java | 22 +++++++++++++ .../app/mapper/UniShopConfigMapper.java | 11 +++++++ .../app/service/UniShopConfigService.java | 6 ++++ .../impl/UniShopConfigServiceImpl.java | 18 +++++++++++ .../mapper/app/UniShopConfigMapper.xml | 9 ++++++ 7 files changed, 101 insertions(+) create mode 100644 dl-module-repair/src/main/java/cn/iocoder/yudao/module/app/controller/UniShopConfigController.java create mode 100644 dl-module-repair/src/main/java/cn/iocoder/yudao/module/app/mapper/UniShopConfigMapper.java create mode 100644 dl-module-repair/src/main/java/cn/iocoder/yudao/module/app/service/UniShopConfigService.java create mode 100644 dl-module-repair/src/main/java/cn/iocoder/yudao/module/app/service/impl/UniShopConfigServiceImpl.java create mode 100644 dl-module-repair/src/main/resources/mapper/app/UniShopConfigMapper.xml diff --git a/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/controller/admin/CustomerMainController.java b/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/controller/admin/CustomerMainController.java index 1e53ee26..9cfdc8b9 100644 --- a/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/controller/admin/CustomerMainController.java +++ b/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/controller/admin/CustomerMainController.java @@ -1,5 +1,10 @@ package cn.iocoder.yudao.module.custom.controller.admin; +import cn.hutool.http.HttpRequest; +import cn.hutool.http.HttpResponse; +import cn.hutool.http.HttpUtil; +import cn.hutool.json.JSONObject; +import cn.hutool.json.JSONUtil; import cn.iocoder.yudao.framework.common.pojo.CommonResult; import cn.iocoder.yudao.module.custom.entity.CustomerMain; import cn.iocoder.yudao.module.custom.service.CustomerMainService; @@ -17,8 +22,11 @@ import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; +import javax.net.ssl.HttpsURLConnection; import javax.validation.Valid; +import java.net.HttpURLConnection; +import java.net.URL; import java.util.List; import static cn.iocoder.yudao.common.BaseConstants.*; @@ -171,4 +179,27 @@ public class CustomerMainController { busiLabelService.saveBusiLable(saveReqVO.getId(), TABLE_BASE_CUSTOMER_MAIN, saveReqVO.getLabelList()); return success(true); } + + /** + * 小程序客户注册 + * cusName,phoneNumber,birthday,sex,inviter + */ + @PostMapping("/addUniUser") + public CommonResult addUniUser(@Valid @RequestBody CustomerMainSaveReqVO saveReqVO) { + if(!saveReqVO.getCode().isEmpty()){ + String code = saveReqVO.getCode(); + JSONObject jsonObj = new JSONObject(); + String url = "https://api.weixin.qq.com/sns/oauth2/access_token?appid=APPID&secret=SECRET&code=" + +code+"&grant_type=authorization_code"; + String response = HttpRequest.get(url).execute().body(); + JSONObject json = JSONUtil.parseObj(response); + if (json.containsKey("access_token") && json.containsKey("openid")) { + String accessToken = json.getStr("access_token"); + String openid = json.getStr("openid"); + } + + } + return null; + } + } \ No newline at end of file diff --git a/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/vo/CustomerMainSaveReqVO.java b/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/vo/CustomerMainSaveReqVO.java index 1989cd30..007e71b3 100644 --- a/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/vo/CustomerMainSaveReqVO.java +++ b/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/vo/CustomerMainSaveReqVO.java @@ -19,4 +19,8 @@ public class CustomerMainSaveReqVO extends CustomerMain { /**标签信息*/ List labelList; + /** + * Code + */ + private String Code; } \ No newline at end of file diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/app/controller/UniShopConfigController.java b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/app/controller/UniShopConfigController.java new file mode 100644 index 00000000..26799651 --- /dev/null +++ b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/app/controller/UniShopConfigController.java @@ -0,0 +1,22 @@ +package cn.iocoder.yudao.module.app.controller; + +import cn.iocoder.yudao.framework.common.pojo.CommonResult; +import cn.iocoder.yudao.module.app.service.UniShopConfigService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +@RestController +@RequestMapping("/userClient/uniShopConfig") +public class UniShopConfigController { + + @Autowired + UniShopConfigService uniShopConfigService; + + @GetMapping("/getRepairTel") + public CommonResult getRepairTel() { + return CommonResult.success(uniShopConfigService.getRepairTel()); + } + +} diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/app/mapper/UniShopConfigMapper.java b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/app/mapper/UniShopConfigMapper.java new file mode 100644 index 00000000..5092a40a --- /dev/null +++ b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/app/mapper/UniShopConfigMapper.java @@ -0,0 +1,11 @@ +package cn.iocoder.yudao.module.app.mapper; + +import cn.iocoder.yudao.module.project.entity.RepairProject; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface UniShopConfigMapper { + + public String getRepairTel(); +} diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/app/service/UniShopConfigService.java b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/app/service/UniShopConfigService.java new file mode 100644 index 00000000..588b379e --- /dev/null +++ b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/app/service/UniShopConfigService.java @@ -0,0 +1,6 @@ +package cn.iocoder.yudao.module.app.service; + +public interface UniShopConfigService { + + public String getRepairTel(); +} diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/app/service/impl/UniShopConfigServiceImpl.java b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/app/service/impl/UniShopConfigServiceImpl.java new file mode 100644 index 00000000..a267d5fd --- /dev/null +++ b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/app/service/impl/UniShopConfigServiceImpl.java @@ -0,0 +1,18 @@ +package cn.iocoder.yudao.module.app.service.impl; + +import cn.iocoder.yudao.module.app.mapper.UniShopConfigMapper; +import cn.iocoder.yudao.module.app.service.UniShopConfigService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +@Service +public class UniShopConfigServiceImpl implements UniShopConfigService { + + + @Autowired + UniShopConfigMapper uniShopConfigMapper; + @Override + public String getRepairTel() { + return uniShopConfigMapper.getRepairTel(); + } +} diff --git a/dl-module-repair/src/main/resources/mapper/app/UniShopConfigMapper.xml b/dl-module-repair/src/main/resources/mapper/app/UniShopConfigMapper.xml new file mode 100644 index 00000000..301b3f84 --- /dev/null +++ b/dl-module-repair/src/main/resources/mapper/app/UniShopConfigMapper.xml @@ -0,0 +1,9 @@ + + + + + + + From 18cf45c52d51122c429599a37d65cae1e66c9459 Mon Sep 17 00:00:00 2001 From: xiao-fajia <1665375861@qq.com> Date: Mon, 23 Sep 2024 18:21:48 +0800 Subject: [PATCH 02/15] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mapper/baseType/BaseTypeMapper.xml | 2 +- .../app/order/admin/RepairOrderAPI.java | 74 ++++++++++++++++ .../module/app/tickets/admin/TicketsAPI.java | 41 +-------- .../project/mapper/RepairOrderInfoMapper.java | 8 ++ .../service/RepairOrderInfoService.java | 25 ++++++ .../impl/RepairOrderInfoServiceImpl.java | 57 ++++++++++++ .../project/vo/RepairOrderInfoRespVO.java | 6 ++ .../tickets/entity/DlRepairTickets.java | 9 -- .../service/DlRepairTicketsService.java | 9 -- .../impl/DlRepairTicketsServiceImpl.java | 86 ++++++++++++------- .../mapper/project/RepairOrderInfoMapper.xml | 20 +++++ .../mapper/tickets/DlRepairTicketsMapper.xml | 9 +- 12 files changed, 252 insertions(+), 94 deletions(-) create mode 100644 dl-module-repair/src/main/java/cn/iocoder/yudao/module/app/order/admin/RepairOrderAPI.java diff --git a/dl-module-base/src/main/resources/mapper/baseType/BaseTypeMapper.xml b/dl-module-base/src/main/resources/mapper/baseType/BaseTypeMapper.xml index d2a4bb63..6c33c9c3 100644 --- a/dl-module-base/src/main/resources/mapper/baseType/BaseTypeMapper.xml +++ b/dl-module-base/src/main/resources/mapper/baseType/BaseTypeMapper.xml @@ -42,7 +42,7 @@ and dbt.type = #{map.type} - + and dbt.corp_id = #{map.corpId} diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/app/order/admin/RepairOrderAPI.java b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/app/order/admin/RepairOrderAPI.java new file mode 100644 index 00000000..af4558b4 --- /dev/null +++ b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/app/order/admin/RepairOrderAPI.java @@ -0,0 +1,74 @@ +package cn.iocoder.yudao.module.app.order.admin; + +import cn.iocoder.yudao.framework.common.pojo.CommonResult; +import cn.iocoder.yudao.module.project.entity.RepairOrderInfo; +import cn.iocoder.yudao.module.project.service.RepairOrderInfoService; +import cn.iocoder.yudao.module.project.vo.RepairOrderInfoRespVO; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import io.swagger.v3.oas.annotations.Operation; +import org.springframework.context.annotation.Lazy; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; + +import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success; + +/** + * 维修订单API + * + * @author 小李 + * @date 17:20 2024/9/23 +**/ +@RestController +@RequestMapping("/api/repair/order") +public class RepairOrderAPI { + + @Resource + @Lazy + private RepairOrderInfoService repairOrderInfoService; + + /** + * 订单分页查询 + * + * @author 小李 + * @date 17:35 2024/9/23 + * @param respVO 查询对象 + * @param pageNo 页码 + * @param pageSize 条数 + **/ + @GetMapping("/page") + @Operation(summary = "订单分页查询") + public CommonResult getOrderPageByStatus(RepairOrderInfoRespVO respVO, + @RequestParam(value = "pageNo", defaultValue = "1")Integer pageNo, + @RequestParam(value = "pageSize", defaultValue = "10")Integer pageSize){ + Page page = new Page<>(pageNo, pageSize); + return success(repairOrderInfoService.getOrderPageByStatus(respVO, page)); + } + + /** + * 查询订单详情(包括工单) + * + * @author 小李 + * @date 17:43 2024/9/23 + * @param id 订单ID + **/ + @GetMapping("/get") + @Operation(summary = "查询订单详情") + public CommonResult getOrderById(@RequestParam(value = "id") String id){ + return success(repairOrderInfoService.getOrderById(id)); + } + + /** + * 评价订单 + * + * @author 小李 + * @date 17:50 2024/9/23 + * @param respVO 请求对象 + **/ + @PostMapping("/appraise") + @Operation(summary = "评价订单") + public CommonResult appraiseOrder(@RequestBody RepairOrderInfoRespVO respVO){ + repairOrderInfoService.appraiseOrder(respVO); + return CommonResult.ok(); + } +} diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/app/tickets/admin/TicketsAPI.java b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/app/tickets/admin/TicketsAPI.java index 94ed02a3..ccf7f855 100644 --- a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/app/tickets/admin/TicketsAPI.java +++ b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/app/tickets/admin/TicketsAPI.java @@ -1,13 +1,12 @@ package cn.iocoder.yudao.module.app.tickets.admin; import cn.iocoder.yudao.framework.common.pojo.CommonResult; -import cn.iocoder.yudao.module.tickets.entity.DlRepairTickets; import cn.iocoder.yudao.module.tickets.service.DlRepairTicketsService; -import cn.iocoder.yudao.module.tickets.vo.DlRepairTicketsReqVO; -import cn.iocoder.yudao.module.tickets.vo.DlRepairTicketsRespVO; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import io.swagger.v3.oas.annotations.Operation; -import org.springframework.web.bind.annotation.*; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.RestController; import javax.annotation.Resource; @@ -28,38 +27,6 @@ public class TicketsAPI { @Resource private DlRepairTicketsService dlRepairTicketsService; - /** - * 维修工单表 评价 - * - * @author 小李 - * @date 10:54 2024/9/23 - * @param repairTicketsRespVO 对象 - **/ - @PostMapping("/appraise") - @Operation(summary = "维修工单表 评价") - public CommonResult setAppraise(@RequestBody DlRepairTicketsRespVO repairTicketsRespVO){ - dlRepairTicketsService.setAppraise(repairTicketsRespVO); - return CommonResult.ok(); - } - - /** - * 维修工单表 按用户的id查 - * - * @author 小李 - * @date 11:37 2024/9/23 - * @param repairTicketsReqVO 查询对象 - * @param pageNo 页码 - * @param pageSize 条数 - **/ - @GetMapping("/page") - @Operation(summary = "维修工单表 按用户的id查") - public CommonResult getTicketsPageById(DlRepairTicketsReqVO repairTicketsReqVO, - @RequestParam(value = "pageNo", defaultValue = "1")Integer pageNo, - @RequestParam(value = "pageSize", defaultValue = "10")Integer pageSize){ - Page page = new Page<>(pageNo, pageSize); - return success(dlRepairTicketsService.getTicketsPage(repairTicketsReqVO, page)); - } - /** * 维修工单表 查看一个工单的详细信息 * diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/mapper/RepairOrderInfoMapper.java b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/mapper/RepairOrderInfoMapper.java index 51f5f77a..aafcb3fb 100644 --- a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/mapper/RepairOrderInfoMapper.java +++ b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/mapper/RepairOrderInfoMapper.java @@ -29,4 +29,12 @@ public interface RepairOrderInfoMapper extends BaseMapper { IPage queryListPage(@Param("entity") RepairOrderInfoPageReqVO entity, Page page); + /** + * 订单分页查询 + * + * @author 小李 + * @date 17:35 2024/9/23 + * @param respVO 查询对象 + **/ + IPage getOrderPageByStatus(@Param("map") RepairOrderInfoRespVO respVO, Page page); } \ No newline at end of file diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/service/RepairOrderInfoService.java b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/service/RepairOrderInfoService.java index 7f18e2d6..d0b193e1 100644 --- a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/service/RepairOrderInfoService.java +++ b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/service/RepairOrderInfoService.java @@ -60,5 +60,30 @@ public interface RepairOrderInfoService extends IService { **/ IPage queryListPage(RepairOrderInfoPageReqVO pageReqVO, Page page); + /** + * 订单分页查询 + * + * @author 小李 + * @date 17:35 2024/9/23 + * @param respVO 查询对象 + **/ + IPage getOrderPageByStatus(RepairOrderInfoRespVO respVO, Page page); + /** + * 查询订单详情(包括工单) + * + * @author 小李 + * @date 17:43 2024/9/23 + * @param id 订单ID + **/ + RepairOrderInfoRespVO getOrderById(String id); + + /** + * 评价订单 + * + * @author 小李 + * @date 17:50 2024/9/23 + * @param respVO 请求对象 + **/ + void appraiseOrder(RepairOrderInfoRespVO respVO); } \ No newline at end of file diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/service/impl/RepairOrderInfoServiceImpl.java b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/service/impl/RepairOrderInfoServiceImpl.java index 73501cb1..ab118ada 100644 --- a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/service/impl/RepairOrderInfoServiceImpl.java +++ b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/service/impl/RepairOrderInfoServiceImpl.java @@ -1,5 +1,6 @@ package cn.iocoder.yudao.module.project.service.impl; +import cn.hutool.core.util.ObjectUtil; import cn.iocoder.yudao.framework.common.pojo.PageResult; import cn.iocoder.yudao.framework.common.util.object.BeanUtils; import cn.iocoder.yudao.module.project.entity.RepairOrderInfo; @@ -8,13 +9,18 @@ import cn.iocoder.yudao.module.project.service.RepairOrderInfoService; import cn.iocoder.yudao.module.project.vo.RepairOrderInfoPageReqVO; import cn.iocoder.yudao.module.project.vo.RepairOrderInfoRespVO; import cn.iocoder.yudao.module.project.vo.RepairOrderInfoSaveReqVO; +import cn.iocoder.yudao.module.tickets.entity.DlRepairTickets; +import cn.iocoder.yudao.module.tickets.service.DlRepairTicketsService; +import cn.iocoder.yudao.module.tickets.vo.DlRepairTicketsRespVO; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.context.annotation.Lazy; import org.springframework.stereotype.Service; import org.springframework.validation.annotation.Validated; import javax.annotation.Resource; +import java.time.LocalDateTime; /** * 维修模块 订单 Service 实现类 @@ -28,6 +34,9 @@ public class RepairOrderInfoServiceImpl extends ServiceImpl getOrderPageByStatus(RepairOrderInfoRespVO respVO, Page page){ + return baseMapper.getOrderPageByStatus(respVO, page); + } + + /** + * 查询订单详情(包括工单) + * + * @author 小李 + * @date 17:43 2024/9/23 + * @param id 订单ID + **/ + @Override + public RepairOrderInfoRespVO getOrderById(String id){ + // 查订单信息 + RepairOrderInfo repairOrderInfo = baseMapper.selectById(id); + return BeanUtils.toBean(repairOrderInfo, RepairOrderInfoRespVO.class); + + } + + /** + * 评价订单 + * + * @author 小李 + * @date 17:50 2024/9/23 + * @param respVO 请求对象 + **/ + @Override + public void appraiseOrder(RepairOrderInfoRespVO respVO){ + // 没有评价内容就给默认评价内容 + if (ObjectUtil.isEmpty(respVO.getCommentDesc())){ + respVO.setCommentDesc("没有填写文本"); + } + // 没有评分就给默认评分 + if (ObjectUtil.isEmpty(respVO.getCommentStar())){ + respVO.setCommentStar(5); + } + respVO.setCommentTime(LocalDateTime.now()); + baseMapper.updateById(respVO); + } + } \ No newline at end of file diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/vo/RepairOrderInfoRespVO.java b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/vo/RepairOrderInfoRespVO.java index ec109163..93496159 100644 --- a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/vo/RepairOrderInfoRespVO.java +++ b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/vo/RepairOrderInfoRespVO.java @@ -1,6 +1,7 @@ package cn.iocoder.yudao.module.project.vo; import cn.iocoder.yudao.module.project.entity.RepairOrderInfo; +import cn.iocoder.yudao.module.tickets.vo.DlRepairTicketsRespVO; import io.swagger.v3.oas.annotations.media.Schema; import lombok.*; import java.util.*; @@ -14,5 +15,10 @@ import com.alibaba.excel.annotation.*; @ExcelIgnoreUnannotated public class RepairOrderInfoRespVO extends RepairOrderInfo { + /** 订单状态(工单的状态) */ + private String status; + + /** 工单信息(包含子表) */ + private DlRepairTicketsRespVO tickets; } \ No newline at end of file diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/entity/DlRepairTickets.java b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/entity/DlRepairTickets.java index 6728bc42..eca56066 100644 --- a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/entity/DlRepairTickets.java +++ b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/entity/DlRepairTickets.java @@ -175,13 +175,4 @@ public class DlRepairTickets extends TenantBaseDO { /** 工单进行状态 */ private String ticketsWorkStatus; - - /** 评价 */ - private String appraise; - - /** 是否已评价 */ - private String isAppraise; - - /** 评分 */ - private Integer appraiseScope; } diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/service/DlRepairTicketsService.java b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/service/DlRepairTicketsService.java index 76fa47c9..c863452f 100644 --- a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/service/DlRepairTicketsService.java +++ b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/service/DlRepairTicketsService.java @@ -59,13 +59,4 @@ public interface DlRepairTicketsService extends IService { * @param repairTicketsRespVO 工单 **/ void setTicketsPaid(DlRepairTicketsRespVO repairTicketsRespVO); - - /** - * 维修工单表 评价 - * - * @author 小李 - * @date 10:54 2024/9/23 - * @param repairTicketsRespVO 对象 - **/ - void setAppraise(DlRepairTicketsRespVO repairTicketsRespVO); } diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/service/impl/DlRepairTicketsServiceImpl.java b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/service/impl/DlRepairTicketsServiceImpl.java index 6550898c..a670d553 100644 --- a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/service/impl/DlRepairTicketsServiceImpl.java +++ b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/service/impl/DlRepairTicketsServiceImpl.java @@ -5,14 +5,22 @@ import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.util.ObjectUtil; import cn.iocoder.yudao.common.RepairErrorCodeConstants; import cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUtils; +import cn.iocoder.yudao.module.custom.service.CustomerMainService; +import cn.iocoder.yudao.module.custom.vo.CustomerMainRespVO; import cn.iocoder.yudao.module.other.entity.DlRepairOther; import cn.iocoder.yudao.module.other.service.DlRepairOtherService; +import cn.iocoder.yudao.module.project.entity.RepairOrderInfo; import cn.iocoder.yudao.module.project.entity.RepairProject; import cn.iocoder.yudao.module.project.entity.RepairWares; +import cn.iocoder.yudao.module.project.service.RepairOrderInfoService; import cn.iocoder.yudao.module.project.service.RepairProjectService; import cn.iocoder.yudao.module.project.service.RepairWaresService; +import cn.iocoder.yudao.module.project.vo.RepairOrderInfoSaveReqVO; import cn.iocoder.yudao.module.system.api.dept.DeptApi; import cn.iocoder.yudao.module.system.api.dept.dto.DeptRespDTO; +import cn.iocoder.yudao.module.system.api.dict.DictDataApi; +import cn.iocoder.yudao.module.system.api.dict.dto.DictDataRespDTO; +import cn.iocoder.yudao.module.system.api.user.AdminUserApi; import cn.iocoder.yudao.module.tickets.entity.DlRepairTickets; import cn.iocoder.yudao.module.tickets.entity.DlRepairTitem; import cn.iocoder.yudao.module.tickets.mapper.DlRepairTicketsMapper; @@ -26,12 +34,14 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.context.annotation.Lazy; import org.springframework.stereotype.Service; import javax.annotation.Resource; import java.math.BigDecimal; import java.util.List; +import java.util.Optional; import java.util.Set; import java.util.stream.Collectors; @@ -62,6 +72,16 @@ public class DlRepairTicketsServiceImpl extends ServiceImpl items = itemList.stream().map(item -> BeanUtil.toBean(item, DlRepairTitemReqVO.class)).collect(Collectors.toList()); // 取项目 List projects = items.stream().filter(item -> item.getItemType().equals("01")).collect(Collectors.toList()); - if (CollectionUtil.isNotEmpty(projects)){ + if (CollectionUtil.isNotEmpty(projects)) { Set ids = projects.stream().map(DlRepairTitemReqVO::getProjectId).collect(Collectors.toSet()); List repairProjects = projectService.listByIds(ids); items.forEach(item -> repairProjects.stream().filter(i -> i.getId().equals(item.getProjectId())).findFirst().ifPresent(item::setProject)); @@ -143,14 +190,14 @@ public class DlRepairTicketsServiceImpl extends ServiceImpl wares = items.stream().filter(item -> item.getItemType().equals("02")).collect(Collectors.toList()); - if (CollectionUtil.isNotEmpty(wares)){ + if (CollectionUtil.isNotEmpty(wares)) { Set ids = wares.stream().map(DlRepairTitemReqVO::getPartId).collect(Collectors.toSet()); List repairWares = waresService.listByIds(ids); items.forEach(item -> repairWares.stream().filter(i -> i.getId().equals(item.getPartId())).findFirst().ifPresent(item::setWare)); } // 取附加 List others = items.stream().filter(item -> item.getItemType().equals("03")).collect(Collectors.toList()); - if (CollectionUtil.isNotEmpty(others)){ + if (CollectionUtil.isNotEmpty(others)) { Set ids = others.stream().map(DlRepairTitemReqVO::getOtherId).collect(Collectors.toSet()); List dlRepairOthers = otherService.listByIds(ids); items.forEach(item -> dlRepairOthers.stream().filter(i -> i.getId().equals(item.getOtherId())).findFirst().ifPresent(item::setOther)); @@ -162,45 +209,24 @@ public class DlRepairTicketsServiceImpl extends ServiceImpl + + \ No newline at end of file diff --git a/dl-module-repair/src/main/resources/mapper/tickets/DlRepairTicketsMapper.xml b/dl-module-repair/src/main/resources/mapper/tickets/DlRepairTicketsMapper.xml index ea0177fc..24e838f9 100644 --- a/dl-module-repair/src/main/resources/mapper/tickets/DlRepairTicketsMapper.xml +++ b/dl-module-repair/src/main/resources/mapper/tickets/DlRepairTicketsMapper.xml @@ -42,8 +42,6 @@ - - @@ -83,9 +81,7 @@ cost, profit, part_status, - tickets_work_status, - appraise, - appraise_scope + tickets_work_status from dl_repair_tickets drt where drt.deleted = '0' @@ -123,9 +119,6 @@ and drt.user_id = #{map.userId} - - and drt.is_appraise = #{map.isAppraise} - and drt.tickets_work_status = #{map.ticketsWorkStatus} From 32f4b4fa6434900f9bc1c45d64937b8c56cdae7d Mon Sep 17 00:00:00 2001 From: PQZ Date: Mon, 23 Sep 2024 20:27:46 +0800 Subject: [PATCH 03/15] 1 --- .../admin/CustomerActiveController.java | 18 ++++++ .../admin/CustomerCouponController.java | 46 +++++++-------- .../custom/service/CustomerActiveService.java | 15 +++++ .../custom/service/CustomerCouponService.java | 27 +++------ .../impl/CustomerActiveServiceImpl.java | 46 ++++++++++++--- .../impl/CustomerCouponServiceImpl.java | 59 ++++++++++++------- .../custom/vo/CustomerCouponSaveReqVO.java | 33 ++++++++++- .../admin/ActiveMainController.java | 3 +- .../member/mapper/ActiveMainMapper.java | 12 ++++ .../member/service/ActiveMainService.java | 12 ++++ .../member/service/MemberCouponService.java | 2 +- .../service/impl/ActiveMainServiceImpl.java | 14 +++++ .../module/member/vo/ActiveMainPageReqVO.java | 2 + .../module/member/vo/ActiveMainRespVO.java | 2 + .../mapper/member/ActiveMainMapper.xml | 19 ++++++ .../impl/RepairOrderInfoServiceImpl.java | 1 - 16 files changed, 234 insertions(+), 77 deletions(-) diff --git a/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/controller/admin/CustomerActiveController.java b/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/controller/admin/CustomerActiveController.java index 8af387df..99a7ee13 100644 --- a/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/controller/admin/CustomerActiveController.java +++ b/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/controller/admin/CustomerActiveController.java @@ -8,6 +8,7 @@ import cn.iocoder.yudao.module.custom.service.CustomerActiveService; import cn.iocoder.yudao.module.custom.vo.CustomerActivePageReqVO; import cn.iocoder.yudao.module.custom.vo.CustomerActiveRespVO; import cn.iocoder.yudao.module.custom.vo.CustomerActiveSaveReqVO; +import cn.iocoder.yudao.module.member.vo.ActiveMainPageReqVO; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Parameter; import io.swagger.v3.oas.annotations.tags.Tag; @@ -18,6 +19,8 @@ import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; import javax.validation.Valid; +import java.util.List; + import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success; @Tag(name = "管理后台 - 用户参与活动记录") @@ -72,4 +75,19 @@ public class CustomerActiveController { } + /** + * + * @author PQZ + * @date 16:12 2024/9/23 + * @param pageReqVO ActiveMainPageReqVO实体 + * @return cn.iocoder.yudao.framework.common.pojo.CommonResult> + **/ + @GetMapping("/list") + @Operation(summary = "可参与营销活动") + @PreAuthorize("@ss.hasPermission('member:active-main:query')") + public CommonResult> getActiveMainPage(ActiveMainPageReqVO pageReqVO) { + return success(customerActiveService.isJoinActive(pageReqVO)); + } + + } \ No newline at end of file diff --git a/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/controller/admin/CustomerCouponController.java b/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/controller/admin/CustomerCouponController.java index b4f926dc..70951a5d 100644 --- a/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/controller/admin/CustomerCouponController.java +++ b/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/controller/admin/CustomerCouponController.java @@ -29,28 +29,31 @@ public class CustomerCouponController { @Resource private CustomerCouponService customerCouponService; - @PostMapping("/create") - @Operation(summary = "创建用户卡券") + /** + * 核销用户卡券 + * + * @param saveReqVO CustomerCouponSaveReqVO实体 + * @return cn.iocoder.yudao.framework.common.pojo.CommonResult + * @author PQZ + * @date 15:58 2024/9/23 + **/ + @PostMapping("/couponVerification") + @Operation(summary = "核销用户卡券") @PreAuthorize("@ss.hasPermission('base:customer-coupon:create')") - public CommonResult createCustomerCoupon(@Valid @RequestBody CustomerCouponSaveReqVO createReqVO) { - return success(customerCouponService.createCustomerCoupon(createReqVO)); - } - - @PutMapping("/update") - @Operation(summary = "更新用户卡券") - @PreAuthorize("@ss.hasPermission('base:customer-coupon:update')") - public CommonResult updateCustomerCoupon(@Valid @RequestBody CustomerCouponSaveReqVO updateReqVO) { - customerCouponService.updateCustomerCoupon(updateReqVO); + public CommonResult createCustomerCoupon(@Valid @RequestBody CustomerCouponSaveReqVO saveReqVO) { + customerCouponService.couponVerification(saveReqVO); return success(true); } + /** * 删除用户卡券 + * + * @param id 用户卡券id + * @return cn.iocoder.yudao.framework.common.pojo.CommonResult * @author PQZ * @date 23:01 2024/9/20 - * @param id TODO - * @return cn.iocoder.yudao.framework.common.pojo.CommonResult - **/ + **/ @DeleteMapping("/delete") @Operation(summary = "删除用户卡券") @Parameter(name = "id", description = "编号", required = true) @@ -62,11 +65,12 @@ public class CustomerCouponController { /** * 获取卡券信息及当前消费记录 - * @author PQZ - * @date 22:56 2024/9/20 + * * @param id 用户卡券id * @return cn.iocoder.yudao.framework.common.pojo.CommonResult - **/ + * @author PQZ + * @date 22:56 2024/9/20 + **/ @GetMapping("/get") @Operation(summary = "获得用户卡券") @Parameter(name = "id", description = "编号", required = true, example = "1024") @@ -75,13 +79,5 @@ public class CustomerCouponController { return success(customerCouponService.getCustomerCoupon(id)); } - @GetMapping("/page") - @Operation(summary = "获得用户卡券分页") - @PreAuthorize("@ss.hasPermission('base:customer-coupon:query')") - public CommonResult> getCustomerCouponPage(@Valid CustomerCouponPageReqVO pageReqVO) { - PageResult pageResult = customerCouponService.getCustomerCouponPage(pageReqVO); - return success(BeanUtils.toBean(pageResult, CustomerCouponRespVO.class)); - } - } \ No newline at end of file diff --git a/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/service/CustomerActiveService.java b/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/service/CustomerActiveService.java index c9b42334..c6fd482c 100644 --- a/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/service/CustomerActiveService.java +++ b/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/service/CustomerActiveService.java @@ -4,9 +4,12 @@ import cn.iocoder.yudao.framework.common.pojo.PageResult; import cn.iocoder.yudao.module.custom.entity.CustomerActive; import cn.iocoder.yudao.module.custom.vo.CustomerActivePageReqVO; import cn.iocoder.yudao.module.custom.vo.CustomerActiveSaveReqVO; +import cn.iocoder.yudao.module.member.vo.ActiveMainPageReqVO; +import cn.iocoder.yudao.module.member.vo.ActiveMainRespVO; import com.baomidou.mybatisplus.extension.service.IService; import javax.validation.Valid; +import java.util.List; /** * 用户参与活动记录 Service 接口 @@ -42,6 +45,8 @@ public interface CustomerActiveService extends IService { */ CustomerActive getCustomerActive(String id); + + /** * 获得用户参与活动记录分页 * @@ -50,4 +55,14 @@ public interface CustomerActiveService extends IService { */ PageResult getCustomerActivePage(CustomerActivePageReqVO pageReqVO); + + /** + * 可参与营销活动 + * @author PQZ + * @date 16:18 2024/9/23 + * @param pageReqVO ActiveMainPageReqVO 实体 + * @return java.util.List + **/ + List isJoinActive(ActiveMainPageReqVO pageReqVO); + } \ No newline at end of file diff --git a/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/service/CustomerCouponService.java b/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/service/CustomerCouponService.java index 09538bd1..55780a9a 100644 --- a/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/service/CustomerCouponService.java +++ b/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/service/CustomerCouponService.java @@ -17,20 +17,15 @@ import java.util.List; */ public interface CustomerCouponService extends IService { - /** - * 创建用户卡券 - * - * @param createReqVO 创建信息 - * @return 编号 - */ - String createCustomerCoupon(@Valid CustomerCouponSaveReqVO createReqVO); + /** - * 更新用户卡券 - * - * @param updateReqVO 更新信息 - */ - void updateCustomerCoupon(@Valid CustomerCouponSaveReqVO updateReqVO); + * 卡券核销 + * @author PQZ + * @date 15:37 2024/9/23 + * @param saveReqVO CustomerCouponSaveReqVO实体 + **/ + void couponVerification(CustomerCouponSaveReqVO saveReqVO); /** * 删除用户卡券 @@ -49,13 +44,7 @@ public interface CustomerCouponService extends IService { CustomerCouponRespVO getCustomerCoupon(String id); - /** - * 获得用户卡券分页 - * - * @param pageReqVO 分页查询 - * @return 用户卡券分页 - */ - PageResult getCustomerCouponPage(CustomerCouponPageReqVO pageReqVO); + /** * 根据用户id获取卡券信息 diff --git a/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/service/impl/CustomerActiveServiceImpl.java b/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/service/impl/CustomerActiveServiceImpl.java index c2089f77..09e9c827 100644 --- a/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/service/impl/CustomerActiveServiceImpl.java +++ b/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/service/impl/CustomerActiveServiceImpl.java @@ -2,6 +2,7 @@ package cn.iocoder.yudao.module.custom.service.impl; import cn.iocoder.yudao.framework.common.pojo.PageResult; import cn.iocoder.yudao.framework.common.util.object.BeanUtils; +import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO; import cn.iocoder.yudao.module.custom.entity.*; import cn.iocoder.yudao.module.custom.mapper.CustomerActiveMapper; import cn.iocoder.yudao.module.custom.service.*; @@ -13,7 +14,9 @@ import cn.iocoder.yudao.module.member.entity.ActiveRule; import cn.iocoder.yudao.module.member.entity.MemberCoupon; import cn.iocoder.yudao.module.member.service.ActiveMainService; import cn.iocoder.yudao.module.member.service.MemberCouponService; +import cn.iocoder.yudao.module.member.vo.ActiveMainPageReqVO; import cn.iocoder.yudao.module.member.vo.ActiveMainRespVO; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.mzt.logapi.service.IFunctionService; import org.springframework.stereotype.Service; @@ -57,7 +60,6 @@ public class CustomerActiveServiceImpl extends ServiceImpl ruleList = active.getRuleList(); //转换余额信息 - balance = transBalance(customer,saveReqVO.getTopUpAmount(),ruleList); + balance = transBalance(customer, saveReqVO.getTopUpAmount(), ruleList); //记录日志 CustomerBalanceChange change = changeService.initChange(customer.getId(), customer.getUserId(), null, BALANCE_CHANGE_TYPE_CZ, BALANCE_CHANGE_MAIN_YE, @@ -207,17 +209,20 @@ public class CustomerActiveServiceImpl extends ServiceImpl sortList = ruleList.stream().sorted(Comparator.comparing(ActiveRule::getRechAmount).reversed()).collect(Collectors.toList()); + BigDecimal nowChange = amount; for (ActiveRule item : sortList) { + //如果规则匹配 if (amount.compareTo(item.getRechAmount()) >= 0) { - BigDecimal nowChange = amount.add(item.getGiveAmount()); - //余额 - result.setBalance(customer.getBalance().add(nowChange)); - //累计充值金额 - result.setAllBalance(customer.getBalance().add(nowChange)); - result.setNowChange(nowChange); + nowChange = amount.add(item.getGiveAmount()); break; } } + //余额 + result.setBalance(customer.getBalance().add(nowChange)); + //累计充值金额 + result.setAllBalance(customer.getBalance().add(nowChange)); + //本次变动金额 + result.setNowChange(nowChange); return result; } @@ -239,4 +244,29 @@ public class CustomerActiveServiceImpl extends ServiceImpl + * @author PQZ + * @date 16:18 2024/9/23 + **/ + @Override + public List isJoinActive(ActiveMainPageReqVO pageReqVO) { + LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper<>(); + lambdaQueryWrapper.eq(BaseDO::getDeleted, 0).eq(CustomerActive::getCusId, pageReqVO.getCusId()); + List myList = list(lambdaQueryWrapper); + //活动id集合 + List activeIds = myList.stream().map(CustomerActive::getActiveId).distinct().collect(Collectors.toList()); + List list = activeMainService.listActive(pageReqVO); + //排除已参与的 + list.forEach(item -> { + if (activeIds.contains(item.getId())) { + item.setIsJoin(GENERAL_YES); + } + }); + return list; + } + } \ No newline at end of file diff --git a/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/service/impl/CustomerCouponServiceImpl.java b/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/service/impl/CustomerCouponServiceImpl.java index 26aaf0a0..aebe02f7 100644 --- a/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/service/impl/CustomerCouponServiceImpl.java +++ b/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/service/impl/CustomerCouponServiceImpl.java @@ -12,11 +12,15 @@ import cn.iocoder.yudao.module.custom.vo.CustomerCouponRespVO; import cn.iocoder.yudao.module.custom.vo.CustomerCouponSaveReqVO; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; import org.springframework.validation.annotation.Validated; import javax.annotation.Resource; +import java.math.BigDecimal; import java.util.List; +import static cn.iocoder.yudao.common.BaseConstants.*; + /** * 用户卡券 Service 实现类 * @@ -31,20 +35,37 @@ public class CustomerCouponServiceImpl extends ServiceImpl changeList = changeService.getCouponChange(coupon.getCusId(),coupon.getCouponId()); + CustomerCouponRespVO result = BeanUtils.toBean(coupon, CustomerCouponRespVO.class); + List changeList = changeService.getCouponChange(coupon.getCusId(), coupon.getCouponId()); result.setChangeList(changeList); return result; } - @Override - public PageResult getCustomerCouponPage(CustomerCouponPageReqVO pageReqVO) { - return null; - } - /** * 根据用户id获取卡券信息 * diff --git a/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/vo/CustomerCouponSaveReqVO.java b/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/vo/CustomerCouponSaveReqVO.java index 63ea2969..fd3ba9b9 100644 --- a/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/vo/CustomerCouponSaveReqVO.java +++ b/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/vo/CustomerCouponSaveReqVO.java @@ -3,6 +3,8 @@ package cn.iocoder.yudao.module.custom.vo; import cn.iocoder.yudao.module.custom.entity.CustomerCoupon; import io.swagger.v3.oas.annotations.media.Schema; import lombok.*; + +import java.time.LocalDateTime; import java.util.*; import javax.validation.constraints.*; import java.math.BigDecimal; @@ -10,6 +12,35 @@ import java.math.BigDecimal; @Schema(description = "管理后台 - 用户卡券新增/修改 Request VO") @Data public class CustomerCouponSaveReqVO extends CustomerCoupon { - + /**本次核销次数*/ + private BigDecimal changeBalance; + /** + * 卡券名称 + */ + private String couponName; + /** + * 卡券类型(保养卡、服务券、礼包券) + */ + private String couponType; + /** + * 适用车型(数据字典) + */ + private String carModel; + /** + * 开始有效期 + */ + private LocalDateTime beginTime; + /** + * 结束有效期 + */ + private LocalDateTime endTime; + /** + * 效果图片 + */ + private String image; + /** + * 来源活动名称 + */ + private String activeName; } \ No newline at end of file diff --git a/dl-module-base/src/main/java/cn/iocoder/yudao/module/member/controller/admin/ActiveMainController.java b/dl-module-base/src/main/java/cn/iocoder/yudao/module/member/controller/admin/ActiveMainController.java index 238935b5..fc971e33 100644 --- a/dl-module-base/src/main/java/cn/iocoder/yudao/module/member/controller/admin/ActiveMainController.java +++ b/dl-module-base/src/main/java/cn/iocoder/yudao/module/member/controller/admin/ActiveMainController.java @@ -19,6 +19,8 @@ import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; import javax.validation.Valid; +import java.util.List; + import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success; @Tag(name = "管理后台 - 营销活动") @@ -114,5 +116,4 @@ public class ActiveMainController { return success(activeMainService.queryListPage(pageReqVO, page)); } - } \ No newline at end of file diff --git a/dl-module-base/src/main/java/cn/iocoder/yudao/module/member/mapper/ActiveMainMapper.java b/dl-module-base/src/main/java/cn/iocoder/yudao/module/member/mapper/ActiveMainMapper.java index 9648ad74..bf9c8f0f 100644 --- a/dl-module-base/src/main/java/cn/iocoder/yudao/module/member/mapper/ActiveMainMapper.java +++ b/dl-module-base/src/main/java/cn/iocoder/yudao/module/member/mapper/ActiveMainMapper.java @@ -11,6 +11,8 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; +import java.util.List; + /** * 营销活动 Mapper * @@ -29,4 +31,14 @@ public interface ActiveMainMapper extends BaseMapper { * @date 14:10 2024/9/19 **/ IPage selectListPage(@Param("entity") ActiveMainPageReqVO entity, Page page); + + /** + * 不分页查询可参与的活动规则 + * + * @param entity ActiveMainPageReqVO实体 + * @return java.util.List + * @author PQZ + * @date 16:10 2024/9/23 + **/ + List listActiveMain(@Param("entity") ActiveMainPageReqVO entity); } \ No newline at end of file diff --git a/dl-module-base/src/main/java/cn/iocoder/yudao/module/member/service/ActiveMainService.java b/dl-module-base/src/main/java/cn/iocoder/yudao/module/member/service/ActiveMainService.java index b8abf007..bef7ef5c 100644 --- a/dl-module-base/src/main/java/cn/iocoder/yudao/module/member/service/ActiveMainService.java +++ b/dl-module-base/src/main/java/cn/iocoder/yudao/module/member/service/ActiveMainService.java @@ -8,6 +8,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; import javax.validation.Valid; +import java.util.List; /** * 营销活动 Service 接口 @@ -55,4 +56,15 @@ public interface ActiveMainService extends IService { **/ IPage queryListPage(ActiveMainPageReqVO pageReqVO, Page page); + + /** + * 不分页查询可参与的活动规则 + * + * @param pageReqVO ActiveMainPageReqVO实体 + * @return java.util.List + * @author PQZ + * @date 16:11 2024/9/23 + **/ + List listActive(ActiveMainPageReqVO pageReqVO); + } \ No newline at end of file diff --git a/dl-module-base/src/main/java/cn/iocoder/yudao/module/member/service/MemberCouponService.java b/dl-module-base/src/main/java/cn/iocoder/yudao/module/member/service/MemberCouponService.java index 76d9c333..9cc7a1bd 100644 --- a/dl-module-base/src/main/java/cn/iocoder/yudao/module/member/service/MemberCouponService.java +++ b/dl-module-base/src/main/java/cn/iocoder/yudao/module/member/service/MemberCouponService.java @@ -21,7 +21,7 @@ public interface MemberCouponService extends IService { /** * 保存基础卡券信息 * - * @param saveReqVO TODO + * @param saveReqVO MemberCouponSaveReqVO实体 * @return void * @author PQZ * @date 14:22 2024/9/19 diff --git a/dl-module-base/src/main/java/cn/iocoder/yudao/module/member/service/impl/ActiveMainServiceImpl.java b/dl-module-base/src/main/java/cn/iocoder/yudao/module/member/service/impl/ActiveMainServiceImpl.java index d12b3998..3ba30d84 100644 --- a/dl-module-base/src/main/java/cn/iocoder/yudao/module/member/service/impl/ActiveMainServiceImpl.java +++ b/dl-module-base/src/main/java/cn/iocoder/yudao/module/member/service/impl/ActiveMainServiceImpl.java @@ -39,6 +39,7 @@ public class ActiveMainServiceImpl extends ServiceImpl + * @author PQZ + * @date 16:11 2024/9/23 + **/ + @Override + public List listActive(ActiveMainPageReqVO pageReqVO) { + return activeMainMapper.listActiveMain(pageReqVO); + } + } \ No newline at end of file diff --git a/dl-module-base/src/main/java/cn/iocoder/yudao/module/member/vo/ActiveMainPageReqVO.java b/dl-module-base/src/main/java/cn/iocoder/yudao/module/member/vo/ActiveMainPageReqVO.java index bc45aee2..10f502ad 100644 --- a/dl-module-base/src/main/java/cn/iocoder/yudao/module/member/vo/ActiveMainPageReqVO.java +++ b/dl-module-base/src/main/java/cn/iocoder/yudao/module/member/vo/ActiveMainPageReqVO.java @@ -17,4 +17,6 @@ import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_ public class ActiveMainPageReqVO extends ActiveMain { /**用于判断是否查询当前时间段可参与的活动*/ private String isNow; + /**当前客户id*/ + private String cusId; } \ No newline at end of file diff --git a/dl-module-base/src/main/java/cn/iocoder/yudao/module/member/vo/ActiveMainRespVO.java b/dl-module-base/src/main/java/cn/iocoder/yudao/module/member/vo/ActiveMainRespVO.java index 10dbced7..91dd3a60 100644 --- a/dl-module-base/src/main/java/cn/iocoder/yudao/module/member/vo/ActiveMainRespVO.java +++ b/dl-module-base/src/main/java/cn/iocoder/yudao/module/member/vo/ActiveMainRespVO.java @@ -18,5 +18,7 @@ public class ActiveMainRespVO extends ActiveMain { private List couponList; /**活动关联规则*/ private List ruleList; + /**当前活动当前用户是否已参与*/ + private String isJoin; } \ No newline at end of file diff --git a/dl-module-base/src/main/resources/mapper/member/ActiveMainMapper.xml b/dl-module-base/src/main/resources/mapper/member/ActiveMainMapper.xml index 344c0455..62e50518 100644 --- a/dl-module-base/src/main/resources/mapper/member/ActiveMainMapper.xml +++ b/dl-module-base/src/main/resources/mapper/member/ActiveMainMapper.xml @@ -29,4 +29,23 @@ ORDER BY dam.create_time DESC + \ No newline at end of file diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/service/impl/RepairOrderInfoServiceImpl.java b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/service/impl/RepairOrderInfoServiceImpl.java index 73501cb1..d93c0b41 100644 --- a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/service/impl/RepairOrderInfoServiceImpl.java +++ b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/service/impl/RepairOrderInfoServiceImpl.java @@ -40,7 +40,6 @@ public class RepairOrderInfoServiceImpl extends ServiceImpl Date: Mon, 23 Sep 2024 21:09:03 +0800 Subject: [PATCH 04/15] =?UTF-8?q?=E6=94=AF=E4=BB=98=E7=9B=B8=E5=85=B3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../iocoder/yudao/util/WechatPayConfig.java | 5 ++- .../yudao/module/app/apy/RepairPayApi.java | 35 +++++++++++++++ .../controller/admin/RepairPayController.java | 43 +++++++++++++++++++ .../service/RepairOrderInfoService.java | 10 ++++- .../impl/RepairOrderInfoServiceImpl.java | 43 ++++++++++++++++++- .../project/vo/RepairOrderInfoRespVO.java | 4 +- .../YudaoWebSecurityConfigurerAdapter.java | 1 + .../src/main/resources/application.yaml | 2 + 8 files changed, 139 insertions(+), 4 deletions(-) create mode 100644 dl-module-repair/src/main/java/cn/iocoder/yudao/module/app/apy/RepairPayApi.java create mode 100644 dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/controller/admin/RepairPayController.java diff --git a/dl-module-base/src/main/java/cn/iocoder/yudao/util/WechatPayConfig.java b/dl-module-base/src/main/java/cn/iocoder/yudao/util/WechatPayConfig.java index 3ea5f9ad..1b903314 100644 --- a/dl-module-base/src/main/java/cn/iocoder/yudao/util/WechatPayConfig.java +++ b/dl-module-base/src/main/java/cn/iocoder/yudao/util/WechatPayConfig.java @@ -58,7 +58,10 @@ public class WechatPayConfig { * 退款回调地址 */ private String refundNotifyUrl="https://www.nuoyunr.com/jdcJc/notify/refundNotify"; - + /** + * 汽修通知回调地址 + */ + private String repairNotifyUrl="https://www.nuoyunr.com/admin-api/repairPayApi/payNotify"; /** * API 证书中的 key.pem */ diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/app/apy/RepairPayApi.java b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/app/apy/RepairPayApi.java new file mode 100644 index 00000000..2938981e --- /dev/null +++ b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/app/apy/RepairPayApi.java @@ -0,0 +1,35 @@ +package cn.iocoder.yudao.module.app.apy; + +import cn.iocoder.yudao.framework.common.pojo.CommonResult; +import cn.iocoder.yudao.module.project.service.RepairOrderInfoService; +import io.swagger.v3.oas.annotations.tags.Tag; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import java.util.Map; + +import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success; + +@Tag(name = "管理后台 - 维修模块 支付模块") +@RestController +@RequestMapping("/userClient/pay") +@Validated +public class RepairPayApi { + @Resource + private RepairOrderInfoService repairOrderInfoService; + + /** + * 支付吊起接口 + * @param orderId 订单主键 + * @return + */ + @GetMapping("/toPay") + public CommonResult> payTransactions(String orderId){ + Map res = repairOrderInfoService.payTransactions(orderId); + return success(res); + } + +} diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/controller/admin/RepairPayController.java b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/controller/admin/RepairPayController.java new file mode 100644 index 00000000..668513a1 --- /dev/null +++ b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/controller/admin/RepairPayController.java @@ -0,0 +1,43 @@ +package cn.iocoder.yudao.module.project.controller.admin; + +import cn.iocoder.yudao.framework.common.pojo.CommonResult; +import cn.iocoder.yudao.module.project.service.RepairOrderInfoService; +import cn.iocoder.yudao.module.project.vo.RepairProjectPageReqVO; +import cn.iocoder.yudao.module.project.vo.RepairProjectRespVO; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.tags.Tag; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; + +import java.util.Map; + +import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success; + +@Tag(name = "管理后台 - 维修模块 支付模块") +@RestController +@RequestMapping("/admin-api/pay") +@Validated +public class RepairPayController { + @Resource + private RepairOrderInfoService repairOrderInfoService; + + /** + * 支付吊起接口 + * @param orderId 订单主键 + * @return + */ + @GetMapping("/toPay") + public CommonResult> payTransactions(String orderId){ + Map res = repairOrderInfoService.payTransactions(orderId); + return success(res); + } + +} diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/service/RepairOrderInfoService.java b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/service/RepairOrderInfoService.java index d0b193e1..01c3beb1 100644 --- a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/service/RepairOrderInfoService.java +++ b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/service/RepairOrderInfoService.java @@ -9,6 +9,8 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; +import java.util.Map; + /** * 维修模块 订单 Service 接口 * @@ -86,4 +88,10 @@ public interface RepairOrderInfoService extends IService { * @param respVO 请求对象 **/ void appraiseOrder(RepairOrderInfoRespVO respVO); -} \ No newline at end of file + /** + * 支付吊起接口 + * @param orderId 订单主键 + * @return + */ + Map payTransactions(String orderId); +} diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/service/impl/RepairOrderInfoServiceImpl.java b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/service/impl/RepairOrderInfoServiceImpl.java index 32776ac2..2c9cee9f 100644 --- a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/service/impl/RepairOrderInfoServiceImpl.java +++ b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/service/impl/RepairOrderInfoServiceImpl.java @@ -3,6 +3,7 @@ package cn.iocoder.yudao.module.project.service.impl; import cn.hutool.core.util.ObjectUtil; import cn.iocoder.yudao.framework.common.pojo.PageResult; import cn.iocoder.yudao.framework.common.util.object.BeanUtils; +import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO; import cn.iocoder.yudao.module.project.entity.RepairOrderInfo; import cn.iocoder.yudao.module.project.mapper.RepairOrderInfoMapper; import cn.iocoder.yudao.module.project.service.RepairOrderInfoService; @@ -12,15 +13,25 @@ import cn.iocoder.yudao.module.project.vo.RepairOrderInfoSaveReqVO; import cn.iocoder.yudao.module.tickets.entity.DlRepairTickets; import cn.iocoder.yudao.module.tickets.service.DlRepairTicketsService; import cn.iocoder.yudao.module.tickets.vo.DlRepairTicketsRespVO; +import cn.iocoder.yudao.util.WechatPayConfig; +import cn.iocoder.yudao.util.WechatPayRequest; +import com.alibaba.fastjson.JSON; +import com.alibaba.fastjson.JSONObject; +import com.alibaba.fastjson.TypeReference; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.apache.commons.lang3.ObjectUtils; import org.springframework.context.annotation.Lazy; import org.springframework.stereotype.Service; import org.springframework.validation.annotation.Validated; import javax.annotation.Resource; import java.time.LocalDateTime; +import java.util.Date; +import java.util.HashMap; +import java.util.Map; /** * 维修模块 订单 Service 实现类 @@ -37,6 +48,10 @@ public class RepairOrderInfoServiceImpl extends ServiceImpl payTransactions(String orderId){ + RepairOrderInfo orderInfo = this.getById(orderId); + // 统一参数封装 + Map params = new HashMap<>(8); + params.put("appid", wechatPayConfig.getAppId()); + params.put("mchid", wechatPayConfig.getMchId()); + params.put("description", orderInfo.getPayRemark()); + params.put("out_trade_no", orderInfo.getOrderNo()); + params.put("notify_url", wechatPayConfig.getRepairNotifyUrl()); + Map amountMap = new HashMap<>(4); + // 金额单位为分 + amountMap.put("total", orderInfo.getPayMoney()); + //人民币 + amountMap.put("currency", "CNY"); + params.put("amount", amountMap); + String paramsStr = JSON.toJSONString(params); + String resStr = wechatPayRequest.wechatHttpPost("https://api.mch.weixin.qq.com/v3/pay/transactions/native",paramsStr); + return JSONObject.parseObject(resStr, new TypeReference>(){}); + } + +} diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/vo/RepairOrderInfoRespVO.java b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/vo/RepairOrderInfoRespVO.java index 93496159..ac138373 100644 --- a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/vo/RepairOrderInfoRespVO.java +++ b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/vo/RepairOrderInfoRespVO.java @@ -20,5 +20,7 @@ public class RepairOrderInfoRespVO extends RepairOrderInfo { /** 工单信息(包含子表) */ private DlRepairTicketsRespVO tickets; + //订单描述 + private String description; -} \ No newline at end of file +} diff --git a/yudao-framework/yudao-spring-boot-starter-security/src/main/java/cn/iocoder/yudao/framework/security/config/YudaoWebSecurityConfigurerAdapter.java b/yudao-framework/yudao-spring-boot-starter-security/src/main/java/cn/iocoder/yudao/framework/security/config/YudaoWebSecurityConfigurerAdapter.java index b192f511..beb47d3a 100644 --- a/yudao-framework/yudao-spring-boot-starter-security/src/main/java/cn/iocoder/yudao/framework/security/config/YudaoWebSecurityConfigurerAdapter.java +++ b/yudao-framework/yudao-spring-boot-starter-security/src/main/java/cn/iocoder/yudao/framework/security/config/YudaoWebSecurityConfigurerAdapter.java @@ -145,6 +145,7 @@ public class YudaoWebSecurityConfigurerAdapter { .antMatchers(HttpMethod.GET,"/admin-api/shop/region/**").permitAll() // 微信支付接口 .antMatchers("/admin-api/notify/**").permitAll() + .antMatchers("/userClient/pay/**").permitAll() .antMatchers("/admin-api/websocket/**").permitAll() // 小程序首页 .antMatchers("/admin-api/system/notice/listWx","/admin-api/system/swiper/listWx","/admin-api/system/shopconfig/listWx").permitAll() diff --git a/yudao-server/src/main/resources/application.yaml b/yudao-server/src/main/resources/application.yaml index ff6900d0..067b502c 100644 --- a/yudao-server/src/main/resources/application.yaml +++ b/yudao-server/src/main/resources/application.yaml @@ -222,6 +222,7 @@ yudao: - /admin-api/mp/open/** # 微信公众号开放平台,微信回调接口,不需要登录 - /admin-api/system/config/configKey/** - /websocket/** + - /userClient/pay/** - /admin-api/websocket/** - /admin-api/rescue/wxLoginRescue - /admin-api/rescue/wxLoginJc @@ -278,6 +279,7 @@ yudao: - /admin-api/rescue/loginJcApp - /admin-api/system/tenant/getListByWebsite - /admin-api/websocket/** + - /userClient/pay/** ignore-tables: - system_tenant - system_tenant_package From 6b4dc8cbca0a33d08908fffb6b1597768e81ad78 Mon Sep 17 00:00:00 2001 From: PQZ Date: Mon, 23 Sep 2024 21:10:00 +0800 Subject: [PATCH 05/15] 1 --- .../service/CustomerBalanceService.java | 18 ++++++++++++++--- .../impl/CustomerBalanceServiceImpl.java | 20 +++++++++++++++++++ 2 files changed, 35 insertions(+), 3 deletions(-) diff --git a/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/service/CustomerBalanceService.java b/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/service/CustomerBalanceService.java index 8a6b72dc..12c03a0d 100644 --- a/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/service/CustomerBalanceService.java +++ b/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/service/CustomerBalanceService.java @@ -21,6 +21,17 @@ public interface CustomerBalanceService extends IService { */ String createCustomerBalance(@Valid CustomerBalanceSaveReqVO createReqVO); + /** + * 更新用户余额信息 + * + * @param cusId 用户id + * @param orderId 订单id + * @param activeId 活动id + * @author PQZ + * @date 21:04 2024/9/23 + **/ + void saveBalance(String cusId, String orderId, String activeId); + /** * 更新用户积分(余额) * @@ -30,11 +41,12 @@ public interface CustomerBalanceService extends IService { /** * 根据用户id更新用户余额表 - * @author PQZ - * @date 11:56 2024/9/21 + * * @param balance CustomerBalance * @return void - **/ + * @author PQZ + * @date 11:56 2024/9/21 + **/ void updateByCusId(CustomerBalance balance); diff --git a/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/service/impl/CustomerBalanceServiceImpl.java b/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/service/impl/CustomerBalanceServiceImpl.java index 28efd9af..1bcfcca0 100644 --- a/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/service/impl/CustomerBalanceServiceImpl.java +++ b/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/service/impl/CustomerBalanceServiceImpl.java @@ -5,7 +5,9 @@ import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO; import cn.iocoder.yudao.module.custom.entity.CustomerBalance; import cn.iocoder.yudao.module.custom.mapper.CustomerBalanceMapper; import cn.iocoder.yudao.module.custom.service.CustomerBalanceService; +import cn.iocoder.yudao.module.custom.service.CustomerMainService; import cn.iocoder.yudao.module.custom.vo.CustomerBalanceSaveReqVO; +import cn.iocoder.yudao.module.custom.vo.CustomerMainRespVO; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.springframework.stereotype.Service; @@ -25,6 +27,9 @@ public class CustomerBalanceServiceImpl extends ServiceImpl Date: Mon, 23 Sep 2024 21:16:15 +0800 Subject: [PATCH 06/15] =?UTF-8?q?=E7=99=BB=E5=BD=95=20=E7=BB=91=E5=AE=9A?= =?UTF-8?q?=E6=89=8B=E6=9C=BA=E5=8F=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../app/controller/admin/SysLoginController.java | 14 +++++++++++--- yudao-server/src/main/resources/application.yaml | 1 + 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/dl-module-rescue/src/main/java/cn/iocoder/yudao/module/rescue/app/controller/admin/SysLoginController.java b/dl-module-rescue/src/main/java/cn/iocoder/yudao/module/rescue/app/controller/admin/SysLoginController.java index cab37536..8bbd839a 100644 --- a/dl-module-rescue/src/main/java/cn/iocoder/yudao/module/rescue/app/controller/admin/SysLoginController.java +++ b/dl-module-rescue/src/main/java/cn/iocoder/yudao/module/rescue/app/controller/admin/SysLoginController.java @@ -212,11 +212,19 @@ public class SysLoginController { AuthLoginReqVO authLoginReqVO = new AuthLoginReqVO(); authLoginReqVO.setUsername(loginBody.getUsername()); authLoginReqVO.setPassword(loginBody.getPassword()); + + AuthLoginRespVO login = loginService.login(authLoginReqVO); + Map map = new HashMap<>(); + map.put("accessToken",login.getAccessToken()); + map.put("expiresTime",login.getExpiresTime()); + map.put("refreshToken",login.getRefreshToken()); + map.put("userId",login.getUserId()); if(org.apache.commons.lang3.StringUtils.isEmpty(user.getMobile())){ - // 借用此字段设置需要填写手机号标志 为1时弹出验证手机号页面 - authLoginReqVO.setSocialState("1"); + map.put("needMobile","1"); + }else{ + map.put("needMobile","0"); } - return success(loginService.login(authLoginReqVO)); + return success(map); } /** diff --git a/yudao-server/src/main/resources/application.yaml b/yudao-server/src/main/resources/application.yaml index 067b502c..cee7bbe6 100644 --- a/yudao-server/src/main/resources/application.yaml +++ b/yudao-server/src/main/resources/application.yaml @@ -228,6 +228,7 @@ yudao: - /admin-api/rescue/wxLoginJc - /admin-api/rescue/loginJcApp - /admin-api/system/tenant/getListByWebsite + - /admin-api/rescue/loginQx websocket: enable: true # websocket的开关 path: /infra/ws # 路径 From 4f3179454af001340c2884ee2a6d7328d0b9065e Mon Sep 17 00:00:00 2001 From: PQZ Date: Mon, 23 Sep 2024 21:26:18 +0800 Subject: [PATCH 07/15] 1 --- .../admin/RepairOrderInfoController.java | 11 ++++---- .../module/order}/entity/RepairOrderInfo.java | 15 ++++------- .../order}/mapper/RepairOrderInfoMapper.java | 6 ++--- .../service/RepairOrderInfoService.java | 10 +++---- .../impl/RepairOrderInfoServiceImpl.java | 24 +++++------------ .../order}/vo/RepairOrderInfoPageReqVO.java | 4 +-- .../order/vo/RepairOrderInfoRespVO.java | 20 ++++++++++++++ .../order/vo/RepairOrderInfoSaveReqVO.java | 12 +++++++++ .../mapper/order}/RepairOrderInfoMapper.xml | 6 ++--- .../yudao/module/app/apy/RepairPayApi.java | 2 +- .../app/order/admin/RepairOrderAPI.java | 10 +++---- .../controller/admin/RepairPayController.java | 10 +------ .../project/vo/RepairOrderInfoRespVO.java | 26 ------------------- .../project/vo/RepairOrderInfoSaveReqVO.java | 17 ------------ .../impl/DlRepairTicketsServiceImpl.java | 8 ++---- 15 files changed, 70 insertions(+), 111 deletions(-) rename {dl-module-repair/src/main/java/cn/iocoder/yudao/module/project => dl-module-base/src/main/java/cn/iocoder/yudao/module/order}/controller/admin/RepairOrderInfoController.java (87%) rename {dl-module-repair/src/main/java/cn/iocoder/yudao/module/project => dl-module-base/src/main/java/cn/iocoder/yudao/module/order}/entity/RepairOrderInfo.java (88%) rename {dl-module-repair/src/main/java/cn/iocoder/yudao/module/project => dl-module-base/src/main/java/cn/iocoder/yudao/module/order}/mapper/RepairOrderInfoMapper.java (81%) rename {dl-module-repair/src/main/java/cn/iocoder/yudao/module/project => dl-module-base/src/main/java/cn/iocoder/yudao/module/order}/service/RepairOrderInfoService.java (88%) rename {dl-module-repair/src/main/java/cn/iocoder/yudao/module/project => dl-module-base/src/main/java/cn/iocoder/yudao/module/order}/service/impl/RepairOrderInfoServiceImpl.java (84%) rename {dl-module-repair/src/main/java/cn/iocoder/yudao/module/project => dl-module-base/src/main/java/cn/iocoder/yudao/module/order}/vo/RepairOrderInfoPageReqVO.java (76%) create mode 100644 dl-module-base/src/main/java/cn/iocoder/yudao/module/order/vo/RepairOrderInfoRespVO.java create mode 100644 dl-module-base/src/main/java/cn/iocoder/yudao/module/order/vo/RepairOrderInfoSaveReqVO.java rename {dl-module-repair/src/main/resources/mapper/project => dl-module-base/src/main/resources/mapper/order}/RepairOrderInfoMapper.xml (93%) delete mode 100644 dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/vo/RepairOrderInfoRespVO.java delete mode 100644 dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/vo/RepairOrderInfoSaveReqVO.java diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/controller/admin/RepairOrderInfoController.java b/dl-module-base/src/main/java/cn/iocoder/yudao/module/order/controller/admin/RepairOrderInfoController.java similarity index 87% rename from dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/controller/admin/RepairOrderInfoController.java rename to dl-module-base/src/main/java/cn/iocoder/yudao/module/order/controller/admin/RepairOrderInfoController.java index daf084f2..286ed727 100644 --- a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/controller/admin/RepairOrderInfoController.java +++ b/dl-module-base/src/main/java/cn/iocoder/yudao/module/order/controller/admin/RepairOrderInfoController.java @@ -1,12 +1,11 @@ -package cn.iocoder.yudao.module.project.controller.admin; +package cn.iocoder.yudao.module.order.controller.admin; import cn.iocoder.yudao.framework.common.pojo.CommonResult; import cn.iocoder.yudao.framework.common.util.object.BeanUtils; -import cn.iocoder.yudao.module.project.entity.RepairOrderInfo; -import cn.iocoder.yudao.module.project.service.RepairOrderInfoService; -import cn.iocoder.yudao.module.project.vo.RepairOrderInfoPageReqVO; -import cn.iocoder.yudao.module.project.vo.RepairOrderInfoRespVO; -import cn.iocoder.yudao.module.project.vo.RepairOrderInfoSaveReqVO; +import cn.iocoder.yudao.module.order.entity.RepairOrderInfo; +import cn.iocoder.yudao.module.order.service.RepairOrderInfoService; +import cn.iocoder.yudao.module.order.vo.RepairOrderInfoPageReqVO; +import cn.iocoder.yudao.module.order.vo.RepairOrderInfoRespVO; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import io.swagger.v3.oas.annotations.Operation; diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/entity/RepairOrderInfo.java b/dl-module-base/src/main/java/cn/iocoder/yudao/module/order/entity/RepairOrderInfo.java similarity index 88% rename from dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/entity/RepairOrderInfo.java rename to dl-module-base/src/main/java/cn/iocoder/yudao/module/order/entity/RepairOrderInfo.java index 923fb48b..1b7974bd 100644 --- a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/entity/RepairOrderInfo.java +++ b/dl-module-base/src/main/java/cn/iocoder/yudao/module/order/entity/RepairOrderInfo.java @@ -1,18 +1,13 @@ -package cn.iocoder.yudao.module.project.entity; +package cn.iocoder.yudao.module.order.entity; import cn.iocoder.yudao.framework.tenant.core.db.TenantBaseDO; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; import lombok.*; -import java.util.*; -import java.math.BigDecimal; + import java.math.BigDecimal; import java.time.LocalDateTime; -import java.time.LocalDateTime; -import java.time.LocalDateTime; -import java.time.LocalDateTime; -import java.time.LocalDateTime; -import java.time.LocalDateTime; -import com.baomidou.mybatisplus.annotation.*; -import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO; /** * 维修模块 订单 DO diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/mapper/RepairOrderInfoMapper.java b/dl-module-base/src/main/java/cn/iocoder/yudao/module/order/mapper/RepairOrderInfoMapper.java similarity index 81% rename from dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/mapper/RepairOrderInfoMapper.java rename to dl-module-base/src/main/java/cn/iocoder/yudao/module/order/mapper/RepairOrderInfoMapper.java index aafcb3fb..0e05c523 100644 --- a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/mapper/RepairOrderInfoMapper.java +++ b/dl-module-base/src/main/java/cn/iocoder/yudao/module/order/mapper/RepairOrderInfoMapper.java @@ -1,8 +1,6 @@ -package cn.iocoder.yudao.module.project.mapper; +package cn.iocoder.yudao.module.order.vo; -import cn.iocoder.yudao.module.project.entity.RepairOrderInfo; -import cn.iocoder.yudao.module.project.vo.RepairOrderInfoPageReqVO; -import cn.iocoder.yudao.module.project.vo.RepairOrderInfoRespVO; +import cn.iocoder.yudao.module.order.entity.RepairOrderInfo; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/service/RepairOrderInfoService.java b/dl-module-base/src/main/java/cn/iocoder/yudao/module/order/service/RepairOrderInfoService.java similarity index 88% rename from dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/service/RepairOrderInfoService.java rename to dl-module-base/src/main/java/cn/iocoder/yudao/module/order/service/RepairOrderInfoService.java index 01c3beb1..d556af9d 100644 --- a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/service/RepairOrderInfoService.java +++ b/dl-module-base/src/main/java/cn/iocoder/yudao/module/order/service/RepairOrderInfoService.java @@ -1,10 +1,10 @@ -package cn.iocoder.yudao.module.project.service; +package cn.iocoder.yudao.module.order.service; import cn.iocoder.yudao.framework.common.pojo.PageResult; -import cn.iocoder.yudao.module.project.entity.RepairOrderInfo; -import cn.iocoder.yudao.module.project.vo.RepairOrderInfoPageReqVO; -import cn.iocoder.yudao.module.project.vo.RepairOrderInfoRespVO; -import cn.iocoder.yudao.module.project.vo.RepairOrderInfoSaveReqVO; +import cn.iocoder.yudao.module.order.entity.RepairOrderInfo; +import cn.iocoder.yudao.module.order.vo.RepairOrderInfoPageReqVO; +import cn.iocoder.yudao.module.order.vo.RepairOrderInfoRespVO; +import cn.iocoder.yudao.module.order.vo.RepairOrderInfoSaveReqVO; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/service/impl/RepairOrderInfoServiceImpl.java b/dl-module-base/src/main/java/cn/iocoder/yudao/module/order/service/impl/RepairOrderInfoServiceImpl.java similarity index 84% rename from dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/service/impl/RepairOrderInfoServiceImpl.java rename to dl-module-base/src/main/java/cn/iocoder/yudao/module/order/service/impl/RepairOrderInfoServiceImpl.java index 2c9cee9f..234afe7f 100644 --- a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/service/impl/RepairOrderInfoServiceImpl.java +++ b/dl-module-base/src/main/java/cn/iocoder/yudao/module/order/service/impl/RepairOrderInfoServiceImpl.java @@ -1,35 +1,28 @@ -package cn.iocoder.yudao.module.project.service.impl; +package cn.iocoder.yudao.module.order.service.impl; import cn.hutool.core.util.ObjectUtil; import cn.iocoder.yudao.framework.common.pojo.PageResult; import cn.iocoder.yudao.framework.common.util.object.BeanUtils; -import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO; -import cn.iocoder.yudao.module.project.entity.RepairOrderInfo; -import cn.iocoder.yudao.module.project.mapper.RepairOrderInfoMapper; -import cn.iocoder.yudao.module.project.service.RepairOrderInfoService; -import cn.iocoder.yudao.module.project.vo.RepairOrderInfoPageReqVO; -import cn.iocoder.yudao.module.project.vo.RepairOrderInfoRespVO; -import cn.iocoder.yudao.module.project.vo.RepairOrderInfoSaveReqVO; -import cn.iocoder.yudao.module.tickets.entity.DlRepairTickets; -import cn.iocoder.yudao.module.tickets.service.DlRepairTicketsService; -import cn.iocoder.yudao.module.tickets.vo.DlRepairTicketsRespVO; +import cn.iocoder.yudao.module.order.entity.RepairOrderInfo; +import cn.iocoder.yudao.module.order.service.RepairOrderInfoService; +import cn.iocoder.yudao.module.order.vo.RepairOrderInfoMapper; +import cn.iocoder.yudao.module.order.vo.RepairOrderInfoPageReqVO; +import cn.iocoder.yudao.module.order.vo.RepairOrderInfoRespVO; +import cn.iocoder.yudao.module.order.vo.RepairOrderInfoSaveReqVO; import cn.iocoder.yudao.util.WechatPayConfig; import cn.iocoder.yudao.util.WechatPayRequest; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.TypeReference; -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import org.apache.commons.lang3.ObjectUtils; import org.springframework.context.annotation.Lazy; import org.springframework.stereotype.Service; import org.springframework.validation.annotation.Validated; import javax.annotation.Resource; import java.time.LocalDateTime; -import java.util.Date; import java.util.HashMap; import java.util.Map; @@ -45,9 +38,6 @@ public class RepairOrderInfoServiceImpl extends ServiceImpl - + - SELECT roi.* FROM @@ -34,7 +34,7 @@ - select roi.*,drt.tickets_work_status as status from repair_order_info roi left join dl_repair_tickets drt on roi.goods_id = drt.id where roi.deleted = '0' diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/app/apy/RepairPayApi.java b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/app/apy/RepairPayApi.java index 2938981e..dbdde9bc 100644 --- a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/app/apy/RepairPayApi.java +++ b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/app/apy/RepairPayApi.java @@ -1,7 +1,7 @@ package cn.iocoder.yudao.module.app.apy; import cn.iocoder.yudao.framework.common.pojo.CommonResult; -import cn.iocoder.yudao.module.project.service.RepairOrderInfoService; +import cn.iocoder.yudao.module.order.service.RepairOrderInfoService; import io.swagger.v3.oas.annotations.tags.Tag; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.GetMapping; diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/app/order/admin/RepairOrderAPI.java b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/app/order/admin/RepairOrderAPI.java index af4558b4..bd10b76d 100644 --- a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/app/order/admin/RepairOrderAPI.java +++ b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/app/order/admin/RepairOrderAPI.java @@ -1,9 +1,9 @@ package cn.iocoder.yudao.module.app.order.admin; import cn.iocoder.yudao.framework.common.pojo.CommonResult; -import cn.iocoder.yudao.module.project.entity.RepairOrderInfo; -import cn.iocoder.yudao.module.project.service.RepairOrderInfoService; -import cn.iocoder.yudao.module.project.vo.RepairOrderInfoRespVO; +import cn.iocoder.yudao.module.order.entity.RepairOrderInfo; +import cn.iocoder.yudao.module.order.service.RepairOrderInfoService; +import cn.iocoder.yudao.module.order.vo.RepairOrderInfoRespVO; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import io.swagger.v3.oas.annotations.Operation; import org.springframework.context.annotation.Lazy; @@ -39,8 +39,8 @@ public class RepairOrderAPI { @GetMapping("/page") @Operation(summary = "订单分页查询") public CommonResult getOrderPageByStatus(RepairOrderInfoRespVO respVO, - @RequestParam(value = "pageNo", defaultValue = "1")Integer pageNo, - @RequestParam(value = "pageSize", defaultValue = "10")Integer pageSize){ + @RequestParam(value = "pageNo", defaultValue = "1")Integer pageNo, + @RequestParam(value = "pageSize", defaultValue = "10")Integer pageSize){ Page page = new Page<>(pageNo, pageSize); return success(repairOrderInfoService.getOrderPageByStatus(respVO, page)); } diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/controller/admin/RepairPayController.java b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/controller/admin/RepairPayController.java index 668513a1..dd250662 100644 --- a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/controller/admin/RepairPayController.java +++ b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/controller/admin/RepairPayController.java @@ -1,22 +1,14 @@ package cn.iocoder.yudao.module.project.controller.admin; import cn.iocoder.yudao.framework.common.pojo.CommonResult; -import cn.iocoder.yudao.module.project.service.RepairOrderInfoService; -import cn.iocoder.yudao.module.project.vo.RepairProjectPageReqVO; -import cn.iocoder.yudao.module.project.vo.RepairProjectRespVO; -import com.baomidou.mybatisplus.core.metadata.IPage; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; -import io.swagger.v3.oas.annotations.Operation; +import cn.iocoder.yudao.module.order.service.RepairOrderInfoService; import io.swagger.v3.oas.annotations.tags.Tag; -import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; import javax.annotation.Resource; - import java.util.Map; import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success; diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/vo/RepairOrderInfoRespVO.java b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/vo/RepairOrderInfoRespVO.java deleted file mode 100644 index ac138373..00000000 --- a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/vo/RepairOrderInfoRespVO.java +++ /dev/null @@ -1,26 +0,0 @@ -package cn.iocoder.yudao.module.project.vo; - -import cn.iocoder.yudao.module.project.entity.RepairOrderInfo; -import cn.iocoder.yudao.module.tickets.vo.DlRepairTicketsRespVO; -import io.swagger.v3.oas.annotations.media.Schema; -import lombok.*; -import java.util.*; -import java.math.BigDecimal; -import org.springframework.format.annotation.DateTimeFormat; -import java.time.LocalDateTime; -import com.alibaba.excel.annotation.*; - -@Schema(description = "管理后台 - 维修模块 订单 Response VO") -@Data -@ExcelIgnoreUnannotated -public class RepairOrderInfoRespVO extends RepairOrderInfo { - - /** 订单状态(工单的状态) */ - private String status; - - /** 工单信息(包含子表) */ - private DlRepairTicketsRespVO tickets; - //订单描述 - private String description; - -} diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/vo/RepairOrderInfoSaveReqVO.java b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/vo/RepairOrderInfoSaveReqVO.java deleted file mode 100644 index fda65708..00000000 --- a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/vo/RepairOrderInfoSaveReqVO.java +++ /dev/null @@ -1,17 +0,0 @@ -package cn.iocoder.yudao.module.project.vo; - -import cn.iocoder.yudao.module.project.entity.RepairOrderInfo; -import io.swagger.v3.oas.annotations.media.Schema; -import lombok.*; -import java.util.*; -import javax.validation.constraints.*; -import java.math.BigDecimal; -import org.springframework.format.annotation.DateTimeFormat; -import java.time.LocalDateTime; - -@Schema(description = "管理后台 - 维修模块 订单新增/修改 Request VO") -@Data -public class RepairOrderInfoSaveReqVO extends RepairOrderInfo { - - -} \ No newline at end of file diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/service/impl/DlRepairTicketsServiceImpl.java b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/service/impl/DlRepairTicketsServiceImpl.java index a670d553..72f0e601 100644 --- a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/service/impl/DlRepairTicketsServiceImpl.java +++ b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/service/impl/DlRepairTicketsServiceImpl.java @@ -7,20 +7,18 @@ import cn.iocoder.yudao.common.RepairErrorCodeConstants; import cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUtils; import cn.iocoder.yudao.module.custom.service.CustomerMainService; import cn.iocoder.yudao.module.custom.vo.CustomerMainRespVO; +import cn.iocoder.yudao.module.order.service.RepairOrderInfoService; +import cn.iocoder.yudao.module.order.vo.RepairOrderInfoSaveReqVO; import cn.iocoder.yudao.module.other.entity.DlRepairOther; import cn.iocoder.yudao.module.other.service.DlRepairOtherService; -import cn.iocoder.yudao.module.project.entity.RepairOrderInfo; import cn.iocoder.yudao.module.project.entity.RepairProject; import cn.iocoder.yudao.module.project.entity.RepairWares; -import cn.iocoder.yudao.module.project.service.RepairOrderInfoService; import cn.iocoder.yudao.module.project.service.RepairProjectService; import cn.iocoder.yudao.module.project.service.RepairWaresService; -import cn.iocoder.yudao.module.project.vo.RepairOrderInfoSaveReqVO; import cn.iocoder.yudao.module.system.api.dept.DeptApi; import cn.iocoder.yudao.module.system.api.dept.dto.DeptRespDTO; import cn.iocoder.yudao.module.system.api.dict.DictDataApi; import cn.iocoder.yudao.module.system.api.dict.dto.DictDataRespDTO; -import cn.iocoder.yudao.module.system.api.user.AdminUserApi; import cn.iocoder.yudao.module.tickets.entity.DlRepairTickets; import cn.iocoder.yudao.module.tickets.entity.DlRepairTitem; import cn.iocoder.yudao.module.tickets.mapper.DlRepairTicketsMapper; @@ -38,10 +36,8 @@ import org.springframework.context.annotation.Lazy; import org.springframework.stereotype.Service; import javax.annotation.Resource; - import java.math.BigDecimal; import java.util.List; -import java.util.Optional; import java.util.Set; import java.util.stream.Collectors; From a6184dfb36ca352e46d1131c38d182a99abca1af Mon Sep 17 00:00:00 2001 From: PQZ Date: Mon, 23 Sep 2024 21:55:58 +0800 Subject: [PATCH 08/15] 1 --- .../admin/CustomerBalanceController.java | 17 +++++ .../impl/CustomerActiveServiceImpl.java | 2 + .../impl/CustomerBalanceServiceImpl.java | 70 ++++++++++++++++++- .../custom/vo/CustomerBalanceSaveReqVO.java | 3 +- .../module/order/entity/RepairOrderInfo.java | 8 ++- 5 files changed, 96 insertions(+), 4 deletions(-) diff --git a/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/controller/admin/CustomerBalanceController.java b/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/controller/admin/CustomerBalanceController.java index f941226c..836c8030 100644 --- a/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/controller/admin/CustomerBalanceController.java +++ b/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/controller/admin/CustomerBalanceController.java @@ -25,6 +25,21 @@ public class CustomerBalanceController { @Resource private CustomerBalanceService customerBalanceService; + /** + * 支付完成回调 + * @author PQZ + * @date 21:42 2024/9/23 + * @param createReqVO CustomerBalanceSaveReqVO + * @return cn.iocoder.yudao.framework.common.pojo.CommonResult + **/ + @PostMapping("/saveBalance") + @Operation(summary = "创建用户积分(余额)") + @PreAuthorize("@ss.hasPermission('base:customer-balance:create')") + public CommonResult saveBalance(@RequestBody CustomerBalanceSaveReqVO createReqVO) { + customerBalanceService.saveBalance(createReqVO.getCusId(),createReqVO.getOrderId(),createReqVO.getActiveId()); + return success(true); + } + @PostMapping("/create") @Operation(summary = "创建用户积分(余额)") @PreAuthorize("@ss.hasPermission('base:customer-balance:create')") @@ -40,4 +55,6 @@ public class CustomerBalanceController { return success(true); } + + } \ No newline at end of file diff --git a/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/service/impl/CustomerActiveServiceImpl.java b/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/service/impl/CustomerActiveServiceImpl.java index 09e9c827..1b317fb5 100644 --- a/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/service/impl/CustomerActiveServiceImpl.java +++ b/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/service/impl/CustomerActiveServiceImpl.java @@ -19,6 +19,7 @@ import cn.iocoder.yudao.module.member.vo.ActiveMainRespVO; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.mzt.logapi.service.IFunctionService; +import org.springframework.context.annotation.Lazy; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.springframework.validation.annotation.Validated; @@ -57,6 +58,7 @@ public class CustomerActiveServiceImpl extends ServiceImpl ruleList) { + CustomerBalance result = new CustomerBalance(); + result.setCusId(customer.getId()); + result.setUserId(customer.getUserId()); + BigDecimal nowChange = amount; + if (null != ruleList && !ruleList.isEmpty()) { + List sortList = ruleList.stream().sorted(Comparator.comparing(ActiveRule::getRechAmount).reversed()).collect(Collectors.toList()); + for (ActiveRule item : sortList) { + //如果规则匹配 + if (amount.compareTo(item.getRechAmount()) >= 0) { + nowChange = amount.add(item.getGiveAmount()); + break; + } + } + } + //余额 + result.setBalance(customer.getBalance().add(nowChange)); + //累计充值金额 + result.setAllBalance(customer.getBalance().add(nowChange)); + //本次变动金额 + result.setNowChange(nowChange); + return result; } @Override @@ -73,7 +141,7 @@ public class CustomerBalanceServiceImpl extends ServiceImpl lambdaQueryWrapper = new LambdaQueryWrapper<>(); - lambdaQueryWrapper.eq(CustomerBalance::getCusId,balance.getCusId()).eq(BaseDO::getDeleted,'0'); + lambdaQueryWrapper.eq(CustomerBalance::getCusId, balance.getCusId()).eq(BaseDO::getDeleted, '0'); remove(lambdaQueryWrapper); this.save(balance); } diff --git a/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/vo/CustomerBalanceSaveReqVO.java b/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/vo/CustomerBalanceSaveReqVO.java index 96e7e648..96d5c9b9 100644 --- a/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/vo/CustomerBalanceSaveReqVO.java +++ b/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/vo/CustomerBalanceSaveReqVO.java @@ -10,6 +10,7 @@ import java.math.BigDecimal; @Schema(description = "管理后台 - 用户积分(余额)新增/修改 Request VO") @Data public class CustomerBalanceSaveReqVO extends CustomerBalance { - + private String activeId; + private String orderId; } \ No newline at end of file diff --git a/dl-module-base/src/main/java/cn/iocoder/yudao/module/order/entity/RepairOrderInfo.java b/dl-module-base/src/main/java/cn/iocoder/yudao/module/order/entity/RepairOrderInfo.java index 1b7974bd..e2c8aca0 100644 --- a/dl-module-base/src/main/java/cn/iocoder/yudao/module/order/entity/RepairOrderInfo.java +++ b/dl-module-base/src/main/java/cn/iocoder/yudao/module/order/entity/RepairOrderInfo.java @@ -75,11 +75,11 @@ public class RepairOrderInfo extends TenantBaseDO { /** * 会员优惠金额 */ - private Long reduceMoney; + private BigDecimal reduceMoney; /** * 使用会员储值卡的金额 */ - private Long balance; + private BigDecimal balance; /** * 支付时间 */ @@ -152,6 +152,10 @@ public class RepairOrderInfo extends TenantBaseDO { * 创建人所在部门 */ private Integer deptId; + /** + * 创建人所在部门 + */ + private String tenantName; } \ No newline at end of file From 91439621106f1cef41668e018dd1ead028579291 Mon Sep 17 00:00:00 2001 From: PQZ Date: Mon, 23 Sep 2024 22:06:08 +0800 Subject: [PATCH 09/15] 1 --- .../custom/controller/admin/CustomerBalanceController.java | 2 +- .../custom/service/impl/CustomerActiveServiceImpl.java | 4 ++++ .../custom/service/impl/CustomerBalanceServiceImpl.java | 5 +++-- 3 files changed, 8 insertions(+), 3 deletions(-) diff --git a/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/controller/admin/CustomerBalanceController.java b/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/controller/admin/CustomerBalanceController.java index 836c8030..07e4092f 100644 --- a/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/controller/admin/CustomerBalanceController.java +++ b/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/controller/admin/CustomerBalanceController.java @@ -26,7 +26,7 @@ public class CustomerBalanceController { private CustomerBalanceService customerBalanceService; /** - * 支付完成回调 + * 更新用户余额信息(充值完成的回调) * @author PQZ * @date 21:42 2024/9/23 * @param createReqVO CustomerBalanceSaveReqVO diff --git a/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/service/impl/CustomerActiveServiceImpl.java b/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/service/impl/CustomerActiveServiceImpl.java index 1b317fb5..0fecd296 100644 --- a/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/service/impl/CustomerActiveServiceImpl.java +++ b/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/service/impl/CustomerActiveServiceImpl.java @@ -16,6 +16,7 @@ import cn.iocoder.yudao.module.member.service.ActiveMainService; import cn.iocoder.yudao.module.member.service.MemberCouponService; import cn.iocoder.yudao.module.member.vo.ActiveMainPageReqVO; import cn.iocoder.yudao.module.member.vo.ActiveMainRespVO; +import cn.iocoder.yudao.module.order.service.RepairOrderInfoService; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.mzt.logapi.service.IFunctionService; @@ -60,6 +61,9 @@ public class CustomerActiveServiceImpl extends ServiceImpl Date: Mon, 23 Sep 2024 22:50:05 +0800 Subject: [PATCH 10/15] 1 --- .../iocoder/yudao/common/BaseConstants.java | 6 +++ .../admin/CustomerBalanceController.java | 32 ++++++++------ .../service/CustomerBalanceService.java | 11 +++-- .../impl/CustomerActiveServiceImpl.java | 33 ++++++++++---- .../impl/CustomerBalanceServiceImpl.java | 20 +++------ .../custom/vo/CustomerBalanceSaveReqVO.java | 2 +- .../module/order/entity/RepairOrderInfo.java | 6 ++- .../order/service/RepairOrderInfoService.java | 18 ++++++++ .../impl/RepairOrderInfoServiceImpl.java | 44 +++++++++++++++++++ .../impl/DlRepairTicketsServiceImpl.java | 2 + 10 files changed, 129 insertions(+), 45 deletions(-) diff --git a/dl-module-base/src/main/java/cn/iocoder/yudao/common/BaseConstants.java b/dl-module-base/src/main/java/cn/iocoder/yudao/common/BaseConstants.java index 2f6d2861..60b04b6b 100644 --- a/dl-module-base/src/main/java/cn/iocoder/yudao/common/BaseConstants.java +++ b/dl-module-base/src/main/java/cn/iocoder/yudao/common/BaseConstants.java @@ -77,5 +77,11 @@ public class BaseConstants { public static final String GENERAL_NO = "0"; /**1是*/ public static final String GENERAL_YES = "1"; + /**会员充值*/ + public static final String ORDER_HYCZ = "1"; + /**维修服务*/ + public static final String ORDER_WXFW = "2"; + /**订单店铺名称*/ + public static final String ORDER_TENANT_NAME = "蓝安集团"; } diff --git a/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/controller/admin/CustomerBalanceController.java b/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/controller/admin/CustomerBalanceController.java index 07e4092f..5fa0ced0 100644 --- a/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/controller/admin/CustomerBalanceController.java +++ b/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/controller/admin/CustomerBalanceController.java @@ -1,7 +1,10 @@ package cn.iocoder.yudao.module.custom.controller.admin; import cn.iocoder.yudao.framework.common.pojo.CommonResult; +import cn.iocoder.yudao.framework.common.util.object.BeanUtils; +import cn.iocoder.yudao.module.custom.entity.CustomerActive; import cn.iocoder.yudao.module.custom.service.CustomerBalanceService; +import cn.iocoder.yudao.module.custom.vo.CustomerActiveRespVO; import cn.iocoder.yudao.module.custom.vo.CustomerBalanceSaveReqVO; import cn.iocoder.yudao.module.custom.vo.CustomerMainRespVO; import io.swagger.v3.oas.annotations.Operation; @@ -25,20 +28,21 @@ public class CustomerBalanceController { @Resource private CustomerBalanceService customerBalanceService; - /** - * 更新用户余额信息(充值完成的回调) - * @author PQZ - * @date 21:42 2024/9/23 - * @param createReqVO CustomerBalanceSaveReqVO - * @return cn.iocoder.yudao.framework.common.pojo.CommonResult - **/ - @PostMapping("/saveBalance") - @Operation(summary = "创建用户积分(余额)") - @PreAuthorize("@ss.hasPermission('base:customer-balance:create')") - public CommonResult saveBalance(@RequestBody CustomerBalanceSaveReqVO createReqVO) { - customerBalanceService.saveBalance(createReqVO.getCusId(),createReqVO.getOrderId(),createReqVO.getActiveId()); - return success(true); - } +// /** +// * 更新用户余额信息(充值完成的回调) +// * @author PQZ +// * @date 21:42 2024/9/23 +// * @param createReqVO CustomerBalanceSaveReqVO +// * @return cn.iocoder.yudao.framework.common.pojo.CommonResult +// **/ +// @PostMapping("/saveBalance") +// @Operation(summary = "创建用户积分(余额)") +// @PreAuthorize("@ss.hasPermission('base:customer-balance:create')") +// public CommonResult saveBalance(@RequestBody CustomerBalanceSaveReqVO createReqVO) { +// customerBalanceService.saveBalance(createReqVO.getCusId(),createReqVO.getOrderId(),createReqVO.getActiveId()); +// return success(true); +// } + @PostMapping("/create") @Operation(summary = "创建用户积分(余额)") diff --git a/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/service/CustomerBalanceService.java b/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/service/CustomerBalanceService.java index 12c03a0d..4749485b 100644 --- a/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/service/CustomerBalanceService.java +++ b/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/service/CustomerBalanceService.java @@ -2,6 +2,7 @@ package cn.iocoder.yudao.module.custom.service; import cn.iocoder.yudao.module.custom.entity.CustomerBalance; import cn.iocoder.yudao.module.custom.vo.CustomerBalanceSaveReqVO; +import cn.iocoder.yudao.module.order.entity.RepairOrderInfo; import com.baomidou.mybatisplus.extension.service.IService; import javax.validation.Valid; @@ -22,15 +23,13 @@ public interface CustomerBalanceService extends IService { String createCustomerBalance(@Valid CustomerBalanceSaveReqVO createReqVO); /** - * 更新用户余额信息 + * 更新用户余额信息(充值完成的回调) * - * @param cusId 用户id - * @param orderId 订单id - * @param activeId 活动id + * @param orderInfo 订单信息 * @author PQZ - * @date 21:04 2024/9/23 + * @date 22:10 2024/9/23 **/ - void saveBalance(String cusId, String orderId, String activeId); + void balanceCallback(RepairOrderInfo orderInfo); /** * 更新用户积分(余额) diff --git a/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/service/impl/CustomerActiveServiceImpl.java b/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/service/impl/CustomerActiveServiceImpl.java index 0fecd296..a1994ab7 100644 --- a/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/service/impl/CustomerActiveServiceImpl.java +++ b/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/service/impl/CustomerActiveServiceImpl.java @@ -16,6 +16,7 @@ import cn.iocoder.yudao.module.member.service.ActiveMainService; import cn.iocoder.yudao.module.member.service.MemberCouponService; import cn.iocoder.yudao.module.member.vo.ActiveMainPageReqVO; import cn.iocoder.yudao.module.member.vo.ActiveMainRespVO; +import cn.iocoder.yudao.module.order.entity.RepairOrderInfo; import cn.iocoder.yudao.module.order.service.RepairOrderInfoService; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @@ -27,6 +28,7 @@ import org.springframework.validation.annotation.Validated; import javax.annotation.Resource; import java.math.BigDecimal; +import java.time.LocalDateTime; import java.util.ArrayList; import java.util.Comparator; import java.util.List; @@ -60,12 +62,10 @@ public class CustomerActiveServiceImpl extends ServiceImpl ruleList = active.getRuleList(); +// List ruleList = active.getRuleList(); //转换余额信息 - balance = transBalance(customer, saveReqVO.getTopUpAmount(), ruleList); +// balance = transBalance(customer, saveReqVO.getTopUpAmount(), ruleList); //记录日志 CustomerBalanceChange change = changeService.initChange(customer.getId(), customer.getUserId(), null, BALANCE_CHANGE_TYPE_CZ, BALANCE_CHANGE_MAIN_YE, - null, balance.getNowChange(), balance.getBalance(), "参加" + active.getName() + "活动"); - changeList.add(change); + null, saveReqVO.getTopUpAmount(), new BigDecimal(0), "参加" + active.getName() + "活动充值" + saveReqVO.getTopUpAmount() + "元"); + changeService.save(change); + RepairOrderInfo orderInfo = new RepairOrderInfo(); + orderInfo.setOrderNo(System.currentTimeMillis() + Math.abs(change.getId().hashCode() % 1000) + ""); + orderInfo.setGoodsId(change.getId()); + orderInfo.setActiveId(active.getId()); + orderInfo.setGoodsTitle(active.getName()); + orderInfo.setTenantName(ORDER_TENANT_NAME); + orderInfo.setGoodsType(ORDER_HYCZ); + orderInfo.setUserId(customer.getUserId()); + orderInfo.setCusId(customer.getId()); + orderInfo.setCusName(customer.getCusName()); + orderInfo.setCusPhone(customer.getPhoneNumber()); + orderInfo.setGoodsPrice(saveReqVO.getTopUpAmount()); + orderInfo.setPayMoney(saveReqVO.getTopUpAmount()); + orderInfo.setOrderTime(LocalDateTime.now()); + orderInfo.setIsOnline("01"); + orderInfo.setOrderStatus("0"); + repairOrderInfoService.save(orderInfo); //保存余额信息 - balanceService.updateByCusId(balance); +// balanceService.updateByCusId(balance); } /*4、保存参与活动信息*/ diff --git a/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/service/impl/CustomerBalanceServiceImpl.java b/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/service/impl/CustomerBalanceServiceImpl.java index b1cd7156..8b41f54b 100644 --- a/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/service/impl/CustomerBalanceServiceImpl.java +++ b/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/service/impl/CustomerBalanceServiceImpl.java @@ -45,9 +45,6 @@ public class CustomerBalanceServiceImpl extends ServiceImpl { **/ void saveOrderInfo(RepairOrderInfoSaveReqVO saveReqVO); + + /** + * 充值完成回调接口 + * @author PQZ + * @date 22:19 2024/9/23 + * @param orderNo 订单编号 + **/ + void rechargeCallback(String orderNo); + /** * 删除维修模块 订单 * @@ -43,6 +52,15 @@ public interface RepairOrderInfoService extends IService { */ RepairOrderInfo getOrderInfo(String id); + /** + * 根据订单编号查询订单数据 + * @author PQZ + * @date 22:12 2024/9/23 + * @param orderNo 订单编号 + * @return cn.iocoder.yudao.module.order.entity.RepairOrderInfo + **/ + RepairOrderInfo getOrderByOrderNo(String orderNo); + /** * 获得维修模块 订单分页 * diff --git a/dl-module-base/src/main/java/cn/iocoder/yudao/module/order/service/impl/RepairOrderInfoServiceImpl.java b/dl-module-base/src/main/java/cn/iocoder/yudao/module/order/service/impl/RepairOrderInfoServiceImpl.java index 234afe7f..8ade533c 100644 --- a/dl-module-base/src/main/java/cn/iocoder/yudao/module/order/service/impl/RepairOrderInfoServiceImpl.java +++ b/dl-module-base/src/main/java/cn/iocoder/yudao/module/order/service/impl/RepairOrderInfoServiceImpl.java @@ -3,6 +3,8 @@ package cn.iocoder.yudao.module.order.service.impl; import cn.hutool.core.util.ObjectUtil; import cn.iocoder.yudao.framework.common.pojo.PageResult; import cn.iocoder.yudao.framework.common.util.object.BeanUtils; +import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO; +import cn.iocoder.yudao.module.custom.service.CustomerBalanceService; import cn.iocoder.yudao.module.order.entity.RepairOrderInfo; import cn.iocoder.yudao.module.order.service.RepairOrderInfoService; import cn.iocoder.yudao.module.order.vo.RepairOrderInfoMapper; @@ -14,6 +16,7 @@ import cn.iocoder.yudao.util.WechatPayRequest; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.TypeReference; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @@ -26,6 +29,9 @@ import java.time.LocalDateTime; import java.util.HashMap; import java.util.Map; +import static cn.iocoder.yudao.common.BaseConstants.GENERAL_YES; +import static cn.iocoder.yudao.common.BaseConstants.ORDER_HYCZ; + /** * 维修模块 订单 Service 实现类 * @@ -37,6 +43,9 @@ public class RepairOrderInfoServiceImpl extends ServiceImpl lambdaQueryWrapper = new LambdaQueryWrapper<>(); + lambdaQueryWrapper.eq(RepairOrderInfo::getOrderNo,orderNo).eq(BaseDO::getDeleted,'0'); + return getOne(lambdaQueryWrapper); + } + @Override public PageResult getOrderInfoPage(RepairOrderInfoPageReqVO pageReqVO) { return null; diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/service/impl/DlRepairTicketsServiceImpl.java b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/service/impl/DlRepairTicketsServiceImpl.java index 72f0e601..2a4519b7 100644 --- a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/service/impl/DlRepairTicketsServiceImpl.java +++ b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/service/impl/DlRepairTicketsServiceImpl.java @@ -41,6 +41,7 @@ import java.util.List; import java.util.Set; import java.util.stream.Collectors; +import static cn.iocoder.yudao.common.BaseConstants.ORDER_TENANT_NAME; import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception; /** @@ -126,6 +127,7 @@ public class DlRepairTicketsServiceImpl extends ServiceImpl Date: Mon, 23 Sep 2024 22:50:10 +0800 Subject: [PATCH 11/15] 1 --- .../tickets/service/impl/DlRepairTicketsServiceImpl.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/service/impl/DlRepairTicketsServiceImpl.java b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/service/impl/DlRepairTicketsServiceImpl.java index 2a4519b7..3f8ef6c2 100644 --- a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/service/impl/DlRepairTicketsServiceImpl.java +++ b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/service/impl/DlRepairTicketsServiceImpl.java @@ -137,9 +137,9 @@ public class DlRepairTicketsServiceImpl extends ServiceImpl Date: Mon, 23 Sep 2024 22:51:44 +0800 Subject: [PATCH 12/15] =?UTF-8?q?=E6=94=AF=E4=BB=98=E7=9B=B8=E5=85=B3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../module/order/entity/RepairOrderInfo.java | 2 +- .../order/service/RepairOrderInfoService.java | 2 + .../impl/RepairOrderInfoServiceImpl.java | 3 +- .../yudao/module/app/apy/ClientOrderApi.java | 41 ++++++++++++++++ .../yudao/module/app/apy/RepairPayApi.java | 48 +++++++++++++++++-- 5 files changed, 90 insertions(+), 6 deletions(-) create mode 100644 dl-module-repair/src/main/java/cn/iocoder/yudao/module/app/apy/ClientOrderApi.java diff --git a/dl-module-base/src/main/java/cn/iocoder/yudao/module/order/entity/RepairOrderInfo.java b/dl-module-base/src/main/java/cn/iocoder/yudao/module/order/entity/RepairOrderInfo.java index f72928e0..84c1e02d 100644 --- a/dl-module-base/src/main/java/cn/iocoder/yudao/module/order/entity/RepairOrderInfo.java +++ b/dl-module-base/src/main/java/cn/iocoder/yudao/module/order/entity/RepairOrderInfo.java @@ -162,4 +162,4 @@ public class RepairOrderInfo extends TenantBaseDO { private String activeId; -} \ No newline at end of file +} diff --git a/dl-module-base/src/main/java/cn/iocoder/yudao/module/order/service/RepairOrderInfoService.java b/dl-module-base/src/main/java/cn/iocoder/yudao/module/order/service/RepairOrderInfoService.java index d28d0cec..2c895981 100644 --- a/dl-module-base/src/main/java/cn/iocoder/yudao/module/order/service/RepairOrderInfoService.java +++ b/dl-module-base/src/main/java/cn/iocoder/yudao/module/order/service/RepairOrderInfoService.java @@ -112,4 +112,6 @@ public interface RepairOrderInfoService extends IService { * @return */ Map payTransactions(String orderId); + + } diff --git a/dl-module-base/src/main/java/cn/iocoder/yudao/module/order/service/impl/RepairOrderInfoServiceImpl.java b/dl-module-base/src/main/java/cn/iocoder/yudao/module/order/service/impl/RepairOrderInfoServiceImpl.java index 8ade533c..42562e9c 100644 --- a/dl-module-base/src/main/java/cn/iocoder/yudao/module/order/service/impl/RepairOrderInfoServiceImpl.java +++ b/dl-module-base/src/main/java/cn/iocoder/yudao/module/order/service/impl/RepairOrderInfoServiceImpl.java @@ -25,6 +25,7 @@ import org.springframework.stereotype.Service; import org.springframework.validation.annotation.Validated; import javax.annotation.Resource; +import java.math.BigDecimal; import java.time.LocalDateTime; import java.util.HashMap; import java.util.Map; @@ -196,7 +197,7 @@ public class RepairOrderInfoServiceImpl extends ServiceImpl amountMap = new HashMap<>(4); // 金额单位为分 - amountMap.put("total", orderInfo.getPayMoney()); + amountMap.put("total", orderInfo.getPayMoney().multiply(BigDecimal.valueOf(100L)).intValue()); //人民币 amountMap.put("currency", "CNY"); params.put("amount", amountMap); diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/app/apy/ClientOrderApi.java b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/app/apy/ClientOrderApi.java new file mode 100644 index 00000000..b50f0e8d --- /dev/null +++ b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/app/apy/ClientOrderApi.java @@ -0,0 +1,41 @@ +package cn.iocoder.yudao.module.app.apy; + +import cn.iocoder.yudao.framework.common.pojo.CommonResult; +import cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUtils; +import cn.iocoder.yudao.framework.tenant.core.aop.TenantIgnore; +import cn.iocoder.yudao.module.order.entity.RepairOrderInfo; +import cn.iocoder.yudao.module.order.service.RepairOrderInfoService; +import cn.iocoder.yudao.module.order.vo.RepairOrderInfoRespVO; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.tags.Tag; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; + +import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success; + +@Tag(name = "用户端 - 维修模块 订单模块") +@RestController +@RequestMapping("/userClient/order") +@Validated +public class ClientOrderApi { + @Resource + private RepairOrderInfoService repairOrderInfoService; + @GetMapping("/page") + @Operation(summary = "订单分页查询") + @TenantIgnore + public CommonResult getOrderPage(RepairOrderInfoRespVO respVO, + @RequestParam(value = "pageNo", defaultValue = "1")Integer pageNo, + @RequestParam(value = "pageSize", defaultValue = "10")Integer pageSize){ + // 当前登录用户的id + Long loginUserId = SecurityFrameworkUtils.getLoginUserId(); + respVO.setUserId(loginUserId); + Page page = new Page<>(pageNo, pageSize); + return success(repairOrderInfoService.getOrderPageByStatus(respVO, page)); + } +} diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/app/apy/RepairPayApi.java b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/app/apy/RepairPayApi.java index dbdde9bc..92de6798 100644 --- a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/app/apy/RepairPayApi.java +++ b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/app/apy/RepairPayApi.java @@ -1,15 +1,21 @@ package cn.iocoder.yudao.module.app.apy; +import cn.hutool.json.JSONUtil; import cn.iocoder.yudao.framework.common.pojo.CommonResult; +import cn.iocoder.yudao.framework.tenant.core.aop.TenantIgnore; import cn.iocoder.yudao.module.order.service.RepairOrderInfoService; +import cn.iocoder.yudao.util.WechatPayConfig; +import com.alibaba.fastjson.JSONObject; +import com.wechat.pay.contrib.apache.httpclient.util.AesUtil; import io.swagger.v3.oas.annotations.tags.Tag; import org.springframework.validation.annotation.Validated; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; +import java.nio.charset.StandardCharsets; +import java.util.HashMap; import java.util.Map; +import java.util.concurrent.locks.ReentrantLock; import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success; @@ -20,16 +26,50 @@ import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success; public class RepairPayApi { @Resource private RepairOrderInfoService repairOrderInfoService; - + @Resource + private WechatPayConfig wechatPayConfig; /** * 支付吊起接口 * @param orderId 订单主键 * @return */ @GetMapping("/toPay") + @TenantIgnore public CommonResult> payTransactions(String orderId){ Map res = repairOrderInfoService.payTransactions(orderId); return success(res); } + private final ReentrantLock lock = new ReentrantLock(); + @PostMapping("/payNotify") + public Map payNotify(@RequestBody JSONObject jsonObject) { + try { + String key = wechatPayConfig.getApiV3Key(); + String json = jsonObject.toString(); + String associated_data = (String) JSONUtil.getByPath(JSONUtil.parse(json), "resource.associated_data"); + String ciphertext = (String) JSONUtil.getByPath(JSONUtil.parse(json), "resource.ciphertext"); + String nonce = (String) JSONUtil.getByPath(JSONUtil.parse(json), "resource.nonce"); + String decryptData = new AesUtil(key.getBytes(StandardCharsets.UTF_8)).decryptToString(associated_data.getBytes(StandardCharsets.UTF_8), nonce.getBytes(StandardCharsets.UTF_8), ciphertext); + //验签成功 + JSONObject decryptDataObj = JSONObject.parseObject(decryptData, JSONObject.class); + if(lock.tryLock()) { + try { + String orderNo = decryptDataObj.get("out_trade_no").toString(); + repairOrderInfoService.rechargeCallback(orderNo); + } catch (Exception ignored){ + + } finally{ + //要主动释放锁 + lock.unlock(); + } + } + }catch (Exception ignored){ + + } + + Map res = new HashMap<>(); + res.put("code", "SUCCESS"); + res.put("message", "成功"); + return res; + } } From f39fe1a419d2d83dc8b043ceca083ad6ff4f7e1b Mon Sep 17 00:00:00 2001 From: PQZ Date: Tue, 24 Sep 2024 13:30:27 +0800 Subject: [PATCH 13/15] 1 --- .../custom/controller/admin/CustomerCouponController.java | 3 --- .../custom/controller/admin/CustomerMainController.java | 1 - .../custom/service/impl/CustomerActiveServiceImpl.java | 1 + .../custom/service/impl/CustomerCouponServiceImpl.java | 6 +++--- .../yudao/module/custom/vo/CustomerActiveSaveReqVO.java | 2 ++ .../main/resources/mapper/custom/CustomerCouponMapper.xml | 1 + 6 files changed, 7 insertions(+), 7 deletions(-) diff --git a/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/controller/admin/CustomerCouponController.java b/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/controller/admin/CustomerCouponController.java index 70951a5d..cc1fe147 100644 --- a/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/controller/admin/CustomerCouponController.java +++ b/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/controller/admin/CustomerCouponController.java @@ -39,7 +39,6 @@ public class CustomerCouponController { **/ @PostMapping("/couponVerification") @Operation(summary = "核销用户卡券") - @PreAuthorize("@ss.hasPermission('base:customer-coupon:create')") public CommonResult createCustomerCoupon(@Valid @RequestBody CustomerCouponSaveReqVO saveReqVO) { customerCouponService.couponVerification(saveReqVO); return success(true); @@ -57,7 +56,6 @@ public class CustomerCouponController { @DeleteMapping("/delete") @Operation(summary = "删除用户卡券") @Parameter(name = "id", description = "编号", required = true) - @PreAuthorize("@ss.hasPermission('base:customer-coupon:delete')") public CommonResult deleteCustomerCoupon(@RequestParam("id") String id) { customerCouponService.deleteCustomerCoupon(id); return success(true); @@ -74,7 +72,6 @@ public class CustomerCouponController { @GetMapping("/get") @Operation(summary = "获得用户卡券") @Parameter(name = "id", description = "编号", required = true, example = "1024") - @PreAuthorize("@ss.hasPermission('base:customer-coupon:query')") public CommonResult getCustomerCoupon(@RequestParam("id") String id) { return success(customerCouponService.getCustomerCoupon(id)); } diff --git a/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/controller/admin/CustomerMainController.java b/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/controller/admin/CustomerMainController.java index 9cfdc8b9..b1c5ccc1 100644 --- a/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/controller/admin/CustomerMainController.java +++ b/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/controller/admin/CustomerMainController.java @@ -129,7 +129,6 @@ public class CustomerMainController { @GetMapping("/get") @Operation(summary = "获得客户管理") @Parameter(name = "id", description = "编号", required = true, example = "1024") - @PreAuthorize("@ss.hasPermission('base:customer-main:query')") public CommonResult getCustomerMain(@RequestParam("id") String id) { return success(customerMainService.getCustomerById(id)); } diff --git a/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/service/impl/CustomerActiveServiceImpl.java b/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/service/impl/CustomerActiveServiceImpl.java index a1994ab7..413cdd7b 100644 --- a/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/service/impl/CustomerActiveServiceImpl.java +++ b/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/service/impl/CustomerActiveServiceImpl.java @@ -147,6 +147,7 @@ public class CustomerActiveServiceImpl extends ServiceImpl selectCoupon; } \ No newline at end of file diff --git a/dl-module-base/src/main/resources/mapper/custom/CustomerCouponMapper.xml b/dl-module-base/src/main/resources/mapper/custom/CustomerCouponMapper.xml index d35a7c11..da826a10 100644 --- a/dl-module-base/src/main/resources/mapper/custom/CustomerCouponMapper.xml +++ b/dl-module-base/src/main/resources/mapper/custom/CustomerCouponMapper.xml @@ -28,5 +28,6 @@ WHERE bcc.cus_id = #{cusId} AND bcc.deleted = 0 + AND bcc.is_valid = 1 \ No newline at end of file From e9b547fbcfdebea5d9a0ca046c48cc9609abca54 Mon Sep 17 00:00:00 2001 From: PQZ Date: Tue, 24 Sep 2024 15:12:38 +0800 Subject: [PATCH 14/15] =?UTF-8?q?=E8=AE=A2=E5=8D=95=E7=AE=A1=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../admin/RepairOrderInfoController.java | 16 ++++++++++++++++ .../order/service/RepairOrderInfoService.java | 8 +------- .../service/impl/RepairOrderInfoServiceImpl.java | 5 +---- .../mapper/order/RepairOrderInfoMapper.xml | 6 +++++- 4 files changed, 23 insertions(+), 12 deletions(-) diff --git a/dl-module-base/src/main/java/cn/iocoder/yudao/module/order/controller/admin/RepairOrderInfoController.java b/dl-module-base/src/main/java/cn/iocoder/yudao/module/order/controller/admin/RepairOrderInfoController.java index 286ed727..3a84dad1 100644 --- a/dl-module-base/src/main/java/cn/iocoder/yudao/module/order/controller/admin/RepairOrderInfoController.java +++ b/dl-module-base/src/main/java/cn/iocoder/yudao/module/order/controller/admin/RepairOrderInfoController.java @@ -6,6 +6,7 @@ import cn.iocoder.yudao.module.order.entity.RepairOrderInfo; import cn.iocoder.yudao.module.order.service.RepairOrderInfoService; import cn.iocoder.yudao.module.order.vo.RepairOrderInfoPageReqVO; import cn.iocoder.yudao.module.order.vo.RepairOrderInfoRespVO; +import cn.iocoder.yudao.module.order.vo.RepairOrderInfoSaveReqVO; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import io.swagger.v3.oas.annotations.Operation; @@ -48,6 +49,21 @@ public class RepairOrderInfoController { return success(BeanUtils.toBean(orderInfo, RepairOrderInfoRespVO.class)); } + + + /** + * 更新订单信息 + * + * @param saveReqVO 订单信息 + */ + @PutMapping("/update") + @Operation(summary = "更新车辆信息") + @PreAuthorize("@ss.hasPermission('base:car-main:update')") + public CommonResult updateCarMain(@RequestBody RepairOrderInfoSaveReqVO saveReqVO) { + repairOrderInfoService.rechargeCallback(saveReqVO.getOrderNo()); + return success(true); + } + /** * 分页查询订单内容 * diff --git a/dl-module-base/src/main/java/cn/iocoder/yudao/module/order/service/RepairOrderInfoService.java b/dl-module-base/src/main/java/cn/iocoder/yudao/module/order/service/RepairOrderInfoService.java index 2c895981..2a2e0649 100644 --- a/dl-module-base/src/main/java/cn/iocoder/yudao/module/order/service/RepairOrderInfoService.java +++ b/dl-module-base/src/main/java/cn/iocoder/yudao/module/order/service/RepairOrderInfoService.java @@ -61,13 +61,7 @@ public interface RepairOrderInfoService extends IService { **/ RepairOrderInfo getOrderByOrderNo(String orderNo); - /** - * 获得维修模块 订单分页 - * - * @param pageReqVO 分页查询 - * @return 维修模块 订单分页 - */ - PageResult getOrderInfoPage(RepairOrderInfoPageReqVO pageReqVO); + /** * 分页查询订单信息 diff --git a/dl-module-base/src/main/java/cn/iocoder/yudao/module/order/service/impl/RepairOrderInfoServiceImpl.java b/dl-module-base/src/main/java/cn/iocoder/yudao/module/order/service/impl/RepairOrderInfoServiceImpl.java index 42562e9c..96a27e59 100644 --- a/dl-module-base/src/main/java/cn/iocoder/yudao/module/order/service/impl/RepairOrderInfoServiceImpl.java +++ b/dl-module-base/src/main/java/cn/iocoder/yudao/module/order/service/impl/RepairOrderInfoServiceImpl.java @@ -113,10 +113,6 @@ public class RepairOrderInfoServiceImpl extends ServiceImpl getOrderInfoPage(RepairOrderInfoPageReqVO pageReqVO) { - return null; - } /** * 分页查询订单信息 @@ -144,6 +140,7 @@ public class RepairOrderInfoServiceImpl extends ServiceImpl - and roi.goods_totle like concat('%', #{entity.goodsTitle}, '%') + and roi.goods_title like concat('%', #{entity.goodsTitle}, '%') and roi.goods_type = #{entity.goodsType} @@ -31,7 +31,11 @@ and roi.order_status = #{entity.orderStatus} + + and roi.pay_type = #{entity.payType} + + order by roi.create_time desc