Merge #136 into master from cc_20260508_adjustment

feat:费用单费用调整单合并

* cc_20260508_adjustment: (20 commits squashed)

  - feat:费用单调整

  - feat:费用调整

  - feat:新增审批

  - feat:费用调整单

  - feat:调整单

  - feat:自动分账

  - feat:填写添加门店

  - feat:流水查询条件

  - Merge branch 'master' into cc_20260508_adjustment

  - feat:费用流水筛选条件

  - feat:getAdjustAmount

  - feat:提现申请单导出

  - feat:提现申请单导出 状态

  - feat:提现申请单导出 状态

  - Merge branch 'cc_20260513_withdrawApplication_export' into cc_20260508_adjustment
    
    # Conflicts:
    #	coolstore-partner-model/src/main/java/com/cool/store/dto/wallet/WithdrawApplicationDTO.java

  - feat:提现申请单导出 状态

  - feat:导出

  - feat:认款完成状态的费用单和调整单,若存在关联的费用分账单,不允许删除,未关联分账单的可以删除

  - feat:费用单费用调整单合并

  - feat:费用单费用调整单合并

Signed-off-by: 正新 <accounts_6964c7bcd2a2c377c5bbd01b@mail.teambition.com>
Merged-by: 正新 <accounts_6964c7bcd2a2c377c5bbd01b@mail.teambition.com>

CR-link: https://codeup.aliyun.com/692ea314dec569489f6f167c/hangzhou/java/custom_zxjp/change/136
This commit is contained in:
正新
2026-05-13 08:50:21 +00:00
parent a2648eaed4
commit 150b709b74
30 changed files with 489 additions and 69 deletions

View File

@@ -1,5 +1,9 @@
package com.cool.store.dto.wallet;
import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import com.cool.store.enums.fees.AllocationPayStatusEnum;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@@ -17,39 +21,83 @@ public class WithdrawApplicationDTO {
private static final long serialVersionUID = 1L;
@ApiModelProperty("主键ID")
@ExcelIgnore
private Long id;
@ApiModelProperty("提现申请单号")
@ExcelProperty(value = "提现申请单号", order = 1)
@ColumnWidth(30)
private String withdrawNo;
@ApiModelProperty("提现账户名称")
@ExcelProperty(value = "提现账户名称", order = 2)
@ColumnWidth(30)
private String accountName;
@ApiModelProperty("提现金额")
@ExcelProperty(value = "提现金额", order = 3)
@ColumnWidth(30)
private BigDecimal amount;
@ApiModelProperty("到账银行卡号")
@ExcelProperty(value = "到账银行卡号", order = 4)
@ColumnWidth(30)
private String bankCardNo;
@ApiModelProperty("银行所属银行")
@ExcelProperty(value = "银行所属银行", order = 5)
@ColumnWidth(30)
private String bankName;
@ApiModelProperty("状态1-已分账 2-分账失败 3-分账中 5-待分账)")
@ExcelIgnore
private Integer status;
@ApiModelProperty("状态名称")
@ExcelProperty(value = "状态", order = 6)
@ColumnWidth(30)
private String statusName;
@ApiModelProperty("失败原因")
@ExcelProperty(value = "失败原因", order = 7)
@ColumnWidth(30)
private String failReason;
@ApiModelProperty("门店ID")
@ExcelIgnore
private String relateStoreId;
@ApiModelProperty("门店名称")
@ExcelProperty(value = "门店名称", order = 8)
@ColumnWidth(30)
private String relateStoreName;
@ApiModelProperty("备注")
@ExcelProperty(value = "备注", order = 9)
@ColumnWidth(30)
private String remark;
@ApiModelProperty("创建人")
@ExcelIgnore
private String createUserId;
@ApiModelProperty("创建人姓名")
@ExcelProperty(value = "创建人姓名", order = 10)
@ColumnWidth(30)
private String createUserName;
@ApiModelProperty("创建时间")
@ExcelProperty(value = "创建时间", order = 11)
@ColumnWidth(30)
private Date createTime;
@ApiModelProperty("更新时间")
@ExcelIgnore
private Date updateTime;
public String getStatusName() {
return AllocationPayStatusEnum.getOtherDescByStatus(status);
}
}

View File

@@ -104,4 +104,8 @@ public class AdjustmentOrderDO {
@ApiModelProperty("支付时间")
@Column(name = "pay_time")
private Date payTime;
@ApiModelProperty("拒绝原因")
@Column(name = "reject_reason")
private String rejectReason;
}

View File

@@ -88,4 +88,16 @@ public class WithdrawApplicationDO implements Serializable {
*/
@Column(name = "update_time")
private Date updateTime;
/**
* 门店ID
*/
@Column(name = "relate_store_id")
private String relateStoreId;
/**
* 备注
*/
@Column(name = "remark")
private String remark;
}

View File

@@ -0,0 +1,26 @@
package com.cool.store.request;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
/**
* 调整单审批请求
*/
@Data
public class AdjustmentApprovalRequest implements Serializable {
@ApiModelProperty("调整单ID")
@NotNull(message = "调整单ID不能为空")
private Long id;
@ApiModelProperty("审批结果 1-通过 2-拒绝")
@NotNull(message = "审批结果不能为空")
private Integer approvalResult;
@ApiModelProperty("拒绝原因(拒绝时必填)")
private String rejectReason;
}

