资金管理相关接口

This commit is contained in:
lym
2025-05-13 11:36:20 +08:00
parent c30e6c7545
commit b9e7481bdf
64 changed files with 3678 additions and 9 deletions
@@ -0,0 +1,26 @@
package com.cf.imes.module.system.api.advertisement;
import com.cf.imes.module.system.enums.ApiConstants;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.tags.Tag;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;
@FeignClient(name = ApiConstants.NAME) // TODO 晨丰:fallbackFactory =
@Tag(name = "RPC 服务 - 广告管理")
public interface AdvertisementApi {
String PREFIX = ApiConstants.PREFIX + "/ad";
@GetMapping(PREFIX + "/published")
@Operation(summary = "结束发布广告")
@Parameter(name = "id", description = "广告id", required = true)
Boolean published(@RequestParam("id") Long id) ;
@GetMapping(PREFIX + "/publishing")
@Operation(summary = "立即发布广告")
@Parameter(name = "id", description = "广告id", required = true)
Boolean publishing(@RequestParam("id") Long id) ;
}
@@ -29,4 +29,8 @@ public class DictTypeConstants {
public static final String PLATE_TEXTURE_TYPE = "plate_texture_type";// 板材纹路:0有 1无
public static final String ADVERTISEMENT_POSITION = "advertisement_position";
}
@@ -422,5 +422,24 @@ public class ErrorCodeConstants {
public static final ErrorCode INVOICE_FILE_DATA_ERROR = new ErrorCode(1_002_043_007, "发票附件下载失败,请重新下载或稍等重试");
public static final ErrorCode PRODUCTS_NO_EXIST = new ErrorCode(1_002_044_001, "当前产品不存在");
public static final ErrorCode PRODUCTS_DETAIL_NO_EXIST = new ErrorCode(1_002_044_002, "当前产品的规则不存在");
public static final ErrorCode PRODUCTS_DURATION_NOT_NULL = new ErrorCode(1_002_044_003, "购买方式为时长时,需确定产品时长");
public static final ErrorCode PRODUCTS_OUTPUT_NOT_NULL = new ErrorCode(1_002_044_004, "购买方式为产量时,需确定产量数量");
public static final ErrorCode PRODUCTS_DETAIL_DURATION_EXIST = new ErrorCode(1_002_044_005, "存在当前时长的产品定价规则");
public static final ErrorCode PRODUCTS_DETAIL_OUTPUT_EXIST = new ErrorCode(1_002_044_006, "存在当前产量的产品定价规则");
public static final ErrorCode PRODUCTS_DURATION_NUM_ERR = new ErrorCode(1_002_044_007, "产品定价规则,时长数据设置有误");
public static final ErrorCode PRODUCTS_DURATION_INT_ERR = new ErrorCode(1_002_044_008, "产品定价规则,时长数据为正整数");
public static final ErrorCode PRODUCTS_DURATION_UNIT_ERR = new ErrorCode(1_002_044_009, "产品定价规则,时长单位设置有误");
public static final ErrorCode ADVERTISEMENT_POSITION_NO_EXIST = new ErrorCode(1_003_001_001, "广告所选放置位置不存在");
public static final ErrorCode ADVERTISEMENT_NO_EXIST = new ErrorCode(1_003_001_002, "广告不存在");
public static final ErrorCode ADVERTISEMENT_STATUS_ERROR = new ErrorCode(1_003_001_003, "当前广告已经发布,无需立即发布");
public static final ErrorCode ADVERTISEMENT_STATUS_ERROR2 = new ErrorCode(1_003_001_004, "当前广告已过结束时间,请点击重新发布");
public static final ErrorCode ADVERTISEMENT_END_ERROR = new ErrorCode(1_003_001_005, "当前广告未发布,无需结束发布");
public static final ErrorCode ADVERTISEMENT_END_ERROR2 = new ErrorCode(1_003_001_006, "当前广告已结束,无需立即结束");
public static final ErrorCode ADVERTISEMENT_FAIL = new ErrorCode(1_003_001_007, "自动发布失败");
public static final ErrorCode RECHARGE_ACTIVE_NO_EXIST = new ErrorCode(1_004_001_001, "当前赠送金活动不存在");
}
@@ -0,0 +1,64 @@
package com.cf.imes.module.system.enums.advertisement;
import com.cf.imes.framework.common.core.IntArrayValuable;
import lombok.AllArgsConstructor;
import lombok.Getter;
import java.util.Arrays;
import java.util.Objects;
/**
* 广告状态单位态枚举
*
* @author 晨丰科技
*/
@Getter
@AllArgsConstructor
public enum AdvertisementStatusEnum implements IntArrayValuable {
ALL(0, "全部"),
UNPUBLISHED(1, "未发布"),
PUBLISHED(2, "已发布"),
ENDED(3, "已结束");
public static final int[] ARRAYS = Arrays.stream(values()).mapToInt(AdvertisementStatusEnum::getStatus).toArray();
/**
* 状态值
*/
private final Integer status;
/**
* 状态名
*/
private final String name;
@Override
public int[] array() {
return ARRAYS;
}
public static boolean isAll(String name) {
return Objects.equals(ALL.name, name);
}
public static boolean isUnpublished(String name) {
return Objects.equals(UNPUBLISHED.name, name);
}
public static boolean isPublished(String name) {
return Objects.equals(PUBLISHED.name, name);
}
public static boolean isEnded(String name) {
return Objects.equals(ENDED.name, name);
}
public static Integer getNameByStatus(String name) {
for (AdvertisementStatusEnum e : values()) {
if (e.getName().equals(name)) {
return e.getStatus();
}
}
return null;
}
}
@@ -0,0 +1,52 @@
package com.cf.imes.module.system.enums.advertisement;
import com.cf.imes.framework.common.core.IntArrayValuable;
import lombok.AllArgsConstructor;
import lombok.Getter;
import java.util.Arrays;
import java.util.Objects;
/**
* 延迟消息状态单位态枚举
*
* @author 晨丰科技
*/
@Getter
@AllArgsConstructor
public enum MessageStatusEnum implements IntArrayValuable {
PENDING(0, "待处理"),
PROCESSED(1, "已处理"),
CANCELLED(2, "已取消");
public static final int[] ARRAYS = Arrays.stream(values()).mapToInt(MessageStatusEnum::getStatus).toArray();
/**
* 状态值
*/
private final Integer status;
/**
* 状态名
*/
private final String name;
@Override
public int[] array() {
return ARRAYS;
}
public static boolean isPending(String name) {
return Objects.equals(PENDING.name, name);
}
public static boolean isProcessed(String name) {
return Objects.equals(PROCESSED.name, name);
}
public static boolean isCancelled(String name) {
return Objects.equals(CANCELLED.name, name);
}
}
@@ -0,0 +1,51 @@
package com.cf.imes.module.system.enums.products;
import com.cf.imes.framework.common.core.IntArrayValuable;
import lombok.AllArgsConstructor;
import lombok.Getter;
import java.util.Arrays;
import java.util.Objects;
/**
* 时长单位态枚举
*
* @author 晨丰科技
*/
@Getter
@AllArgsConstructor
public enum DurationUnitEnum implements IntArrayValuable {
YEAR(0, "year"),
MONTH(1, "month"),
DAY(2, "day");
public static final int[] ARRAYS = Arrays.stream(values()).mapToInt(DurationUnitEnum::getStatus).toArray();
/**
* 状态值
*/
private final Integer status;
/**
* 状态名
*/
private final String name;
@Override
public int[] array() {
return ARRAYS;
}
public static boolean isYear(String name) {
return Objects.equals(YEAR.name, name);
}
public static boolean isMonth(String name) {
return Objects.equals(MONTH.name, name);
}
public static boolean isDay(String name) {
return Objects.equals(DAY.name, name);
}
}
@@ -0,0 +1,51 @@
package com.cf.imes.module.system.enums.products;
import com.cf.imes.framework.common.core.IntArrayValuable;
import lombok.AllArgsConstructor;
import lombok.Getter;
import java.util.Arrays;
import java.util.Objects;
/**
* 产品状态枚举
*
* @author 晨丰科技
*/
@Getter
@AllArgsConstructor
public enum ProductStatusEnum implements IntArrayValuable {
PRODUCT_ALL(0, "全部"),
PRODUCT_WAITING_UPDATES(1, "待上架"),
PRODUCT_UPDATES(2, "已上架"),
PRODUCT_DELIS(3, "已下架");
public static final int[] ARRAYS = Arrays.stream(values()).mapToInt(ProductStatusEnum::getStatus).toArray();
/**
* 状态值
*/
private final Integer status;
/**
* 状态名
*/
private final String name;
@Override
public int[] array() {
return ARRAYS;
}
public static boolean isProductWaitingUpdates(Integer status) {
return Objects.equals(PRODUCT_WAITING_UPDATES.status, status);
}
public static boolean isProductUpdates(Integer status) {
return Objects.equals(PRODUCT_UPDATES.status, status);
}
public static boolean isProductDelis(Integer status) {
return Objects.equals(PRODUCT_DELIS.status, status);
}
}
@@ -0,0 +1,46 @@
package com.cf.imes.module.system.enums.products;
import com.cf.imes.framework.common.core.IntArrayValuable;
import lombok.AllArgsConstructor;
import lombok.Getter;
import java.util.Arrays;
import java.util.Objects;
/**
* 产品详情购买方式状态枚举
*
* @author 晨丰科技
*/
@Getter
@AllArgsConstructor
public enum ProductsPurchaseTypeEnum implements IntArrayValuable {
DURATION(0, "时长"),
OUTPUT(1, "产量");
public static final int[] ARRAYS = Arrays.stream(values()).mapToInt(ProductsPurchaseTypeEnum::getStatus).toArray();
/**
* 状态值
*/
private final Integer status;
/**
* 状态名
*/
private final String name;
@Override
public int[] array() {
return ARRAYS;
}
public static boolean isDURATION(Integer status) {
return Objects.equals(DURATION.status, status);
}
public static boolean isOUTPUT(Integer status) {
return Objects.equals(OUTPUT.status, status);
}
}
@@ -0,0 +1,46 @@
package com.cf.imes.module.system.enums.recharge;
import com.cf.imes.framework.common.core.IntArrayValuable;
import lombok.AllArgsConstructor;
import lombok.Getter;
import java.util.Arrays;
import java.util.Objects;
/**
* 充值赠送类型枚举
*
* @author 晨丰科技
*/
@Getter
@AllArgsConstructor
public enum PurchaseTypeEnum implements IntArrayValuable {
ONE(0, "满X送X"),
TWO(1, "每满X送X");
public static final int[] ARRAYS = Arrays.stream(values()).mapToInt(PurchaseTypeEnum::getStatus).toArray();
/**
* 状态值
*/
private final Integer status;
/**
* 状态名
*/
private final String name;
@Override
public int[] array() {
return ARRAYS;
}
public static boolean isOne(String name) {
return Objects.equals(ONE.name, name);
}
public static boolean isTwo(String name) {
return Objects.equals(TWO.name, name);
}
}
@@ -0,0 +1,50 @@
package com.cf.imes.module.system.enums.recharge;
import com.cf.imes.framework.common.core.IntArrayValuable;
import lombok.AllArgsConstructor;
import lombok.Getter;
import java.util.Arrays;
import java.util.Objects;
/**
* 充值类型枚举
*
* @author 晨丰科技
*/
@Getter
@AllArgsConstructor
public enum RechargeTypeEnum implements IntArrayValuable {
ONE(0, "微信、支付宝"),
TWO(1, "微信"),
THREE(2, "支付宝");
public static final int[] ARRAYS = Arrays.stream(values()).mapToInt(RechargeTypeEnum::getStatus).toArray();
/**
* 状态值
*/
private final Integer status;
/**
* 状态名
*/
private final String name;
@Override
public int[] array() {
return ARRAYS;
}
public static boolean isOne(String name) {
return Objects.equals(ONE.name, name);
}
public static boolean isTwo(String name) {
return Objects.equals(TWO.name, name);
}
public static boolean isThree(String name) {
return Objects.equals(THREE.name, name);
}
}