分账小改动

This commit is contained in:
2025-02-21 10:04:24 +08:00
parent df8345f504
commit f0fc5ef236
9 changed files with 68 additions and 29 deletions

View File

@ -0,0 +1,33 @@
package com.ycwl.basic.profitsharing.controller;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
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;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.List;
@RestController
@RequestMapping("/api/profitSharingRecord/v1")
@Api(tags = "利润分成记录相关接口")
public class ProfitSharingRecordController {
@Autowired
private ProfitSharingRecordService profitSharingRecordService;
@ApiOperation("根据景区ID查询利润分成记录支持分页按创建时间倒序")
@PostMapping("/page")
public ApiResponse<PageInfo<ProfitSharingRecordRespVO>> queryPage(@RequestBody ProfitSharingRecordReqQuery req) {
PageHelper.startPage(req.getPageNum(), req.getPageSize(), "create_time desc");
List<ProfitSharingRecordRespVO> records = profitSharingRecordService.list(req);
PageInfo<ProfitSharingRecordRespVO> pageInfo = new PageInfo<>(records);
return ApiResponse.success(pageInfo);
}
}

View File

@ -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;
}

View File

@ -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;
}

View File

@ -0,0 +1,54 @@
package com.ycwl.basic.profitsharing.dto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
import java.util.Date;
@Data
@ApiModel(value = "利润分成记录响应VO")
public class ProfitSharingRecordRespVO {
@ApiModelProperty(value = "记录ID")
private Long id;
@ApiModelProperty(value = "景区ID")
private Long scenicId;
private String scenicName;
@ApiModelProperty(value = "订单ID")
private Long orderId;
@ApiModelProperty(value = "用户ID")
private Long userId;
@ApiModelProperty(value = "用户名")
private String userName;
@ApiModelProperty(value = "分成金额")
private BigDecimal amount;
@ApiModelProperty(value = "微信分成金额")
private BigDecimal wxAmount;
@ApiModelProperty(value = "手动分成金额")
private BigDecimal manualAmount;
@ApiModelProperty(value = "微信分账比例模式")
private Integer rateMode;
@ApiModelProperty(value = "微信分账比例")
private BigDecimal wxRate;
@ApiModelProperty(value = "实际分账比例")
private BigDecimal realRate;
@ApiModelProperty(value = "订单金额")
private BigDecimal orderAmount;
private Integer status;
@ApiModelProperty(value = "创建时间")
private Date createTime;
}

View File

@ -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<ProfitSharingRecordRespVO> findByScenicId(@Param("scenicId") Long scenicId);
List<ProfitSharingRecordRespVO> list(ProfitSharingRecordReqQuery req);
void batchInsert(List<ProfitSharingRecord> records);

View File

@ -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<ProfitSharingRecordRespVO> list(ProfitSharingRecordReqQuery req);
}

View File

@ -0,0 +1,23 @@
package com.ycwl.basic.profitsharing.service.impl;
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.profitsharing.service.ProfitSharingRecordService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
@Service
public class ProfitSharingRecordServiceImpl implements ProfitSharingRecordService {
@Autowired
private ProfitSharingRecordMapper profitSharingRecordMapper;
@Override
public List<ProfitSharingRecordRespVO> list(ProfitSharingRecordReqQuery req) {
return profitSharingRecordMapper.list(req);
}
}