diff --git a/src/main/java/com/ycwl/basic/controller/pc/ProfitSharingRecordController.java b/src/main/java/com/ycwl/basic/profitsharing/controller/ProfitSharingRecordController.java similarity index 63% rename from src/main/java/com/ycwl/basic/controller/pc/ProfitSharingRecordController.java rename to src/main/java/com/ycwl/basic/profitsharing/controller/ProfitSharingRecordController.java index 851b366..38e34fe 100644 --- a/src/main/java/com/ycwl/basic/controller/pc/ProfitSharingRecordController.java +++ b/src/main/java/com/ycwl/basic/profitsharing/controller/ProfitSharingRecordController.java @@ -1,9 +1,10 @@ -package com.ycwl.basic.controller.pc; +package com.ycwl.basic.profitsharing.controller; import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; -import com.ycwl.basic.model.pc.profitsharing.resp.ProfitSharingRecordRespVO; -import com.ycwl.basic.service.pc.ProfitSharingRecordService; +import com.ycwl.basic.profitsharing.dto.ProfitSharingRecordReqQuery; +import com.ycwl.basic.profitsharing.dto.ProfitSharingRecordRespVO; +import com.ycwl.basic.profitsharing.service.ProfitSharingRecordService; import com.ycwl.basic.utils.ApiResponse; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -21,10 +22,10 @@ public class ProfitSharingRecordController { private ProfitSharingRecordService profitSharingRecordService; @ApiOperation("根据景区ID查询利润分成记录,支持分页,按创建时间倒序") - @GetMapping("/page") - public ApiResponse> findByScenicId(@RequestParam(required = false) Long scenicId, @RequestParam int pageNum, @RequestParam int pageSize) { - PageHelper.startPage(pageNum, pageSize, "create_time desc"); - List records = profitSharingRecordService.findByScenicId(scenicId); + @PostMapping("/page") + public ApiResponse> queryPage(@RequestBody ProfitSharingRecordReqQuery req) { + PageHelper.startPage(req.getPageNum(), req.getPageSize(), "create_time desc"); + List records = profitSharingRecordService.list(req); PageInfo pageInfo = new PageInfo<>(records); return ApiResponse.success(pageInfo); } diff --git a/src/main/java/com/ycwl/basic/profitsharing/dto/ProfitSharingConfigReqQuery.java b/src/main/java/com/ycwl/basic/profitsharing/dto/ProfitSharingConfigReqQuery.java index 490e350..4ec99e1 100644 --- a/src/main/java/com/ycwl/basic/profitsharing/dto/ProfitSharingConfigReqQuery.java +++ b/src/main/java/com/ycwl/basic/profitsharing/dto/ProfitSharingConfigReqQuery.java @@ -1,7 +1,12 @@ package com.ycwl.basic.profitsharing.dto; import com.ycwl.basic.model.common.BaseQueryParameterReq; +import lombok.Data; +import lombok.EqualsAndHashCode; + +@EqualsAndHashCode(callSuper = true) +@Data public class ProfitSharingConfigReqQuery extends BaseQueryParameterReq { private Long scenicId; } diff --git a/src/main/java/com/ycwl/basic/profitsharing/dto/ProfitSharingRecordReqQuery.java b/src/main/java/com/ycwl/basic/profitsharing/dto/ProfitSharingRecordReqQuery.java new file mode 100644 index 0000000..9f1c8fc --- /dev/null +++ b/src/main/java/com/ycwl/basic/profitsharing/dto/ProfitSharingRecordReqQuery.java @@ -0,0 +1,21 @@ +package com.ycwl.basic.profitsharing.dto; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.ycwl.basic.model.common.BaseQueryParameterReq; +import lombok.Data; +import lombok.EqualsAndHashCode; +import org.springframework.web.bind.annotation.RequestParam; + +import java.util.Date; + +@EqualsAndHashCode(callSuper = true) +@Data +public class ProfitSharingRecordReqQuery extends BaseQueryParameterReq { + private Long scenicId; + private Integer status; + private Integer rateMode; + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + private Date startTime; + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + private Date endTime; +} diff --git a/src/main/java/com/ycwl/basic/model/pc/profitsharing/resp/ProfitSharingRecordRespVO.java b/src/main/java/com/ycwl/basic/profitsharing/dto/ProfitSharingRecordRespVO.java similarity index 96% rename from src/main/java/com/ycwl/basic/model/pc/profitsharing/resp/ProfitSharingRecordRespVO.java rename to src/main/java/com/ycwl/basic/profitsharing/dto/ProfitSharingRecordRespVO.java index 5f62e45..01430c5 100644 --- a/src/main/java/com/ycwl/basic/model/pc/profitsharing/resp/ProfitSharingRecordRespVO.java +++ b/src/main/java/com/ycwl/basic/profitsharing/dto/ProfitSharingRecordRespVO.java @@ -1,4 +1,4 @@ -package com.ycwl.basic.model.pc.profitsharing.resp; +package com.ycwl.basic.profitsharing.dto; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; diff --git a/src/main/java/com/ycwl/basic/profitsharing/mapper/ProfitSharingRecordMapper.java b/src/main/java/com/ycwl/basic/profitsharing/mapper/ProfitSharingRecordMapper.java index 70ad582..dcf5be0 100644 --- a/src/main/java/com/ycwl/basic/profitsharing/mapper/ProfitSharingRecordMapper.java +++ b/src/main/java/com/ycwl/basic/profitsharing/mapper/ProfitSharingRecordMapper.java @@ -1,19 +1,17 @@ package com.ycwl.basic.profitsharing.mapper; -import com.ycwl.basic.model.pc.profitsharing.resp.ProfitSharingRecordRespVO; +import com.ycwl.basic.profitsharing.dto.ProfitSharingRecordReqQuery; +import com.ycwl.basic.profitsharing.dto.ProfitSharingRecordRespVO; import com.ycwl.basic.profitsharing.entity.ProfitSharingRecord; import org.apache.ibatis.annotations.Delete; -import org.apache.ibatis.annotations.Insert; import org.apache.ibatis.annotations.Mapper; -import org.apache.ibatis.annotations.Options; import org.apache.ibatis.annotations.Param; -import org.apache.ibatis.annotations.Select; import java.util.List; @Mapper public interface ProfitSharingRecordMapper { - List findByScenicId(@Param("scenicId") Long scenicId); + List list(ProfitSharingRecordReqQuery req); void batchInsert(List records); diff --git a/src/main/java/com/ycwl/basic/profitsharing/service/ProfitSharingRecordService.java b/src/main/java/com/ycwl/basic/profitsharing/service/ProfitSharingRecordService.java new file mode 100644 index 0000000..d3abe23 --- /dev/null +++ b/src/main/java/com/ycwl/basic/profitsharing/service/ProfitSharingRecordService.java @@ -0,0 +1,9 @@ +package com.ycwl.basic.profitsharing.service; + +import com.ycwl.basic.profitsharing.dto.ProfitSharingRecordReqQuery; +import com.ycwl.basic.profitsharing.dto.ProfitSharingRecordRespVO; +import java.util.List; + +public interface ProfitSharingRecordService { + List list(ProfitSharingRecordReqQuery req); +} \ No newline at end of file diff --git a/src/main/java/com/ycwl/basic/service/impl/pc/ProfitSharingRecordServiceImpl.java b/src/main/java/com/ycwl/basic/profitsharing/service/impl/ProfitSharingRecordServiceImpl.java similarity index 50% rename from src/main/java/com/ycwl/basic/service/impl/pc/ProfitSharingRecordServiceImpl.java rename to src/main/java/com/ycwl/basic/profitsharing/service/impl/ProfitSharingRecordServiceImpl.java index 8932ef2..d1517b8 100644 --- a/src/main/java/com/ycwl/basic/service/impl/pc/ProfitSharingRecordServiceImpl.java +++ b/src/main/java/com/ycwl/basic/profitsharing/service/impl/ProfitSharingRecordServiceImpl.java @@ -1,8 +1,9 @@ -package com.ycwl.basic.service.impl.pc; +package com.ycwl.basic.profitsharing.service.impl; -import com.ycwl.basic.model.pc.profitsharing.resp.ProfitSharingRecordRespVO; +import com.ycwl.basic.profitsharing.dto.ProfitSharingRecordReqQuery; +import com.ycwl.basic.profitsharing.dto.ProfitSharingRecordRespVO; import com.ycwl.basic.profitsharing.mapper.ProfitSharingRecordMapper; -import com.ycwl.basic.service.pc.ProfitSharingRecordService; +import com.ycwl.basic.profitsharing.service.ProfitSharingRecordService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -16,7 +17,7 @@ public class ProfitSharingRecordServiceImpl implements ProfitSharingRecordServic @Override - public List findByScenicId(Long scenicId) { - return profitSharingRecordMapper.findByScenicId(scenicId); + public List list(ProfitSharingRecordReqQuery req) { + return profitSharingRecordMapper.list(req); } } \ No newline at end of file diff --git a/src/main/java/com/ycwl/basic/service/pc/ProfitSharingRecordService.java b/src/main/java/com/ycwl/basic/service/pc/ProfitSharingRecordService.java deleted file mode 100644 index 13afa5e..0000000 --- a/src/main/java/com/ycwl/basic/service/pc/ProfitSharingRecordService.java +++ /dev/null @@ -1,8 +0,0 @@ -package com.ycwl.basic.service.pc; - -import com.ycwl.basic.model.pc.profitsharing.resp.ProfitSharingRecordRespVO; -import java.util.List; - -public interface ProfitSharingRecordService { - List findByScenicId(Long scenicId); -} \ No newline at end of file diff --git a/src/main/resources/mapper/ProfitSharingRecordMapper.xml b/src/main/resources/mapper/ProfitSharingRecordMapper.xml index 7a92f35..ba7c7b9 100644 --- a/src/main/resources/mapper/ProfitSharingRecordMapper.xml +++ b/src/main/resources/mapper/ProfitSharingRecordMapper.xml @@ -2,13 +2,13 @@ - INSERT INTO profit_sharing_record (scenic_id, order_id, user_id, user_name, amount, wx_amount, manual_amount, wx_rate, real_rate, order_amount, create_time) + INSERT INTO profit_sharing_record (scenic_id, order_id, user_id, user_name, amount, wx_amount, manual_amount, rate_mode, wx_rate, real_rate, order_amount, create_time) VALUES - (#{record.scenicId}, #{record.orderId}, #{record.userId}, #{record.userName}, #{record.amount}, #{record.wxAmount}, #{record.manualAmount}, #{record.wxRate}, #{record.realRate}, #{record.orderAmount}, #{record.createTime}) + (#{record.scenicId}, #{record.orderId}, #{record.userId}, #{record.userName}, #{record.amount}, #{record.wxAmount}, #{record.manualAmount}, #{record.rateMode}, #{record.wxRate}, #{record.realRate}, #{record.orderAmount}, #{record.createTime}) - SELECT r.*, s.name as scenic_name FROM profit_sharing_record r LEFT JOIN scenic s ON s.id = r.scenic_id @@ -16,6 +16,18 @@ AND r.scenic_id = #{scenicId} + + AND r.status = #{status} + + + AND r.rate_mode = #{rateMode} + + + AND r.create_time >= #{startTime} + + + AND r.create_time <= #{endTime} + ORDER BY r.create_time desc