View File

@@ -43,6 +43,9 @@ public class AdjustmentOrderPageRequest extends PageBasicInfo implements Seriali
@ApiModelProperty("认领结束时间")
private Date claimEndTime;
@ApiModelProperty("创建人ID")
private String createUserId;
private String storeId;
private List<String> regionIds;

View File

@@ -35,4 +35,10 @@ public class WithdrawApplicationRequest implements Serializable {
@ApiModelProperty(value = "提现账户", required = true)
@NotBlank(message = "提现账户不能为空")
private String accountNo;
@ApiModelProperty(value = "门店ID")
private String relateStoreId;
@ApiModelProperty(value = "备注")
private String remark;
}

View File

@@ -20,10 +20,14 @@ public class CoolTradeRecodePageRequest extends PageBasicInfo {
private Integer walletType;
@ApiModelProperty(value = "关键字(账户名称,账户编号,业务系统付款单号,提现银行卡号)",required = true)
private String keyword;
@ApiModelProperty(value = "1.转账 2.提现 3.充值",required = false)
private Integer tradeType;
@ApiModelProperty(value = "关键字(门店编号,门店名称)",required = true)
private String storeKeyword;
@ApiModelProperty(value = "费用科目",required = true)
private Integer feeItemId;
@ApiModelProperty(value = "费用科目Code",required = false)
private String expenseTypeCode;
@ApiModelProperty(value = "组织ID",required = false,hidden = true)
private Long orgId;
@@ -37,6 +41,7 @@ public class CoolTradeRecodePageRequest extends PageBasicInfo {
target.setFeeItemId(this.getFeeItemId());
target.setCurrentPage(this.getPageNum());
target.setPageSize(this.getPageSize());
target.setTradeType(this.getTradeType());
return target;
}

View File

@@ -21,6 +21,8 @@ public class TradeRecodePageRequest {
private String keyword;
@ApiModelProperty(value = "关键字(门店编号,门店名称)",required = true)
private String storeKeyword;
@ApiModelProperty(value = "1.转账 2.提现 3.充值",required = false)
private Integer tradeType;
@ApiModelProperty(value = "费用科目",required = true)
private Integer feeItemId;
@ApiModelProperty(value = "当前页码",required = true)

View File

@@ -6,6 +6,7 @@ import com.alibaba.excel.annotation.format.DateTimeFormat;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import com.cool.store.annotation.DictField;
import com.cool.store.converter.StringListConverter;
import com.cool.store.enums.ExpenseSheetTypeEnum;
import com.cool.store.enums.wallet.AdjustTypeEnum;
import com.cool.store.enums.wallet.DocStatusEnum;
import io.swagger.annotations.ApiModelProperty;
@@ -23,6 +24,15 @@ public class AdjustmentOrderResponse implements Serializable {
@ExcelIgnore
private Long id;
@ApiModelProperty("费用单类型 1-费用单 2-调整单")
@ExcelIgnore
private Integer expenseSheetType;
@ApiModelProperty("单据类型")
@ExcelProperty(value = "单据类型", order = 0)
@ColumnWidth(30)
private String expenseSheetTypeName;
@ApiModelProperty("调整单号")
@ExcelProperty(value = "调整单号", order = 1)
@ColumnWidth(30)
@@ -157,9 +167,10 @@ public class AdjustmentOrderResponse implements Serializable {
@ColumnWidth(30)
private Date payTime;
@ApiModelProperty("费用单类型 1-费用单 2-调整单")
@ExcelIgnore
private Integer expenseSheetType;
@ApiModelProperty("拒绝原因")
@ExcelProperty(value = "拒绝原因", order = 21)
@ColumnWidth(30)
private String rejectReason;
public String getAdjustTypeName() {
AdjustTypeEnum adjustTypeEnum = AdjustTypeEnum.fromCode(this.adjustType);
@@ -170,4 +181,17 @@ public class AdjustmentOrderResponse implements Serializable {
DocStatusEnum docStatusEnum = DocStatusEnum.fromStatus(this.status);
return docStatusEnum!=null?docStatusEnum.getDesc():"";
}
public String getExpenseSheetTypeName(){
ExpenseSheetTypeEnum expenseSheetTypeEnum = ExpenseSheetTypeEnum.getByCode(this.expenseSheetType);
return expenseSheetTypeEnum!=null?expenseSheetTypeEnum.getDesc():"";
}
public BigDecimal getAdjustAmount() {
if (this.adjustType!=null && this.adjustType==2){
return BigDecimal.ZERO.subtract(this.adjustAmount);
}
return this.adjustAmount;
}
}

View File

@@ -50,4 +50,13 @@ public class WithdrawApplicationResponse implements Serializable {
@ApiModelProperty("更新时间")
private Date updateTime;
@ApiModelProperty("门店ID")
private String relateStoreId;
@ApiModelProperty("门店名称")
private String relateStoreName;
@ApiModelProperty("备注")
private String remark;
}