jiangping
2025-07-14 0c001d14de8a29465e2dff166d6cb92fc681e75f
前端
已修改5个文件
153 ■■■■■ 文件已修改
admin/src/api/business/orders.js 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/services/src/main/java/com/doumee/core/constants/Constants.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/services/src/main/java/com/doumee/dao/business/MemberRevenueMapper.java 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/services/src/main/java/com/doumee/dao/business/model/MemberRevenue.java 48 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/services/src/main/java/com/doumee/service/business/impl/MemberRevenueServiceImpl.java 90 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
admin/src/api/business/orders.js
@@ -6,6 +6,11 @@
    trim: true
  })
}
export function commentList (data) {
  return request.post('/business/orders/commentList', data, {
    trim: true
  })
}
// 创建
export function create (data) {
server/services/src/main/java/com/doumee/core/constants/Constants.java
@@ -3,6 +3,7 @@
import lombok.AllArgsConstructor;
import lombok.Getter;
import java.math.BigDecimal;
import java.util.*;
/**
@@ -115,6 +116,12 @@
        }
        return d.intValue();
    }
    public static double getFormatMoney(Long d) {
        BigDecimal r = new BigDecimal(formatLongNum(d));
        r = r.divide(new BigDecimal(100),2,BigDecimal.ROUND_HALF_UP);
        return r.doubleValue();
    }
    public static long formatLongNum(Long d) {
        if (d == null) {
server/services/src/main/java/com/doumee/dao/business/MemberRevenueMapper.java
@@ -2,11 +2,12 @@
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.doumee.dao.business.model.MemberRevenue;
import com.github.yulichang.base.MPJBaseMapper;
/**
 * @author 江蹄蹄
 * @date 2025/07/09 12:00
 */
public interface MemberRevenueMapper extends BaseMapper<MemberRevenue> {
public interface MemberRevenueMapper extends MPJBaseMapper<MemberRevenue> {
}
server/services/src/main/java/com/doumee/dao/business/model/MemberRevenue.java
@@ -23,74 +23,60 @@
public class MemberRevenue {
    @ApiModelProperty(value = "主键", example = "1")
    @ExcelColumn(name="主键")
    private Integer id;
    @ApiModelProperty(value = "是否已删除 0未删除 1已删除", example = "1")
    @ExcelColumn(name="是否已删除 0未删除 1已删除")
    private Integer deleted;
    @ApiModelProperty(value = "创建人编码", example = "1")
    @ExcelColumn(name="创建人编码")
    private Integer createUser;
    @ApiModelProperty(value = "创建时间")
    @ExcelColumn(name="创建时间")
    @ExcelColumn(name="交易时间",index = 8,dateFormat = "yyyy-MM-dd HH:mm:ss",width = 10)
    private Date createTime;
    @ApiModelProperty(value = "更新人编码", example = "1")
    @ExcelColumn(name="更新人编码")
    private Integer updateUser;
    @ApiModelProperty(value = "更新时间")
    @ExcelColumn(name="更新时间")
    private Date updateTime;
    @ApiModelProperty(value = "备注")
    @ExcelColumn(name="备注")
    private String remark;
    @ApiModelProperty(value = "会员主键", example = "1")
    @ExcelColumn(name="会员主键")
    private Integer memberId;
    @ApiModelProperty(value = "变动类型:0=用工单收入;1=货运单收入;2=供餐单收入;3=提现申请;", example = "1")
    @ExcelColumn(name="变动类型:0=用工单收入;1=货运单收入;2=供餐单收入;3=提现申请;")
    private Integer type;
    @ApiModelProperty(value = "收支类型:1=收入;-1=支出;", example = "1")
    @ExcelColumn(name="收支类型:1=收入;-1=支出;")
    @ExcelColumn(name="收支类型", valueMapping="1=收入;-1=支出;",index = 5,width = 5)
    private Integer optType;
    @ApiModelProperty(value = "变动金额", example = "1")
    @ExcelColumn(name="变动金额")
    private BigDecimal amount;
    private Long amount;
    @ApiModelProperty(value = "变动前金额", example = "1")
    @ExcelColumn(name="变动前金额")
    private BigDecimal beforeAmount;
    private Long beforeAmount;
    @ApiModelProperty(value = "变动后金额", example = "1")
    @ExcelColumn(name="变动后金额")
    private BigDecimal afterAmount;
    private Long afterAmount;
    @ApiModelProperty(value = "业务记录主键", example = "1")
    @ExcelColumn(name="业务记录主键")
    private Integer objId;
    @ApiModelProperty(value = "业务类型:0=订单业务;1=提现业务;", example = "1")
    @ExcelColumn(name="业务类型:0=订单业务;1=提现业务;")
    private Integer objType;
    @ApiModelProperty(value = "业务状态:0=成功;1=失败;2=处理中;", example = "1")
    @ExcelColumn(name="业务状态:0=成功;1=失败;2=处理中;")
    private Integer status;
    @ApiModelProperty(value = "变动类型:0=用工单收入;1=货运单收入;2=供餐单收入;3=提现申请;", example = "1")
    @TableField(exist = false)
    @ExcelColumn(name="变动类型:0=用工单收入;1=货运单收入;2=供餐单收入;3=提现申请;")
    @ExcelColumn(name="变动业务类型",index = 7,width = 8)
    private String typeName;
    @ApiModelProperty(value = "微信交易流水号", example = "1")
    @ExcelColumn(name="微信交易流水号")
    @ExcelColumn(name="微信交易流水号",index = 9,width = 8)
    private String transactionNo;
    @ApiModelProperty(value = "变查询开始时间", example = "1")
@@ -99,4 +85,24 @@
    @ApiModelProperty(value = "变查询结束时间", example = "1")
    @TableField(exist = false)
    private Date endTime;
    @ApiModelProperty(value = "变动金额(元)", example = "1")
    @TableField(exist = false)
    @ExcelColumn(name="变动金额(元)",index = 6,width = 8)
    private Double amountInfo;
    @ApiModelProperty(value = "用户姓名", example = "1")
    @TableField(exist = false)
    @ExcelColumn(name="用户姓名",index = 3,width = 5)
    private String memberName;
    @ApiModelProperty(value = "用户昵称", example = "1")
    @TableField(exist = false)
    @ExcelColumn(name="用户昵称",index = 2,width = 5)
    private String memberNickname;
    @ApiModelProperty(value = "用户手机号", example = "1")
    @TableField(exist = false)
    @ExcelColumn(name="用户手机号",index = 4,width = 6)
    private String memberPhone;
    @ApiModelProperty(value = "用户openId", example = "1")
    @TableField(exist = false)
    @ExcelColumn(name="用户openid" ,index = 1,width = 6)
    private String openid;
}
server/services/src/main/java/com/doumee/service/business/impl/MemberRevenueServiceImpl.java
@@ -5,12 +5,14 @@
import com.doumee.core.model.PageWrap;
import com.doumee.core.utils.Utils;
import com.doumee.dao.business.MemberRevenueMapper;
import com.doumee.dao.business.model.Member;
import com.doumee.dao.business.model.MemberRevenue;
import com.doumee.service.business.MemberRevenueService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.github.yulichang.wrapper.MPJLambdaWrapper;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@@ -89,76 +91,34 @@
    @Override
    public PageData<MemberRevenue> findPage(PageWrap<MemberRevenue> pageWrap) {
        IPage<MemberRevenue> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
        QueryWrapper<MemberRevenue> queryWrapper = new QueryWrapper<>();
        MPJLambdaWrapper<MemberRevenue> queryWrapper = new MPJLambdaWrapper<MemberRevenue>()
                .selectAll(MemberRevenue.class)
                .selectAs(Member::getOpenid,MemberRevenue::getOpenid)
                .selectAs(Member::getName,MemberRevenue::getMemberName)
                .selectAs(Member::getNickName,MemberRevenue::getMemberNickname)
                .selectAs(Member::getTelephone,MemberRevenue::getMemberPhone)
                .leftJoin(Member.class,Member::getId,MemberRevenue::getMemberId);
        Utils.MP.blankToNull(pageWrap.getModel());
        pageWrap.getModel().setDeleted(Constants.ZERO);
        if (pageWrap.getModel().getId() != null) {
            queryWrapper.lambda().eq(MemberRevenue::getId, pageWrap.getModel().getId());
        }
        if (pageWrap.getModel().getDeleted() != null) {
            queryWrapper.lambda().eq(MemberRevenue::getDeleted, pageWrap.getModel().getDeleted());
        }
        if (pageWrap.getModel().getCreateUser() != null) {
            queryWrapper.lambda().eq(MemberRevenue::getCreateUser, pageWrap.getModel().getCreateUser());
        }
        if (pageWrap.getModel().getCreateTime() != null) {
            queryWrapper.lambda().ge(MemberRevenue::getCreateTime, Utils.Date.getStart(pageWrap.getModel().getCreateTime()));
            queryWrapper.lambda().le(MemberRevenue::getCreateTime, Utils.Date.getEnd(pageWrap.getModel().getCreateTime()));
        }
        if (pageWrap.getModel().getUpdateUser() != null) {
            queryWrapper.lambda().eq(MemberRevenue::getUpdateUser, pageWrap.getModel().getUpdateUser());
        }
        if (pageWrap.getModel().getUpdateTime() != null) {
            queryWrapper.lambda().ge(MemberRevenue::getUpdateTime, Utils.Date.getStart(pageWrap.getModel().getUpdateTime()));
            queryWrapper.lambda().le(MemberRevenue::getUpdateTime, Utils.Date.getEnd(pageWrap.getModel().getUpdateTime()));
        }
        if (pageWrap.getModel().getRemark() != null) {
            queryWrapper.lambda().eq(MemberRevenue::getRemark, pageWrap.getModel().getRemark());
        }
        if (pageWrap.getModel().getMemberId() != null) {
            queryWrapper.lambda().eq(MemberRevenue::getMemberId, pageWrap.getModel().getMemberId());
        }
        if (pageWrap.getModel().getType() != null) {
            queryWrapper.lambda().eq(MemberRevenue::getType, pageWrap.getModel().getType());
        }
        if (pageWrap.getModel().getOptType() != null) {
            queryWrapper.lambda().eq(MemberRevenue::getOptType, pageWrap.getModel().getOptType());
        }
        if (pageWrap.getModel().getAmount() != null) {
            queryWrapper.lambda().eq(MemberRevenue::getAmount, pageWrap.getModel().getAmount());
        }
        if (pageWrap.getModel().getBeforeAmount() != null) {
            queryWrapper.lambda().eq(MemberRevenue::getBeforeAmount, pageWrap.getModel().getBeforeAmount());
        }
        if (pageWrap.getModel().getAfterAmount() != null) {
            queryWrapper.lambda().eq(MemberRevenue::getAfterAmount, pageWrap.getModel().getAfterAmount());
        }
        if (pageWrap.getModel().getObjId() != null) {
            queryWrapper.lambda().eq(MemberRevenue::getObjId, pageWrap.getModel().getObjId());
        }
        if (pageWrap.getModel().getObjType() != null) {
            queryWrapper.lambda().eq(MemberRevenue::getObjType, pageWrap.getModel().getObjType());
        }
        if (pageWrap.getModel().getStatus() != null) {
            queryWrapper.lambda().eq(MemberRevenue::getStatus, pageWrap.getModel().getStatus());
        }
        if (StringUtils.isNotBlank(pageWrap.getModel().getTransactionNo())) {
            queryWrapper.lambda().like(MemberRevenue::getTransactionNo, pageWrap.getModel().getTransactionNo());
        }
        queryWrapper.lambda().ge(pageWrap.getModel().getStartTime()!=null,MemberRevenue::getCreateTime,pageWrap.getModel().getStartTime());
        queryWrapper.lambda().ne(pageWrap.getModel().getEndTime()!=null,MemberRevenue::getCreateTime,pageWrap.getModel().getEndTime());
        for(PageWrap.SortData sortData: pageWrap.getSorts()) {
            if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) {
                queryWrapper.orderByDesc(sortData.getProperty());
            } else {
                queryWrapper.orderByAsc(sortData.getProperty());
            }
        }
        PageData<MemberRevenue> result =  PageData.from(memberRevenueMapper.selectPage(page, queryWrapper));
        queryWrapper.eq(pageWrap.getModel().getId() != null,MemberRevenue::getId, pageWrap.getModel().getId());
        queryWrapper.eq(pageWrap.getModel().getDeleted() != null,MemberRevenue::getDeleted, pageWrap.getModel().getDeleted());
        queryWrapper.eq(pageWrap.getModel().getCreateUser() != null,MemberRevenue::getCreateUser, pageWrap.getModel().getCreateUser());
        queryWrapper.eq(pageWrap.getModel().getRemark() != null,MemberRevenue::getRemark, pageWrap.getModel().getRemark());
        queryWrapper.eq(pageWrap.getModel().getMemberId() != null,MemberRevenue::getMemberId, pageWrap.getModel().getMemberId());
        queryWrapper.eq(pageWrap.getModel().getType() != null,MemberRevenue::getType, pageWrap.getModel().getType());
        queryWrapper.eq(pageWrap.getModel().getOptType() != null,MemberRevenue::getOptType, pageWrap.getModel().getOptType());
        queryWrapper.eq(pageWrap.getModel().getObjId() != null,MemberRevenue::getObjId, pageWrap.getModel().getObjId());
        queryWrapper.eq(pageWrap.getModel().getObjType() != null,MemberRevenue::getObjType, pageWrap.getModel().getObjType());
        queryWrapper.eq(pageWrap.getModel().getStatus() != null,MemberRevenue::getStatus, pageWrap.getModel().getStatus());
        queryWrapper.like(StringUtils.isNotBlank(pageWrap.getModel().getTransactionNo()),MemberRevenue::getTransactionNo, pageWrap.getModel().getTransactionNo());
        queryWrapper.ge(pageWrap.getModel().getStartTime()!=null,MemberRevenue::getCreateTime,pageWrap.getModel().getStartTime());
        queryWrapper.ne(pageWrap.getModel().getEndTime()!=null,MemberRevenue::getCreateTime,pageWrap.getModel().getEndTime());
        queryWrapper.orderByDesc(MemberRevenue::getCreateTime);
        PageData<MemberRevenue> result =  PageData.from(memberRevenueMapper.selectJoinPage(page,MemberRevenue.class,  queryWrapper));
        if(result!=null && result.getRecords()!=null){
            for(MemberRevenue model :result.getRecords()){
                model.setTypeName(Constants.RevenueType.getObjName(model.getType()));
                model.setAmountInfo(Constants.getFormatMoney(model.getAmount()));
            }
        }
        return result;