Browse Source

feature:统一修改处理,增添妙鸭壁纸

feature-1.1
Penny 3 years ago
parent
commit
e5d4bddffc
  1. 7
      bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/domain/AiPaint.java
  2. 7
      bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/domain/CdkLog.java
  3. 2
      bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/domain/CreatorProfit.java
  4. 7
      bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/domain/DiamondLog.java
  5. 7
      bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/domain/FhUser.java
  6. 7
      bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/domain/GoldLog.java
  7. 7
      bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/domain/PaintCdk.java
  8. 2
      bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/domain/ProfitVerifyOrder.java
  9. 7
      bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/domain/TiktokUser.java
  10. 7
      bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/domain/WxUser.java
  11. 4
      bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/dto/AiPaintPageDto.java
  12. 2
      bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/dto/CreatorProfitAdInsertDto.java
  13. 2
      bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/dto/CreatorProfitInviteInsertDto.java
  14. 2
      bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/dto/CreatorProfitUpdateDto.java
  15. 5
      bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/dto/DiamondLogPageDto.java
  16. 4
      bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/dto/FhLoginDto.java
  17. 26
      bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/dto/GeneratePaintCdkDto.java
  18. 2
      bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/dto/GetGoldDto.java
  19. 3
      bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/dto/GoldLogPageDto.java
  20. 4
      bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/dto/PaintCdkUseDto.java
  21. 2
      bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/dto/ProfitVerifyOrderDto.java
  22. 2
      bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/dto/ProfitVerifyOrderInsertDto.java
  23. 2
      bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/dto/TextToImgDto.java
  24. 2
      bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/dto/TextToImgLoveDto.java
  25. 4
      bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/dto/TiktokLoginDto.java
  26. 5
      bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/dto/WxLoginDto.java
  27. 2
      bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/dto/checkUserCanDownloadDto.java
  28. 25
      bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/enums/EnumAppType.java
  29. 2
      bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/vo/CreatorProfitVo.java
  30. 3
      bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/vo/WxUserLoginVo.java
  31. 3
      bnyer-common/bnyer-common-rocketmq/src/main/java/com/bnyer/common/rocketmq/domain/img/GoldRewardMessage.java
  32. 14
      bnyer-services/bnyer-img/src/main/java/com/bnyer/img/config/TiktokConfig.java
  33. 4
      bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/FhMiniController.java
  34. 10
      bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/TiktokMiniController.java
  35. 4
      bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/WxMiniController.java
  36. 24
      bnyer-services/bnyer-img/src/main/java/com/bnyer/img/listener/GoldRewardConsumer.java
  37. 3
      bnyer-services/bnyer-img/src/main/java/com/bnyer/img/mapper/AiPaintMapper.java
  38. 3
      bnyer-services/bnyer-img/src/main/java/com/bnyer/img/mapper/DiamondLogMapper.java
  39. 3
      bnyer-services/bnyer-img/src/main/java/com/bnyer/img/mapper/GoldLogMapper.java
  40. 3
      bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/DiamondLogService.java
  41. 3
      bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/FhUserService.java
  42. 8
      bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/GoldLogService.java
  43. 8
      bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/PaintCdkService.java
  44. 3
      bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/StableDiffusionService.java
  45. 2
      bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/TiktokImgService.java
  46. 13
      bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/TiktokUserService.java
  47. 13
      bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/WxUserService.java
  48. 5
      bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/AiPaintServiceImpl.java
  49. 4
      bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/DiamondLogServiceImpl.java
  50. 21
      bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/FhUserServiceImpl.java
  51. 31
      bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/GoldLogServiceImpl.java
  52. 11
      bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/PaintCdkServiceImpl.java
  53. 130
      bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/StableDiffusionServiceImpl.java
  54. 30
      bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/TiktokUserServiceImpl.java
  55. 14
      bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/WxUserServiceImpl.java
  56. 2
      bnyer-services/bnyer-img/src/main/java/com/bnyer/img/vo/CreatorProfitPreVo.java
  57. 3
      bnyer-services/bnyer-img/src/main/java/com/bnyer/img/vo/DiamondLogVo.java
  58. 4
      bnyer-services/bnyer-img/src/main/java/com/bnyer/img/vo/GoldLogVo.java
  59. 3
      bnyer-services/bnyer-img/src/main/java/com/bnyer/img/vo/TiktokSessionInfoVo.java
  60. 9
      bnyer-services/bnyer-img/src/main/resources/com/bnyer/img/mapper/AiPaintMapper.xml
  61. 3
      bnyer-services/bnyer-img/src/main/resources/com/bnyer/img/mapper/CdkLogMapper.xml
  62. 7
      bnyer-services/bnyer-img/src/main/resources/com/bnyer/img/mapper/DiamondLogMapper.xml
  63. 3
      bnyer-services/bnyer-img/src/main/resources/com/bnyer/img/mapper/FhUserMapper.xml
  64. 7
      bnyer-services/bnyer-img/src/main/resources/com/bnyer/img/mapper/GoldLogMapper.xml
  65. 3
      bnyer-services/bnyer-img/src/main/resources/com/bnyer/img/mapper/PaintCdkMapper.xml
  66. 3
      bnyer-services/bnyer-img/src/main/resources/com/bnyer/img/mapper/TiktokUserMapper.xml
  67. 3
      bnyer-services/bnyer-img/src/main/resources/com/bnyer/img/mapper/WxUserMapper.xml
  68. 2
      bnyer-services/bnyer-system/src/main/java/com/bnyer/system/mapper/CreatorProfitMapper.java
  69. 3
      bnyer-services/bnyer-system/src/main/resources/com/bnyer/system/mapper/WxUserMapper.xml

7
bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/domain/AiPaint.java

@ -157,6 +157,13 @@ public class AiPaint implements Serializable {
@ApiModelProperty(value="平台(1->抖音;2->快手;3->微信)")
private String source;
/**
* app类型(0->次元意境;1->妙鸭壁纸)
*/
@TableField(value = "app_type")
@ApiModelProperty(value="app类型(0->次元意境;1->妙鸭壁纸)")
private String appType;
/**
* 创建时间
*/

7
bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/domain/CdkLog.java

@ -59,6 +59,13 @@ public class CdkLog implements Serializable {
@ApiModelProperty(value="平台(1->抖音;2->快手;3->微信)")
private String source;
/**
* app类型(0->次元意境;1->妙鸭壁纸)
*/
@TableField(value = "app_type")
@ApiModelProperty(value="app类型(0->次元意境;1->妙鸭壁纸)")
private String appType;
/**
* 是否显示 (0->隐藏1->显示)
*/

2
bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/domain/CreatorProfit.java

@ -76,7 +76,7 @@ public class CreatorProfit extends BaseDomain {
* 应用类型(0->次元意境)
*/
@TableField(value = "app_type")
@ApiModelProperty(value="应用类型(0->次元意境)")
@ApiModelProperty(value="app类型(0->次元意境;1->妙鸭壁纸)")
private String appType;
/**

7
bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/domain/DiamondLog.java

@ -46,6 +46,13 @@ public class DiamondLog extends BaseDomain {
@ApiModelProperty(value="平台(0->Hub;1->抖音;2->快手;3->微信)")
private String source;
/**
* app类型(0->次元意境;1->妙鸭壁纸)
*/
@TableField(value = "app_type")
@ApiModelProperty(value="app类型(0->次元意境;1->妙鸭壁纸)")
private String appType;
private static final long serialVersionUID = 1L;
}

7
bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/domain/FhUser.java

@ -74,5 +74,12 @@ public class FhUser extends BaseDomain {
@ApiModelProperty(value="头像img地址")
private String img;
/**
* app类型(0->次元意境;1->妙鸭壁纸)
*/
@TableField(value = "app_type")
@ApiModelProperty(value="app类型(0->次元意境;1->妙鸭壁纸)")
private String appType;
private static final long serialVersionUID = 1L;
}

7
bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/domain/GoldLog.java

@ -46,5 +46,12 @@ public class GoldLog extends BaseDomain {
@ApiModelProperty(value="平台(1->抖音;2->快手;3->微信)")
private String source;
/**
* app类型(0->次元意境;1->妙鸭壁纸)
*/
@TableField(value = "app_type")
@ApiModelProperty(value="app类型(0->次元意境;1->妙鸭壁纸)")
private String appType;
private static final long serialVersionUID = 1L;
}

7
bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/domain/PaintCdk.java

@ -66,6 +66,13 @@ public class PaintCdk implements Serializable {
@ApiModelProperty(value="平台(1->抖音;2->快手;3->微信)")
private String source;
/**
* app类型(0->次元意境;1->妙鸭壁纸)
*/
@TableField(value = "app_type")
@ApiModelProperty(value="app类型(0->次元意境;1->妙鸭壁纸)")
private String appType;
/**
* 创建时间
*/

2
bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/domain/ProfitVerifyOrder.java

@ -63,7 +63,7 @@ public class ProfitVerifyOrder implements Serializable {
* 应用(0->bnyer)
*/
@TableField(value = "app_type")
@ApiModelProperty(value="应用(0->bnyer)")
@ApiModelProperty(value="app类型(0->次元意境;1->妙鸭壁纸)")
private String appType;
/**

7
bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/domain/TiktokUser.java

@ -66,5 +66,12 @@ public class TiktokUser extends BaseDomain {
@ApiModelProperty(value="头像img地址")
private String img;
/**
* app类型(0->次元意境;1->妙鸭壁纸)
*/
@TableField(value = "app_type")
@ApiModelProperty(value="app类型(0->次元意境;1->妙鸭壁纸)")
private String appType;
private static final long serialVersionUID = 1L;
}

7
bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/domain/WxUser.java

@ -74,5 +74,12 @@ public class WxUser extends BaseDomain {
@ApiModelProperty(value="头像img地址")
private String img;
/**
* app类型(0->次元意境;1->妙鸭壁纸)
*/
@TableField(value = "app_type")
@ApiModelProperty(value="app类型(0->次元意境;1->妙鸭壁纸)")
private String appType;
private static final long serialVersionUID = 1L;
}

4
bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/dto/AiPaintPageDto.java

@ -17,6 +17,10 @@ public class AiPaintPageDto extends BasePageDto {
@ApiModelProperty(value="平台渠道(1->抖音;2->快手;3->微信)")
private String source;
@NotEmpty(message = "app类型不能为空!")
@ApiModelProperty(value="app类型(0->次元意境;1->妙鸭壁纸)")
private String appType;
@NotNull(message = "绘图者id不能为空!")
@ApiModelProperty(value="绘图者id")
private Long painterId;

2
bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/dto/CreatorProfitAdInsertDto.java

@ -34,7 +34,7 @@ public class CreatorProfitAdInsertDto implements Serializable {
private String platform;
@NotBlank(message = "应用类型不能为空!")
@ApiModelProperty(value="应用类型(0->次元意境)")
@ApiModelProperty(value="app类型(0->次元意境;1->妙鸭壁纸)")
private String appType;
@NotNull(message = "用户id不能为空!")

2
bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/dto/CreatorProfitInviteInsertDto.java

@ -36,7 +36,7 @@ public class CreatorProfitInviteInsertDto implements Serializable {
private String platform;
@NotBlank(message = "应用类型不能为空!")
@ApiModelProperty(value="应用类型(0->次元意境)")
@ApiModelProperty(value="app类型(0->次元意境;1->妙鸭壁纸)")
private String appType;
public CreatorProfit extractParam(){

2
bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/dto/CreatorProfitUpdateDto.java

@ -47,7 +47,7 @@ public class CreatorProfitUpdateDto implements Serializable {
private String platform;
@NotBlank(message = "应用类型不能为空!")
@ApiModelProperty(value="应用类型(0->次元意境)")
@ApiModelProperty(value="app类型(0->次元意境;1->妙鸭壁纸)")
private String appType;
@NotBlank(message = "收益类型不能为空!")

5
bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/dto/DiamondLogPageDto.java

@ -13,6 +13,9 @@ public class DiamondLogPageDto extends BasePageDto {
@ApiModelProperty(value="用户id")
private Long userId;
@ApiModelProperty(value="平台(0->Hub;1->抖音;2->快手;3->微信)")
@ApiModelProperty(value="平台(1->抖音;2->快手;3->微信)")
private String source;
@ApiModelProperty(value="app类型(0->次元意境;1->妙鸭壁纸)")
private String appType;
}

4
bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/dto/FhLoginDto.java

@ -24,4 +24,8 @@ public class FhLoginDto implements Serializable {
@NotNull(message = "加密算法向量不能为空!")
@ApiModelProperty(value = "加密算法向量")
private String iv;
@NotNull(message = "appType不能为空!")
@ApiModelProperty(value="应用类型(0->次元意境;1->妙鸭壁纸)")
private String appType;
}

26
bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/dto/GeneratePaintCdkDto.java

@ -0,0 +1,26 @@
package com.bnyer.common.core.dto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
@Getter
@Setter
@ApiModel("生成画意值cdk接收类")
public class GeneratePaintCdkDto implements Serializable {
@NotNull(message = "app类型不能为空!")
@ApiModelProperty(value="app类型(0->次元意境;1->妙鸭壁纸)")
private String appType;
@NotNull(message = "生成数量不能为空!")
@ApiModelProperty(value="生成数量")
private int paintNum;
}

2
bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/dto/GetGoldDto.java

@ -22,7 +22,7 @@ public class GetGoldDto implements Serializable {
private Long userId;
@NotBlank(message = "应用类型不能为空!")
@ApiModelProperty(value="应用类型(0->次元意境)")
@ApiModelProperty(value="app类型(0->次元意境;1->妙鸭壁纸)")
private String appType;
@NotNull(message = "平台渠道不能为空!")

3
bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/dto/GoldLogPageDto.java

@ -15,4 +15,7 @@ public class GoldLogPageDto extends BasePageDto {
@ApiModelProperty(value="平台(0->Hub;1->抖音;2->快手;3->微信)")
private String source;
@ApiModelProperty(value="app类型(0->次元意境;1->妙鸭壁纸)")
private String appType;
}

4
bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/dto/PaintCdkUseDto.java

@ -1,7 +1,5 @@
package com.bnyer.common.core.dto;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
@ -29,6 +27,6 @@ public class PaintCdkUseDto implements Serializable {
private String source;
@NotNull(message = "应用不能为空!")
@ApiModelProperty(value="应用(0->次元意境)")
@ApiModelProperty(value="app类型(0->次元意境;1->妙鸭壁纸)")
private String appType;
}

2
bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/dto/ProfitVerifyOrderDto.java

@ -40,6 +40,6 @@ public class ProfitVerifyOrderDto implements Serializable {
@ApiModelProperty(value="平台(1->抖音;2->快手;3->微信)")
private String platform;
@ApiModelProperty(value="应用(0->bnyer)")
@ApiModelProperty(value="app类型(0->次元意境;1->妙鸭壁纸)")
private String appType;
}

2
bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/dto/ProfitVerifyOrderInsertDto.java

@ -23,6 +23,6 @@ public class ProfitVerifyOrderInsertDto implements Serializable {
@ApiModelProperty(value="平台(1->抖音;2->快手;3->微信)")
private String platform;
@ApiModelProperty(value="应用")
@ApiModelProperty(value="app类型(0->次元意境;1->妙鸭壁纸)")
private String appType;
}

2
bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/dto/TextToImgDto.java

@ -58,7 +58,7 @@ public class TextToImgDto implements Serializable {
@ApiModelProperty(value="绘图者昵称")
private String painterName;
@ApiModelProperty(value="应用")
@ApiModelProperty(value="app类型(0->次元意境;1->妙鸭壁纸)")
private String appType;
@ApiModelProperty(value="平台(1->抖音;2->快手;3->微信)")

2
bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/dto/TextToImgLoveDto.java

@ -30,7 +30,7 @@ public class TextToImgLoveDto implements Serializable {
@ApiModelProperty(value="绘图者昵称")
private String painterName;
@ApiModelProperty(value="应用")
@ApiModelProperty(value="app类型(0->次元意境;1->妙鸭壁纸)")
private String appType;
@ApiModelProperty(value="平台(1->抖音;2->快手;3->微信)")

4
bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/dto/TiktokLoginDto.java

@ -17,6 +17,10 @@ public class TiktokLoginDto implements Serializable {
@ApiModelProperty(value = "抖音code")
private String code;
@NotNull(message = "appType不能为空!")
@ApiModelProperty(value="应用类型(0->次元意境;1->妙鸭壁纸)")
private String appType;
@NotNull(message = "加密数据不能为空!")
@ApiModelProperty(value = "加密数据")
private String encryptedData;

5
bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/dto/WxLoginDto.java

@ -6,6 +6,7 @@ import lombok.Getter;
import lombok.Setter;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
@Getter
@ -24,4 +25,8 @@ public class WxLoginDto implements Serializable {
@NotBlank(message = "加密算法向量不能为空!")
@ApiModelProperty(value = "加密算法向量")
private String iv;
@NotNull(message = "appType不能为空!")
@ApiModelProperty(value="应用类型(0->次元意境;1->妙鸭壁纸)")
private String appType;
}

2
bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/dto/checkUserCanDownloadDto.java

@ -22,6 +22,6 @@ public class checkUserCanDownloadDto implements Serializable {
private String platform;
@NotNull(message = "应用不能为空!")
@ApiModelProperty(value="应用")
@ApiModelProperty(value="app类型(0->次元意境;1->妙鸭壁纸)")
private String appType;
}

25
bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/enums/EnumAppType.java

@ -0,0 +1,25 @@
package com.bnyer.common.core.enums;
import lombok.AllArgsConstructor;
import lombok.Getter;
import java.util.Arrays;
import java.util.Objects;
/**
* @author :penny
* @description : app类型枚举
*/
@Getter
@AllArgsConstructor
public enum EnumAppType {
YJ_APP("0","次元意境"),
MY_APP("1","妙鸭壁纸"),
;
private final String code;
private final String msg;
}

2
bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/vo/CreatorProfitVo.java

@ -38,7 +38,7 @@ public class CreatorProfitVo implements Serializable {
@ApiModelProperty(value="结算平台(0->抖音;1->快手;2->微信;3->uniapp)")
private String platform;
@ApiModelProperty(value="应用类型(0->次元意境)")
@ApiModelProperty(value="app类型(0->次元意境;1->妙鸭壁纸)")
private String appType;
@ApiModelProperty(value="收益类型(0->广告浏览;1->邀请;2->会员)")

3
bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/vo/WxUserLoginVo.java

@ -49,5 +49,8 @@ public class WxUserLoginVo implements Serializable {
@ApiModelProperty(value="排序")
private Integer sort;
@ApiModelProperty(value="app类型(0->次元意境;1->妙鸭壁纸)")
private String appType;
private static final long serialVersionUID = 1L;
}

3
bnyer-common/bnyer-common-rocketmq/src/main/java/com/bnyer/common/rocketmq/domain/img/GoldRewardMessage.java

@ -27,6 +27,9 @@ public class GoldRewardMessage {
@ApiModelProperty(value = "用户客户端类型(10用户-抖音 20用户-快手 30用户-微信 40艺术家-微信)")
private Integer userClientType;
@ApiModelProperty(value="app类型(0->次元意境;1->妙鸭壁纸)")
private String appType;
@ApiModelProperty(value="画意值枚举编码")
private String GoldCode;
}

14
bnyer-services/bnyer-img/src/main/java/com/bnyer/img/config/TiktokConfig.java

@ -22,11 +22,17 @@ import javax.annotation.Resource;
@RefreshScope
public class TiktokConfig implements WebMvcConfigurer {
@Value("${bnyer.img.tiktok.appId}")
private String appId;
@Value("${bnyer.img.tiktok.yjAppId}")
private String yjAppId;
@Value("${bnyer.img.tiktok.secret}")
private String secret;
@Value("${bnyer.img.tiktok.yjSecret}")
private String yjSecret;
@Value("${bnyer.img.tiktok.myAppId}")
private String myAppId;
@Value("${bnyer.img.tiktok.mySecret}")
private String mySecret;
@Value("${bnyer.img.tiktok.sessionInfoUrl}")
private String sessionInfoUrl;

4
bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/FhMiniController.java

@ -447,7 +447,7 @@ public class FhMiniController extends BaseController {
@PostMapping(value = "/queryGoldLogPage")
public TableDataInfo queryGoldLogPage(@Validated @RequestBody @ApiParam("画意值对象") GoldLogPageDto dto){
PageHelper.startPage(dto.getPageNum(), dto.getPageSize());
List<GoldLogVo> goldLogs = goldLogService.queryPage(dto.getUserId(), "2");
List<GoldLogVo> goldLogs = goldLogService.queryPage(dto.getUserId(), "2",dto.getAppType());
return getDataTable(goldLogs);
}
@ -455,7 +455,7 @@ public class FhMiniController extends BaseController {
@PostMapping(value = "/queryDiamondLogPage")
public TableDataInfo queryDiamondLogPage(@Validated @RequestBody @ApiParam("意心对象") DiamondLogPageDto dto){
PageHelper.startPage(dto.getPageNum(), dto.getPageSize());
List<DiamondLogVo> diamondLogs = diamondLogService.queryPage(dto.getUserId(), "2");
List<DiamondLogVo> diamondLogs = diamondLogService.queryPage(dto.getUserId(), "2",dto.getAppType());
return getDataTable(diamondLogs);
}

10
bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/TiktokMiniController.java

@ -458,9 +458,9 @@ public class TiktokMiniController extends BaseController {
}
@ApiOperation(value="生成cdk")
@PostMapping(value = "/generatorCdk/{paintNum}")
public AjaxResult generatorCdk(@PathVariable int paintNum){
paintCdkService.generatorCdk("1",paintNum);
@PostMapping(value = "/generatorCdk")
public AjaxResult generatorCdk(@Validated @RequestBody @ApiParam("生成画意值cdk对象") GeneratePaintCdkDto dto){
paintCdkService.generatorCdk("1",dto.getAppType(),dto.getPaintNum());
return AjaxResult.success();
}
@ -482,7 +482,7 @@ public class TiktokMiniController extends BaseController {
@PostMapping(value = "/queryGoldLogPage")
public TableDataInfo queryGoldLogPage(@Validated @RequestBody @ApiParam("画意值对象") GoldLogPageDto dto){
PageHelper.startPage(dto.getPageNum(), dto.getPageSize());
List<GoldLogVo> goldLogs = goldLogService.queryPage(dto.getUserId(), "1");
List<GoldLogVo> goldLogs = goldLogService.queryPage(dto.getUserId(), "1", dto.getAppType());
return getDataTable(goldLogs);
}
@ -490,7 +490,7 @@ public class TiktokMiniController extends BaseController {
@PostMapping(value = "/queryDiamondLogPage")
public TableDataInfo queryDiamondLogPage(@Validated @RequestBody @ApiParam("意心对象") DiamondLogPageDto dto){
PageHelper.startPage(dto.getPageNum(), dto.getPageSize());
List<DiamondLogVo> diamondLogs = diamondLogService.queryPage(dto.getUserId(), "1");
List<DiamondLogVo> diamondLogs = diamondLogService.queryPage(dto.getUserId(),"1",dto.getAppType());
return getDataTable(diamondLogs);
}

4
bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/WxMiniController.java

@ -473,7 +473,7 @@ public class WxMiniController extends BaseController {
@PostMapping(value = "/queryGoldLogPage")
public TableDataInfo queryGoldLogPage(@Validated @RequestBody @ApiParam("画意值对象") GoldLogPageDto dto){
PageHelper.startPage(dto.getPageNum(), dto.getPageSize());
List<GoldLogVo> goldLogs = goldLogService.queryPage(dto.getUserId(), "3");
List<GoldLogVo> goldLogs = goldLogService.queryPage(dto.getUserId(), "3",dto.getAppType());
return getDataTable(goldLogs);
}
@ -481,7 +481,7 @@ public class WxMiniController extends BaseController {
@PostMapping(value = "/queryDiamondLogPage")
public TableDataInfo queryDiamondLogPage(@Validated @RequestBody @ApiParam("意心对象") DiamondLogPageDto dto){
PageHelper.startPage(dto.getPageNum(), dto.getPageSize());
List<DiamondLogVo> diamondLogs = diamondLogService.queryPage(dto.getUserId(), "3");
List<DiamondLogVo> diamondLogs = diamondLogService.queryPage(dto.getUserId(), "3",dto.getAppType());
return getDataTable(diamondLogs);
}

24
bnyer-services/bnyer-img/src/main/java/com/bnyer/img/listener/GoldRewardConsumer.java

@ -48,8 +48,8 @@ public class GoldRewardConsumer extends EnhanceMessageHandler implements RocketM
GoldRewardMessage goldReward = message.getObject(GoldRewardMessage.class);
if(StringUtils.isNotNull(goldReward.getPlatform())){
switch (goldReward.getPlatform()){
case "0":
TiktokUser tiktokUser = tiktokUserService.getUserById(goldReward.getUserId());
case "1":
TiktokUser tiktokUser = tiktokUserService.getUserById(goldReward.getUserId(),goldReward.getAppType());
tiktokUser.setGoldNum(tiktokUser.getGoldNum() + goldReward.getGoldNum());
tiktokUserService.updateTiktokUser(tiktokUser);
//更新用户画意值奖励并写入记录
@ -57,11 +57,12 @@ public class GoldRewardConsumer extends EnhanceMessageHandler implements RocketM
tiktokGoldLog.setGoldNum(goldReward.getGoldNum());
tiktokGoldLog.setUserId(goldReward.getUserId());
tiktokGoldLog.setSource("1");
tiktokGoldLog.setAppType(goldReward.getAppType());
tiktokGoldLog.setReason(GoldEnum.getValueByCode(goldReward.getGoldCode()));
goldLogService.insert(tiktokGoldLog);
break;
case "1":
FhUser fhUser = fhUserService.getUserById(goldReward.getUserId());
case "2":
FhUser fhUser = fhUserService.getUserById(goldReward.getUserId(),goldReward.getAppType());
fhUser.setGoldNum(fhUser.getGoldNum() + goldReward.getGoldNum());
fhUserService.updateFhUser(fhUser);
//更新用户画意值奖励并写入记录
@ -69,11 +70,12 @@ public class GoldRewardConsumer extends EnhanceMessageHandler implements RocketM
fhGoldLog.setGoldNum(goldReward.getGoldNum());
fhGoldLog.setUserId(goldReward.getUserId());
fhGoldLog.setSource("2");
fhGoldLog.setAppType(goldReward.getAppType());
fhGoldLog.setReason(GoldEnum.getValueByCode(goldReward.getGoldCode()));
goldLogService.insert(fhGoldLog);
break;
case "2":
WxUser wxUser = wxUserService.getUserById(goldReward.getUserId());
case "3":
WxUser wxUser = wxUserService.getUserById(goldReward.getUserId(),goldReward.getAppType());
wxUser.setGoldNum(wxUser.getGoldNum() + goldReward.getGoldNum());
wxUserService.updateWxUser(wxUser);
//更新用户画意值奖励并写入记录
@ -81,6 +83,7 @@ public class GoldRewardConsumer extends EnhanceMessageHandler implements RocketM
wxGoldLog.setGoldNum(goldReward.getGoldNum());
wxGoldLog.setUserId(goldReward.getUserId());
wxGoldLog.setSource("3");
wxGoldLog.setAppType(goldReward.getAppType());
wxGoldLog.setReason(GoldEnum.getValueByCode(goldReward.getGoldCode()));
goldLogService.insert(wxGoldLog);
break;
@ -88,7 +91,7 @@ public class GoldRewardConsumer extends EnhanceMessageHandler implements RocketM
}else{
switch (goldReward.getUserClientType()){
case 10:
TiktokUser tiktokUser = tiktokUserService.getUserById(goldReward.getUserId());
TiktokUser tiktokUser = tiktokUserService.getUserById(goldReward.getUserId(),goldReward.getAppType());
tiktokUser.setGoldNum(tiktokUser.getGoldNum() + goldReward.getGoldNum());
tiktokUserService.updateTiktokUser(tiktokUser);
//更新用户画意值奖励并写入记录
@ -96,11 +99,12 @@ public class GoldRewardConsumer extends EnhanceMessageHandler implements RocketM
tiktokGoldLog.setGoldNum(goldReward.getGoldNum());
tiktokGoldLog.setUserId(goldReward.getUserId());
tiktokGoldLog.setSource("1");
tiktokGoldLog.setAppType(goldReward.getAppType());
tiktokGoldLog.setReason(GoldEnum.getValueByCode(goldReward.getGoldCode()));
goldLogService.insert(tiktokGoldLog);
break;
case 20:
FhUser fhUser = fhUserService.getUserById(goldReward.getUserId());
FhUser fhUser = fhUserService.getUserById(goldReward.getUserId(),goldReward.getAppType());
fhUser.setGoldNum(fhUser.getGoldNum() + goldReward.getGoldNum());
fhUserService.updateFhUser(fhUser);
//更新用户画意值奖励并写入记录
@ -108,11 +112,12 @@ public class GoldRewardConsumer extends EnhanceMessageHandler implements RocketM
fhGoldLog.setGoldNum(goldReward.getGoldNum());
fhGoldLog.setUserId(goldReward.getUserId());
fhGoldLog.setSource("2");
fhGoldLog.setAppType(goldReward.getAppType());
fhGoldLog.setReason(GoldEnum.getValueByCode(goldReward.getGoldCode()));
goldLogService.insert(fhGoldLog);
break;
case 30:
WxUser wxUser = wxUserService.getUserById(goldReward.getUserId());
WxUser wxUser = wxUserService.getUserById(goldReward.getUserId(),goldReward.getAppType());
wxUser.setGoldNum(wxUser.getGoldNum() + goldReward.getGoldNum());
wxUserService.updateWxUser(wxUser);
//更新用户画意值奖励并写入记录
@ -120,6 +125,7 @@ public class GoldRewardConsumer extends EnhanceMessageHandler implements RocketM
wxGoldLog.setGoldNum(goldReward.getGoldNum());
wxGoldLog.setUserId(goldReward.getUserId());
wxGoldLog.setSource("3");
wxGoldLog.setAppType(goldReward.getAppType());
wxGoldLog.setReason(GoldEnum.getValueByCode(goldReward.getGoldCode()));
goldLogService.insert(wxGoldLog);
break;

3
bnyer-services/bnyer-img/src/main/java/com/bnyer/img/mapper/AiPaintMapper.java

@ -14,10 +14,11 @@ public interface AiPaintMapper extends BaseMapper<AiPaint> {
/**
* 获取ai绘画分页
* @param source 来源(1->抖音;2->快手;3->微信)
* @param appType app类型
* @param painterId 绘画者id
* @return -
*/
List<AiPaintVo> queryPage(@Param("source") String source,@Param("painterId") Long painterId);
List<AiPaintVo> queryPage(@Param("source") String source,@Param("appType") String appType,@Param("painterId") Long painterId);
/**
* 获取ai绘画详情

3
bnyer-services/bnyer-img/src/main/java/com/bnyer/img/mapper/DiamondLogMapper.java

@ -15,7 +15,8 @@ public interface DiamondLogMapper extends BaseMapper<DiamondLog> {
* 获取意心记录
* @param userId 用户id
* @param source 平台
* @param appType app类型(0->次元意境;1->妙鸭壁纸)
* @return -
*/
List<DiamondLogVo> queryPage(@Param("userId") Long userId, @Param("source") String source);
List<DiamondLogVo> queryPage(@Param("userId") Long userId, @Param("source") String source,@Param("appType") String appType);
}

3
bnyer-services/bnyer-img/src/main/java/com/bnyer/img/mapper/GoldLogMapper.java

@ -15,7 +15,8 @@ public interface GoldLogMapper extends BaseMapper<GoldLog> {
* 获取画意值记录
* @param userId 用户id
* @param source 平台
* @param appType app类型
* @return -
*/
List<GoldLogVo> queryPage(@Param("userId") Long userId, @Param("source") String source);
List<GoldLogVo> queryPage(@Param("userId") Long userId, @Param("source") String source,@Param("appType") String appType);
}

3
bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/DiamondLogService.java

@ -19,7 +19,8 @@ public interface DiamondLogService {
* 获取意心记录分页
* @param userId 用户id
* @param source 平台(0->Hub;1->抖音;2->快手;3->微信)
* @param appType app类型(0->次元意境;1->妙鸭壁纸)
* @return -
*/
List<DiamondLogVo> queryPage(Long userId, String source);
List<DiamondLogVo> queryPage(Long userId, String source,String appType);
}

3
bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/FhUserService.java

@ -45,9 +45,10 @@ public interface FhUserService {
/**
* 根据id获取用户信息
* @param id 主键id
* @param appType app类型
* @return -
*/
FhUser getUserById(Long id);
FhUser getUserById(Long id,String appType);
/**
* 根据id更新用户信息

8
bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/GoldLogService.java

@ -19,21 +19,23 @@ public interface GoldLogService {
/**
* 获取画意值记录分页
* @param userId 用户id
* @param source 平台(0->Hub;1->抖音;2->快手;3->微信)
* @param source 平台(1->抖音;2->快手;3->微信)
* @param appType app类型(0->次元意境;1->妙鸭壁纸)
* @return -
*/
List<GoldLogVo> queryPage(Long userId, String source);
List<GoldLogVo> queryPage(Long userId, String source,String appType);
/**
* 构建画意值奖励消息体
* @param userId 用户id
* @param goldNum 奖励/消耗画意值
* @param platform 平台
* @param appType app类型
* @param userClientType 用户客户端类型
* @param goldCode 画意值枚举类编码
* @return -
*/
GoldRewardMessage buildGoldRewardMsg(Long userId, int goldNum, String goldCode, String platform, Integer userClientType);
GoldRewardMessage buildGoldRewardMsg(Long userId, int goldNum, String goldCode, String platform,String appType,Integer userClientType);
/**
* 签到获取画意值

8
bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/PaintCdkService.java

@ -8,23 +8,25 @@ public interface PaintCdkService {
* 生成不同平台的cdk
* @param source 平台(1->抖音;2->快手;3->微信)
* @param paintNum 兑换次数
* @param appType app类型(0->次元意境;1->妙鸭壁纸)
*/
void generatorCdk(String source,int paintNum);
void generatorCdk(String source,String appType,int paintNum);
/**
* 根据平台检查cdk是否使用
* @param cdk 兑换码
* @param source 平台(1->抖音;2->快手;3->微信)
* @param appType app类型(0->次元意境;1->妙鸭壁纸)
* @return -
*/
PaintCdk checkCdk(String cdk, String source);
PaintCdk checkCdk(String cdk, String source,String appType);
/**
* 兑换cdk
* @param cdk 兑换码
* @param source 平台(1->抖音;2->快手;3->微信)
* @param userId 用户id
* @param appType 应用
* @param appType app类型(0->次元意境;1->妙鸭壁纸)
*/
void useCdk(String cdk,String source,Long userId,String appType);
}

3
bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/StableDiffusionService.java

@ -28,10 +28,11 @@ public interface StableDiffusionService {
/**
* 增加用户画意值
* @param platform 平台(1->抖音;2->快手;3->微信)
* @param appType app类型(0->次元意境;1->妙鸭壁纸)
* @param userId 用户id
* @param paintNUm 画意值
*/
void addPlatformUserAiPaintNum(String platform,Long userId,int paintNUm);
void addPlatformUserAiPaintNum(String platform,String appType,Long userId,int paintNUm);
/**
* 设置AI绘画button值

2
bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/TiktokImgService.java

@ -57,7 +57,7 @@ public interface TiktokImgService {
/**
* 图片下载总数量写入缓存
* @param appType 应用
* @param appType app类型(0->次元意境;1->妙鸭壁纸)
* @param platform 平台
*/
void writeDownloadTotalNum(String appType,String platform);

13
bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/TiktokUserService.java

@ -11,7 +11,7 @@ public interface TiktokUserService {
* 检查某平台用户当日下载次数是否超标
* @param userId 用户id
* @param platform 平台(1->抖音;2->快手;3->微信)
* @param appType 应用
* @param appType app类型(0->次元意境;1->妙鸭壁纸)
* @return -
*/
boolean checkUserCanDownload(Long userId,String platform,String appType);
@ -20,7 +20,7 @@ public interface TiktokUserService {
* 检查某平台用户当日看广告获取画意值次数是否超标
* @param userId 用户id
* @param platform 平台
* @param appType 应用
* @param appType app类型(0->次元意境;1->妙鸭壁纸)
* @return -
*/
boolean checkUserCanGetGold(Long userId,String platform,String appType);
@ -29,7 +29,7 @@ public interface TiktokUserService {
* 检查某平台用户当日ai绘画次数是否超标
* @param userId 用户id
* @param platform 平台
* @param appType 应用
* @param appType app类型(0->次元意境;1->妙鸭壁纸)
* @return -
*/
boolean checkUserCanAiPaint(Long userId,String platform,String appType);
@ -42,11 +42,12 @@ public interface TiktokUserService {
R<LoginTiktokUser> getTiktokLoginUserByLoginParam(TiktokLoginDto dto);
/**
* 根据id获取用户信息
* 根据id和app类型获取用户信息
* @param id 主键id
* @param appType app类型
* @return -
*/
TiktokUser getUserById(Long id);
TiktokUser getUserById(Long id,String appType);
/**
* 根据id更新用户信息
@ -65,7 +66,7 @@ public interface TiktokUserService {
* 获取某平台用户剩余可下载图片/获取画意值奖励次数
* @param userId 用户id
* @param platform 平台
* @param appType 应用
* @param appType app类型(0->次元意境;1->妙鸭壁纸)
* @return -
*/
int getUserDownloadNum(Long userId,String platform,String appType);

13
bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/WxUserService.java

@ -11,7 +11,7 @@ public interface WxUserService {
* 检查某平台用户当日下载次数是否超标
* @param userId 用户id
* @param platform 平台(1->抖音;2->快手;3->微信)
* @param appType 应用
* @param appType app类型(0->次元意境;1->妙鸭壁纸)
* @return -
*/
boolean checkUserCanDownload(Long userId,String platform,String appType);
@ -20,7 +20,7 @@ public interface WxUserService {
* 检查某平台用户当日看广告获取画意值次数是否超标
* @param userId 用户id
* @param platform 平台(1->抖音;2->快手;3->微信)
* @param appType 应用
* @param appType app类型(0->次元意境;1->妙鸭壁纸)
* @return -
*/
boolean checkUserCanGetGold(Long userId,String platform,String appType);
@ -29,7 +29,7 @@ public interface WxUserService {
* 检查某平台用户当日ai绘画次数是否超标
* @param userId 用户id
* @param platform 平台(1->抖音;2->快手;3->微信)
* @param appType 应用
* @param appType app类型(0->次元意境;1->妙鸭壁纸)
* @return -
*/
boolean checkUserCanAiPaint(Long userId,String platform,String appType);
@ -44,9 +44,10 @@ public interface WxUserService {
/**
* 根据id获取用户信息
* @param id 主键id
* @param appType app类型
* @return -
*/
WxUser getUserById(Long id);
WxUser getUserById(Long id,String appType);
/**
* 根据id更新用户信息
@ -65,7 +66,7 @@ public interface WxUserService {
* 获取某平台用户剩余可下载图片/获取画意值奖励次数
* @param userId 用户id
* @param platform 平台(1->抖音;2->快手;3->微信)
* @param appType 应用
* @param appType app类型(0->次元意境;1->妙鸭壁纸)
* @return -
*/
int getUserDownloadNum(Long userId,String platform,String appType);
@ -74,7 +75,7 @@ public interface WxUserService {
* 获取某平台用户剩余可获取画意值奖励次数
* @param userId 用户id
* @param platform 平台(1->抖音;2->快手;3->微信)
* @param appType 应用
* @param appType app类型(0->次元意境;1->妙鸭壁纸)
* @return -
*/
int getUserRewardNum(Long userId,String platform,String appType);

5
bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/AiPaintServiceImpl.java

@ -1,9 +1,7 @@
package com.bnyer.img.service.impl;
import cn.hutool.core.util.IdUtil;
import com.bnyer.common.core.domain.AiPaint;
import com.bnyer.common.core.dto.AiPaintPageDto;
import com.bnyer.common.core.utils.uuid.IdUtils;
import com.bnyer.img.mapper.AiPaintMapper;
import com.bnyer.img.service.AiPaintService;
import com.bnyer.img.vo.AiPaintVo;
@ -11,7 +9,6 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.Date;
import java.util.List;
@Service
@ -34,7 +31,7 @@ public class AiPaintServiceImpl implements AiPaintService {
@Override
public List<AiPaintVo> queryPage(AiPaintPageDto params) {
return aiPaintMapper.queryPage(params.getSource(),params.getPainterId());
return aiPaintMapper.queryPage(params.getSource(),params.getAppType(),params.getPainterId());
}
@Override

4
bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/DiamondLogServiceImpl.java

@ -33,7 +33,7 @@ public class DiamondLogServiceImpl implements DiamondLogService {
}
@Override
public List<DiamondLogVo> queryPage(Long userId, String source) {
return diamondLogMapper.queryPage(userId,source);
public List<DiamondLogVo> queryPage(Long userId, String source,String appType) {
return diamondLogMapper.queryPage(userId,source,appType);
}
}

21
bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/FhUserServiceImpl.java

@ -106,7 +106,16 @@ public class FhUserServiceImpl implements FhUserService {
return null;
}
private FhUser saveOrUpdate(String openId, String sessionKey, String encryptedData, String iv) {
/**
* 保存用户
* @param openId 微信id
* @param sessionKey -
* @param encryptedData 敏感信息数据
* @param iv 加密向量
* @param appType app类型
* @return -
*/
private FhUser saveOrUpdate(String openId, String sessionKey, String encryptedData, String iv,String appType) {
//获取用户昵称和头像
FhUserInfoVo userInfo = this.getUserInfo(sessionKey, encryptedData, iv);
//创建用户
@ -114,11 +123,12 @@ public class FhUserServiceImpl implements FhUserService {
fhUser.setImg(userInfo.getAvatarUrl());
fhUser.setUsername(userInfo.getNickName());
fhUser.setFhCode(Sm4Util.sm4Encryption(openId));
fhUser.setAppType(appType);
fhUser.setCreateTime(new Date());
fhUser.setUpdateTime(new Date());
fhUser.setIsShow("1");
fhUserMapper.insert(fhUser);
log.info("快手用户【{}】创建成功!", openId);
log.info("应用【{}】快手用户【{}】创建成功!",appType,fhUser.getId());
return fhUser;
}
@ -166,7 +176,7 @@ public class FhUserServiceImpl implements FhUserService {
@Override
public boolean checkUserCanAiPaint(Long userId, String platform, String appType) {
//查询用户信息
FhUser fhUser = this.getUserById(userId);
FhUser fhUser = this.getUserById(userId,appType);
//获取用户画意值
if(fhUser.getGoldNum() <=0){
return true;
@ -184,7 +194,7 @@ public class FhUserServiceImpl implements FhUserService {
FhUser fhUser = fhUserMapper.selectOne(wrapper);
if(fhUser == null){
//新用户,新增
fhUser = this.saveOrUpdate(sessionInfo.getOpenId(), sessionInfo.getSessionKey(), dto.getEncryptedData(), dto.getIv());
fhUser = this.saveOrUpdate(sessionInfo.getOpenId(), sessionInfo.getSessionKey(), dto.getEncryptedData(), dto.getIv(),dto.getAppType());
}
LoginFhUser loginFhUser = new LoginFhUser();
FhUserLoginVo loginVo = new FhUserLoginVo();
@ -194,10 +204,11 @@ public class FhUserServiceImpl implements FhUserService {
}
@Override
public FhUser getUserById(Long id) {
public FhUser getUserById(Long id,String appType) {
LambdaQueryWrapper<FhUser> wrapper = new LambdaQueryWrapper<>();
wrapper.eq(FhUser::getId, id);
wrapper.eq(FhUser::getIsShow,"1");
wrapper.eq(FhUser::getAppType,appType);
FhUser fhUser = fhUserMapper.selectOne(wrapper);
if(fhUser == null){
throw new ServiceException("当前用户不存在!");

31
bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/GoldLogServiceImpl.java

@ -46,8 +46,8 @@ public class GoldLogServiceImpl implements GoldLogService {
}
@Override
public List<GoldLogVo> queryPage(Long userId, String source) {
return goldLogMapper.queryPage(userId,source);
public List<GoldLogVo> queryPage(Long userId, String source,String appType) {
return goldLogMapper.queryPage(userId,source,appType);
}
@Override
@ -62,20 +62,20 @@ public class GoldLogServiceImpl implements GoldLogService {
}else{
//签到
redisService.hashIncr(redisKey,hashKey,1);
//发送签到画意值奖励并写入记录消息(此处0->抖音;1->快手;2->微信)
//发送签到画意值奖励并写入记录消息
GoldRewardMessage msg = null;
switch (param.getSource()){
case "1":
//抖音
msg = buildGoldRewardMsg(param.getUserId(),GoldEnum.SIGN.getGoldNum(),GoldEnum.SIGN.getCode(),"0",null);
msg = buildGoldRewardMsg(param.getUserId(),GoldEnum.SIGN.getGoldNum(),GoldEnum.SIGN.getCode(),"1", param.getAppType(), null);
break;
case "2":
//快手
msg = buildGoldRewardMsg(param.getUserId(),GoldEnum.SIGN.getGoldNum(),GoldEnum.SIGN.getCode(),"1",null);
msg = buildGoldRewardMsg(param.getUserId(),GoldEnum.SIGN.getGoldNum(),GoldEnum.SIGN.getCode(),"2",param.getAppType(),null);
break;
case "3":
//微信
msg = buildGoldRewardMsg(param.getUserId(),GoldEnum.SIGN.getGoldNum(),GoldEnum.SIGN.getCode(),"2",null);
msg = buildGoldRewardMsg(param.getUserId(),GoldEnum.SIGN.getGoldNum(),GoldEnum.SIGN.getCode(),"3",param.getAppType(),null);
break;
}
mqMessageRecordService.sendAsyncMsg(RocketMqTopic.GOLD_REWARD_TOPIC,null,msg);
@ -97,20 +97,20 @@ public class GoldLogServiceImpl implements GoldLogService {
}else{
//写入观看记录
redisService.hashIncr(redisKey,hashKey,1);
//发送观看广告获取画意值奖励并写入记录消息(此处0->抖音;1->快手;2->微信)
//发送观看广告获取画意值奖励并写入记录消息
GoldRewardMessage msg = null;
switch (param.getSource()){
case "1":
//抖音
msg = buildGoldRewardMsg(param.getUserId(),GoldEnum.WATCH_AD.getGoldNum(),GoldEnum.WATCH_AD.getCode(),"0",null);
msg = buildGoldRewardMsg(param.getUserId(),GoldEnum.WATCH_AD.getGoldNum(),GoldEnum.WATCH_AD.getCode(),"1",param.getAppType(),null);
break;
case "2":
//快手
msg = buildGoldRewardMsg(param.getUserId(),GoldEnum.WATCH_AD.getGoldNum(),GoldEnum.WATCH_AD.getCode(),"1",null);
msg = buildGoldRewardMsg(param.getUserId(),GoldEnum.WATCH_AD.getGoldNum(),GoldEnum.WATCH_AD.getCode(),"2",param.getAppType(),null);
break;
case "3":
//微信
msg = buildGoldRewardMsg(param.getUserId(),GoldEnum.WATCH_AD.getGoldNum(),GoldEnum.WATCH_AD.getCode(),"2",null);
msg = buildGoldRewardMsg(param.getUserId(),GoldEnum.WATCH_AD.getGoldNum(),GoldEnum.WATCH_AD.getCode(),"3",param.getAppType(),null);
break;
}
mqMessageRecordService.sendAsyncMsg(RocketMqTopic.GOLD_REWARD_TOPIC,null,msg);
@ -119,20 +119,20 @@ public class GoldLogServiceImpl implements GoldLogService {
//不存在,则是第一次观看
//写入观看记录
redisService.hashIncr(redisKey,hashKey,1);
//发送观看广告获取画意值奖励并写入记录消息(此处0->抖音;1->快手;2->微信)
//发送观看广告获取画意值奖励并写入记录消息
GoldRewardMessage msg = null;
switch (param.getSource()){
case "1":
//抖音
msg = buildGoldRewardMsg(param.getUserId(),GoldEnum.WATCH_AD.getGoldNum(),GoldEnum.WATCH_AD.getCode(),"0",null);
msg = buildGoldRewardMsg(param.getUserId(),GoldEnum.WATCH_AD.getGoldNum(),GoldEnum.WATCH_AD.getCode(),"1",param.getAppType(),null);
break;
case "2":
//快手
msg = buildGoldRewardMsg(param.getUserId(),GoldEnum.WATCH_AD.getGoldNum(),GoldEnum.WATCH_AD.getCode(),"1",null);
msg = buildGoldRewardMsg(param.getUserId(),GoldEnum.WATCH_AD.getGoldNum(),GoldEnum.WATCH_AD.getCode(),"2",param.getAppType(),null);
break;
case "3":
//微信
msg = buildGoldRewardMsg(param.getUserId(),GoldEnum.WATCH_AD.getGoldNum(),GoldEnum.WATCH_AD.getCode(),"2",null);
msg = buildGoldRewardMsg(param.getUserId(),GoldEnum.WATCH_AD.getGoldNum(),GoldEnum.WATCH_AD.getCode(),"3",param.getAppType(),null);
break;
}
mqMessageRecordService.sendAsyncMsg(RocketMqTopic.GOLD_REWARD_TOPIC,null,msg);
@ -141,11 +141,12 @@ public class GoldLogServiceImpl implements GoldLogService {
}
@Override
public GoldRewardMessage buildGoldRewardMsg(Long userId, int goldNum, String goldCode, String platform, Integer userClientType) {
public GoldRewardMessage buildGoldRewardMsg(Long userId, int goldNum, String goldCode, String platform,String appType,Integer userClientType) {
GoldRewardMessage message = new GoldRewardMessage();
message.setUserId(userId);
message.setGoldNum(goldNum);
message.setGoldCode(goldCode);
message.setAppType(appType);
if(StringUtils.isNotNull(platform)){
message.setPlatform(platform);
}

11
bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/PaintCdkServiceImpl.java

@ -31,7 +31,7 @@ public class PaintCdkServiceImpl implements PaintCdkService {
@Override
@Transactional(rollbackFor = Exception.class)
public void generatorCdk(String source,int paintNum) {
public void generatorCdk(String source,String appType,int paintNum) {
for (int i = 0; i < 50; i++) {
String cdk = IdUtils.fastSimpleUUID().toUpperCase();
PaintCdk paintCdk = new PaintCdk();
@ -42,16 +42,18 @@ public class PaintCdkServiceImpl implements PaintCdkService {
paintCdk.setSort(0);
paintCdk.setUpdateTime(new Date());
paintCdk.setSource(source);
paintCdk.setAppType(appType);
paintCdk.setCdk(cdk);
paintCdkMapper.insert(paintCdk);
}
}
@Override
public PaintCdk checkCdk(String cdk, String source) {
public PaintCdk checkCdk(String cdk, String source,String appType) {
LambdaQueryWrapper<PaintCdk> wrapper = new LambdaQueryWrapper<>();
wrapper.eq(PaintCdk::getSource, source);
wrapper.eq(PaintCdk::getCdk, cdk);
wrapper.eq(PaintCdk::getAppType, appType);
wrapper.eq(PaintCdk::getIsUse, "0");
return paintCdkMapper.selectOne(wrapper);
}
@ -60,12 +62,12 @@ public class PaintCdkServiceImpl implements PaintCdkService {
@Transactional(rollbackFor = Exception.class)
public void useCdk(String cdk, String source,Long userId,String appType) {
//检查cdk是否被使用过
PaintCdk paintCdk = checkCdk(cdk, source);
PaintCdk paintCdk = checkCdk(cdk, source,appType);
if(paintCdk == null){
throw new ServiceException("该兑换码不存在或已被使用!");
}else{
//增加用户画意值
stableDiffusionService.addPlatformUserAiPaintNum(source,userId,paintCdk.getPaintNum());
stableDiffusionService.addPlatformUserAiPaintNum(source,appType,userId,paintCdk.getPaintNum());
//修改cdk状态
paintCdk.setIsUse("1");
paintCdkMapper.updateById(paintCdk);
@ -74,6 +76,7 @@ public class PaintCdkServiceImpl implements PaintCdkService {
cdkLog.setCreateTime(new Date());
cdkLog.setPaintNum(paintCdk.getPaintNum());
cdkLog.setSource(source);
cdkLog.setAppType(appType);
cdkLog.setIsShow("1");
cdkLog.setCdk(cdk);
cdkLog.setUserId(userId);

130
bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/StableDiffusionServiceImpl.java

@ -112,7 +112,7 @@ public class StableDiffusionServiceImpl implements StableDiffusionService {
switch (param.getPlatform()){
case "1":
//查询抖音用户信息
TiktokUser tiktokUser = tiktokUserService.getUserById(param.getPainterId());
TiktokUser tiktokUser = tiktokUserService.getUserById(param.getPainterId(),param.getAppType());
//检查画意值是否足够,不足则直接提示不足请充值或完成相应任务
if (param.getGoldNum() > tiktokUser.getGoldNum()) {
throw new ServiceException("画意值不足!请充值或完成相应任务获取", TiktokConstant.GOLD_NUM_IS_NOT_ENOUGH);
@ -123,7 +123,7 @@ public class StableDiffusionServiceImpl implements StableDiffusionService {
break;
case "2":
//查询快手用户信息
FhUser fhUser = fhUserService.getUserById(param.getPainterId());
FhUser fhUser = fhUserService.getUserById(param.getPainterId(),param.getAppType());
//检查画意值是否足够,不足则直接提示不足请充值或完成相应任务
if (param.getGoldNum() > fhUser.getGoldNum()) {
throw new ServiceException("画意值不足!请充值或完成相应任务获取", TiktokConstant.GOLD_NUM_IS_NOT_ENOUGH);
@ -134,7 +134,7 @@ public class StableDiffusionServiceImpl implements StableDiffusionService {
break;
case "3":
//查询微信用户信息
WxUser wxUser = wxUserService.getUserById(param.getPainterId());
WxUser wxUser = wxUserService.getUserById(param.getPainterId(),param.getAppType());
//检查画意值是否足够,不足则直接提示不足请充值或完成相应任务
if (param.getGoldNum() > wxUser.getGoldNum()) {
throw new ServiceException("画意值不足!请充值或完成相应任务获取", TiktokConstant.GOLD_NUM_IS_NOT_ENOUGH);
@ -218,6 +218,7 @@ public class StableDiffusionServiceImpl implements StableDiffusionService {
paint.setWidth(param.getWidth() == null ? "512" : String.valueOf(param.getWidth()));
paint.setIsShow("1");
paint.setSource(param.getPlatform());
paint.setAppType(param.getAppType());
paint.setPainterId(param.getPainterId());
paint.setPainterName(param.getPainterName());
aiPaintService.insert(paint);
@ -226,6 +227,7 @@ public class StableDiffusionServiceImpl implements StableDiffusionService {
goldLog.setGoldNum(param.getGoldNum());
goldLog.setUserId(param.getPainterId());
goldLog.setSource(param.getPlatform());
goldLog.setAppType(param.getAppType());
goldLog.setReason(GoldEnum.PAINT.getValue());
goldLogService.insert(goldLog);
}
@ -331,6 +333,7 @@ public class StableDiffusionServiceImpl implements StableDiffusionService {
paint.setWidth(param.getWidth() == null ? "512" : String.valueOf(param.getWidth()));
paint.setIsShow("1");
paint.setSource(param.getPlatform());
paint.setAppType(param.getAppType());
paint.setPainterId(param.getPainterId());
paint.setPainterName(param.getPainterName());
aiPaintService.insert(paint);
@ -339,6 +342,7 @@ public class StableDiffusionServiceImpl implements StableDiffusionService {
goldLog.setGoldNum(param.getGoldNum());
goldLog.setUserId(param.getPainterId());
goldLog.setSource(param.getPlatform());
goldLog.setAppType(param.getAppType());
goldLog.setReason(GoldEnum.PAINT.getValue());
goldLogService.insert(goldLog);
}
@ -435,6 +439,7 @@ public class StableDiffusionServiceImpl implements StableDiffusionService {
paint.setWidth(param.getWidth() == null ? "512" : String.valueOf(param.getWidth()));
paint.setIsShow("1");
paint.setSource(param.getPlatform());
paint.setAppType(param.getAppType());
paint.setPainterId(param.getPainterId());
paint.setPainterName(param.getPainterName());
aiPaintService.insert(paint);
@ -443,6 +448,7 @@ public class StableDiffusionServiceImpl implements StableDiffusionService {
goldLog.setGoldNum(param.getGoldNum());
goldLog.setUserId(param.getPainterId());
goldLog.setSource(param.getPlatform());
goldLog.setAppType(param.getAppType());
goldLog.setReason(GoldEnum.PAINT.getValue());
goldLogService.insert(goldLog);
}
@ -464,7 +470,7 @@ public class StableDiffusionServiceImpl implements StableDiffusionService {
switch (param.getPlatform()){
case "1":
//查询抖音用户信息
TiktokUser tiktokUser = tiktokUserService.getUserById(param.getPainterId());
TiktokUser tiktokUser = tiktokUserService.getUserById(param.getPainterId(),param.getAppType());
//检查画意值是否足够,不足则直接提示不足请充值或完成相应任务
if (param.getGoldNum() > tiktokUser.getGoldNum()) {
throw new ServiceException("画意值不足!请充值或完成相应任务获取", TiktokConstant.GOLD_NUM_IS_NOT_ENOUGH);
@ -475,7 +481,7 @@ public class StableDiffusionServiceImpl implements StableDiffusionService {
break;
case "2":
//查询快手用户信息
FhUser fhUser = fhUserService.getUserById(param.getPainterId());
FhUser fhUser = fhUserService.getUserById(param.getPainterId(),param.getAppType());
//检查画意值是否足够,不足则直接提示不足请充值或完成相应任务
if (param.getGoldNum() > fhUser.getGoldNum()) {
throw new ServiceException("画意值不足!请充值或完成相应任务获取", TiktokConstant.GOLD_NUM_IS_NOT_ENOUGH);
@ -486,7 +492,7 @@ public class StableDiffusionServiceImpl implements StableDiffusionService {
break;
case "3":
//查询微信用户信息
WxUser wxUser = wxUserService.getUserById(param.getPainterId());
WxUser wxUser = wxUserService.getUserById(param.getPainterId(),param.getAppType());
//检查画意值是否足够,不足则直接提示不足请充值或完成相应任务
if (param.getGoldNum() > wxUser.getGoldNum()) {
throw new ServiceException("画意值不足!请充值或完成相应任务获取", TiktokConstant.GOLD_NUM_IS_NOT_ENOUGH);
@ -503,6 +509,7 @@ public class StableDiffusionServiceImpl implements StableDiffusionService {
goldLog.setGoldNum(param.getGoldNum());
goldLog.setUserId(param.getPainterId());
goldLog.setSource(param.getPlatform());
goldLog.setAppType(param.getAppType());
goldLog.setReason(GoldEnum.COUPLE_HEAD.getValue());
goldLogService.insert(goldLog);
@ -526,15 +533,15 @@ public class StableDiffusionServiceImpl implements StableDiffusionService {
String boyHeadStr = "1个男孩" + activePrompt + resultPrompt;
//女头提示词
String girlHeadStr = "1个女孩" + activePrompt + resultPrompt;
String boyHead = getCoupleHead(boyHeadStr,negaPrompt,param.getPlatform(), param.getPainterId(), param.getPainterName(), param.getStyleName(),button,contentPrompt);
String boyHead = getCoupleHead(boyHeadStr,negaPrompt,param.getPlatform(),param.getAppType(), param.getPainterId(), param.getPainterName(), param.getStyleName(),button,contentPrompt);
log.info("腾讯男头像提示词为:【{}】",girlHeadStr);
String girlHead = getCoupleHead(girlHeadStr,negaPrompt,param.getPlatform(), param.getPainterId(), param.getPainterName(), param.getStyleName(),button,contentPrompt);
String girlHead = getCoupleHead(girlHeadStr,negaPrompt,param.getPlatform(),param.getAppType(),param.getPainterId(), param.getPainterName(), param.getStyleName(),button,contentPrompt);
log.info("腾讯女头像提示词为:【{}】",girlHeadStr);
List<String> imgList = new ArrayList<>();
imgList.add(boyHead);
imgList.add(girlHead);
return imgList;
}else{
}else if(button == AiPaintButtonEnum.SD.getCode()){
//采用sd
try{
//最终结果词
@ -552,9 +559,9 @@ public class StableDiffusionServiceImpl implements StableDiffusionService {
//女头提示词
String girlHeadStr = "(1girl)" + activePrompt + prompt;
String boyHead = getCoupleHead(boyHeadStr,negaPrompt,param.getPlatform(), param.getPainterId(), param.getPainterName(), param.getStyleName(),button,contentPrompt);
String boyHead = getCoupleHead(boyHeadStr,negaPrompt,param.getPlatform(),param.getAppType(), param.getPainterId(), param.getPainterName(), param.getStyleName(),button,contentPrompt);
log.info("sd男头像提示词为:【{}】",boyHeadStr);
String girlHead = getCoupleHead(girlHeadStr,negaPrompt,param.getPlatform(), param.getPainterId(), param.getPainterName(), param.getStyleName(),button,contentPrompt);
String girlHead = getCoupleHead(girlHeadStr,negaPrompt,param.getPlatform(),param.getAppType(), param.getPainterId(), param.getPainterName(), param.getStyleName(),button,contentPrompt);
log.info("sd女头像提示词为:【{}】",girlHeadStr);
List<String> imgList = new ArrayList<>();
imgList.add(boyHead);
@ -563,23 +570,38 @@ public class StableDiffusionServiceImpl implements StableDiffusionService {
}catch (Exception e){
log.error("文本翻译错误!"+e);
}
}else{
//采用flagStudio
//男头提示词
String boyHeadStr = "1个男孩" + activePrompt + resultPrompt;
//女头提示词
String girlHeadStr = "1个女孩" + activePrompt + resultPrompt;
String boyHead = getCoupleHead(boyHeadStr,negaPrompt,param.getPlatform(),param.getAppType(), param.getPainterId(), param.getPainterName(), param.getStyleName(),button,contentPrompt);
log.info("flagStudio男头像提示词为:【{}】",girlHeadStr);
String girlHead = getCoupleHead(girlHeadStr,negaPrompt,param.getPlatform(),param.getAppType(), param.getPainterId(), param.getPainterName(), param.getStyleName(),button,contentPrompt);
log.info("flagStudio女头像提示词为:【{}】",girlHeadStr);
List<String> imgList = new ArrayList<>();
imgList.add(boyHead);
imgList.add(girlHead);
return imgList;
}
return null;
}
/**
* 情侣头像专用绘制方法
* @param button sd/tx
* @param button sd/tx/flagStudio
* @param headStr 头像描述词
* @param negaPrompt 反向描述词
* @param platform 平台
* @param appType app类型
* @param painterId 绘图者id
* @param painterName 绘图者名称
* @param styleName 风格名称
* @param protoHead 原用户输入的描述词
* @return -
*/
private String getCoupleHead(String headStr,String negaPrompt,String platform,Long painterId,String painterName,String styleName,int button,String protoHead){
private String getCoupleHead(String headStr,String negaPrompt,String platform,String appType,Long painterId,String painterName,String styleName,int button,String protoHead){
if(button == AiPaintButtonEnum.TX.getCode()){
//采用腾讯文生图
@ -637,17 +659,17 @@ public class StableDiffusionServiceImpl implements StableDiffusionService {
paint.setWidth("768");
paint.setIsShow("1");
paint.setSource(platform);
paint.setAppType(appType);
paint.setPainterId(painterId);
paint.setPainterName(painterName);
aiPaintService.insert(paint);
return image;
}
} catch (TencentCloudSDKException e) {
log.error("腾讯文生图情侣头像调用错误!"+e.getMessage());
throw new ServiceException(e.getMessage(),500);
}
}else{
}else if(button == AiPaintButtonEnum.SD.getCode()){
Map<String, Object> map = new HashMap<>();
Double eta = 0.0;
Integer batchSize = 1;
@ -704,6 +726,7 @@ public class StableDiffusionServiceImpl implements StableDiffusionService {
paint.setWidth("512");
paint.setIsShow("1");
paint.setSource(platform);
paint.setAppType(appType);
paint.setPainterId(painterId);
paint.setPainterName(painterName);
aiPaintService.insert(paint);
@ -715,6 +738,75 @@ public class StableDiffusionServiceImpl implements StableDiffusionService {
throw new ServiceException("情侣头像绘制失败!",500);
}
return null;
}else{
//FlagStudio
try{
//获取token
JSONObject tokenObject = restTemplate.getForObject(flagStudioConfig.getTokenUrl() + "?apikey=" + flagStudioConfig.getApiKey(), JSONObject.class);
String token = "";
if(tokenObject != null && tokenObject.getString("code").equals("200")){
token = tokenObject.getJSONObject("data").getString("token");
}
//组装参数并发送
Map<String, Object> map = new HashMap<>();
map.put("prompt", headStr); //存预设词+用户输入词
map.put("guidance_scale",7.5); //精细度可调
map.put("height",512);
map.put("width",512);
map.put("negative_prompts",negaPrompt);
map.put("sampler","ddim"); //采样风格可调
map.put("seed",0); //种子
map.put("steps",50); //采样步数可调
map.put("style",styleName); //风格
map.put("upsample",1);
log.info("请求flagStudio请求体为:【{}】", JSON.toJSONString(map));
// 构建你的请求头
HttpHeaders headers = new HttpHeaders();
headers.set("Content-Type", "application/json");
headers.set("Accept", "application/json");
headers.set("token",token);
// 组合请求头与请求体参数
HttpEntity<String> requestEntity = new HttpEntity<>(JSONObject.toJSONString(map), headers);
JSONObject jsonObject = restTemplate.postForObject(flagStudioConfig.getTxt2ImgUrl(), requestEntity, JSONObject.class);
if(jsonObject != null && jsonObject.getString("data") != null && jsonObject.getString("code").equals("200") && jsonObject.getString("nsfw").equals("0")) {
String imgUrl = jsonObject.getString("data");
List<String> list = new ArrayList<>();
list.add(imgUrl);
String paintId = null;
Date paintTime = null;
for (String image : list) {
//base64转file
MultipartFile file = new Base64ToMultipartFileUtils(image, "data:image/png;base64", "file", "tempSDImg");
//上传图片到七牛云/minio
//String imgStr = remoteFileService.uploadBanner(file).getData();
//上传图片到七牛云并存入sd文件夹
String imgStr = remoteFileService.uploadQiNiu(file,7).getData();
//保存生辰该图片到ai绘画表
AiPaint paint = new AiPaint();
paintId = IdUtil.getSnowflakeNextIdStr();
paintTime = new Date();
paint.setPaintId(paintId);
paint.setCreateTime(paintTime);
paint.setImgUrl(imgStr);
paint.setPrompt(protoHead); //只存储用户输入的内容
paint.setNegativePrompt(negaPrompt);
paint.setModel("flagStudio情侣头像");
paint.setStyleName(styleName);
paint.setHeight("512");
paint.setWidth("512");
paint.setIsShow("1");
paint.setSource(platform);
paint.setAppType(appType);
paint.setPainterId(painterId);
paint.setPainterName(painterName);
aiPaintService.insert(paint);
return image;
}
}
} catch (Exception e) {
log.error("FlagStudio文生图调用错误!"+e.getMessage());
throw new ServiceException(e.getMessage(),500);
}
}
return null;
}
@ -725,13 +817,13 @@ public class StableDiffusionServiceImpl implements StableDiffusionService {
}
@Override
public void addPlatformUserAiPaintNum(String platform, Long userId, int paintNum) {
public void addPlatformUserAiPaintNum(String platform, String appType,Long userId, int paintNum) {
//判断是哪个平台的
switch (platform){
//抖音
case "1":
//查询用户信息
TiktokUser tiktokUser = tiktokUserService.getUserById(userId);
TiktokUser tiktokUser = tiktokUserService.getUserById(userId,appType);
tiktokUser.setGoldNum(tiktokUser.getGoldNum()+paintNum);
//更新用户信息
tiktokUserService.updateTiktokUser(tiktokUser);
@ -739,7 +831,7 @@ public class StableDiffusionServiceImpl implements StableDiffusionService {
//快手
case "2":
//查询用户信息
FhUser fhUser = fhUserService.getUserById(userId);
FhUser fhUser = fhUserService.getUserById(userId,appType);
fhUser.setGoldNum(fhUser.getGoldNum()+paintNum);
//更新用户信息
fhUserService.updateFhUser(fhUser);
@ -747,7 +839,7 @@ public class StableDiffusionServiceImpl implements StableDiffusionService {
//微信
case "3":
//查询用户信息
WxUser wxUser = wxUserService.getUserById(userId);
WxUser wxUser = wxUserService.getUserById(userId,appType);
wxUser.setGoldNum(wxUser.getGoldNum()+paintNum);
//更新用户信息
wxUserService.updateWxUser(wxUser);

30
bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/TiktokUserServiceImpl.java

@ -7,6 +7,7 @@ import com.bnyer.common.core.constant.TiktokConstant;
import com.bnyer.common.core.domain.R;
import com.bnyer.common.core.domain.TiktokUser;
import com.bnyer.common.core.dto.TiktokLoginDto;
import com.bnyer.common.core.enums.EnumAppType;
import com.bnyer.common.core.exception.ServiceException;
import com.bnyer.common.core.utils.Sm4Util;
import com.bnyer.common.core.vo.TiktokUserLoginVo;
@ -53,17 +54,23 @@ public class TiktokUserServiceImpl implements TiktokUserService {
/**
* 获取用户openId及sessionKey
* @param code 登录凭证code
* @param appType 应用类型(0->次元意境;1->妙鸭壁纸)
* @return -
*/
private TiktokSessionInfoVo getSessionInfo(String code) {
private TiktokSessionInfoVo getSessionInfo(String code,String appType) {
Map<String,String> map = new HashMap<>();
map.put("appid",tiktokConfig.getAppId());
map.put("secret", tiktokConfig.getSecret());
if(appType.equals(EnumAppType.YJ_APP.getCode())){
map.put("appid",tiktokConfig.getYjAppId());
map.put("secret", tiktokConfig.getYjSecret());
}else if (appType.equals(EnumAppType.MY_APP.getCode())){
map.put("appid",tiktokConfig.getMyAppId());
map.put("secret", tiktokConfig.getMySecret());
}
map.put("code", code);
map.put("grant_type", "client_credential");
JSONObject sessionInfo = restTemplate.postForObject(tiktokConfig.getSessionInfoUrl(), map, JSONObject.class);
if(!sessionInfo.getString("err_no").equals(TiktokConstant.SUCCESS)){
log.error("抖音授权session接口调用失败,错误状态码为:【{}】,错误信息为:【{}】",sessionInfo.getString("err_no"),sessionInfo.getString("err_tips"));
log.error("抖音授权【{}】session接口调用失败,错误状态码为:【{}】,错误信息为:【{}】",appType,sessionInfo.getString("err_no"),sessionInfo.getString("err_tips"));
throw new ServiceException("抖音授权session接口调用失败!",TiktokConstant.TIKTOK_AUTH_ERROR);
}
//调用成功,组装返回数据
@ -111,20 +118,22 @@ public class TiktokUserServiceImpl implements TiktokUserService {
* @param sessionKey -
* @param encryptedData 敏感信息数据
* @param iv 加密向量
* @param appType app类型
* @return -
*/
private TiktokUser saveUserInfo(String openId,String sessionKey,String encryptedData,String iv){
private TiktokUser saveUserInfo(String openId,String sessionKey,String encryptedData,String iv,String appType){
//获取敏感信息
TiktokUserInfoVo userInfo = this.getUserInfo(sessionKey, encryptedData, iv);
TiktokUser user = new TiktokUser();
user.setUsername(userInfo.getNickName());
user.setImg(userInfo.getAvatarUrl());
user.setTiktokCode(Sm4Util.sm4Encryption(openId));
user.setAppType(appType);
user.setIsShow("1");
user.setCreateTime(new Date());
user.setUpdateTime(new Date());
tiktokUserMapper.insert(user);
log.info("抖音用户【{}】创建成功!",user.getId());
log.info("应用【{}】抖音用户【{}】创建成功!",appType,user.getId());
return user;
}
@ -173,7 +182,7 @@ public class TiktokUserServiceImpl implements TiktokUserService {
@Override
public boolean checkUserCanAiPaint(Long userId, String platform, String appType) {
//查询用户信息
TiktokUser tiktokUser = this.getUserById(userId);
TiktokUser tiktokUser = this.getUserById(userId,appType);
//获取用户画意值
if(tiktokUser.getGoldNum() <=0){
return true;
@ -184,14 +193,14 @@ public class TiktokUserServiceImpl implements TiktokUserService {
@Override
public R<LoginTiktokUser> getTiktokLoginUserByLoginParam(TiktokLoginDto dto) {
TiktokSessionInfoVo sessionInfo = this.getSessionInfo(dto.getCode());
TiktokSessionInfoVo sessionInfo = this.getSessionInfo(dto.getCode(), dto.getAppType());
//检查数据库中是否存在该openId,存在则直接返回结果;不存在则新增
LambdaQueryWrapper<TiktokUser> wrapper = new LambdaQueryWrapper<>();
wrapper.eq(sessionInfo.getOpenId() != null,TiktokUser::getTiktokCode,Sm4Util.sm4Encryption(sessionInfo.getOpenId()));
TiktokUser tiktokUser = tiktokUserMapper.selectOne(wrapper);
if(tiktokUser == null){
//新用户,新增
tiktokUser = this.saveUserInfo(sessionInfo.getOpenId(), sessionInfo.getSessionKey(), dto.getEncryptedData(), dto.getIv());
tiktokUser = this.saveUserInfo(sessionInfo.getOpenId(), sessionInfo.getSessionKey(), dto.getEncryptedData(), dto.getIv(),dto.getAppType());
}
LoginTiktokUser loginTiktokUser = new LoginTiktokUser();
TiktokUserLoginVo loginVo = new TiktokUserLoginVo();
@ -201,10 +210,11 @@ public class TiktokUserServiceImpl implements TiktokUserService {
}
@Override
public TiktokUser getUserById(Long id) {
public TiktokUser getUserById(Long id,String appType) {
LambdaQueryWrapper<TiktokUser> wrapper = new LambdaQueryWrapper<>();
wrapper.eq(TiktokUser::getId, id);
wrapper.eq(TiktokUser::getIsShow,"1");
wrapper.eq(TiktokUser::getAppType, appType);
TiktokUser tiktokUser = tiktokUserMapper.selectOne(wrapper);
if(tiktokUser == null){
throw new ServiceException("当前用户不存在!");

14
bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/WxUserServiceImpl.java

@ -5,7 +5,6 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.bnyer.common.core.constant.RedisKeyConstant;
import com.bnyer.common.core.constant.TiktokConstant;
import com.bnyer.common.core.domain.R;
import com.bnyer.common.core.domain.TiktokUser;
import com.bnyer.common.core.domain.WxUser;
import com.bnyer.common.core.dto.WxLoginDto;
import com.bnyer.common.core.exception.ServiceException;
@ -107,9 +106,10 @@ public class WxUserServiceImpl implements WxUserService {
* @param sessionKey -
* @param encryptedData 敏感信息数据
* @param iv 加密向量
* @param appType app类型
* @return -
*/
private WxUser saveUserInfo(String openId, String sessionKey, String encryptedData, String iv) {
private WxUser saveUserInfo(String openId, String sessionKey, String encryptedData, String iv,String appType) {
//创建用户
WxUser wxUser = new WxUser();
//获取用户昵称和头像
@ -117,10 +117,11 @@ public class WxUserServiceImpl implements WxUserService {
wxUser.setImg(userInfo.getAvatarUrl());
wxUser.setUsername(userInfo.getNickName());
wxUser.setWxCode(Sm4Util.sm4Encryption(openId));
wxUser.setAppType(appType);
wxUser.setCreateTime(new Date());
wxUser.setUpdateTime(new Date());
wxUserMapper.insert(wxUser);
log.info("微信用户【{}】创建成功!", openId);
log.info("应用【{}】微信用户【{}】创建成功!",appType,wxUser.getId());
return wxUser;
}
@ -168,7 +169,7 @@ public class WxUserServiceImpl implements WxUserService {
@Override
public boolean checkUserCanAiPaint(Long userId, String platform, String appType) {
//查询用户信息
WxUser wxUser = this.getUserById(userId);
WxUser wxUser = this.getUserById(userId,appType);
//获取用户画意值
if(wxUser.getGoldNum() <=0){
return true;
@ -186,7 +187,7 @@ public class WxUserServiceImpl implements WxUserService {
WxUser wxUser = wxUserMapper.selectOne(wrapper);
if (wxUser == null) {
//新用户,新增
wxUser = this.saveUserInfo(sessionInfo.getOpenId(), sessionInfo.getSessionKey(), dto.getEncryptedData(), dto.getIv());
wxUser = this.saveUserInfo(sessionInfo.getOpenId(), sessionInfo.getSessionKey(), dto.getEncryptedData(), dto.getIv(),dto.getAppType());
}
LoginWechatUser loginWxUser = new LoginWechatUser();
WxUserLoginVo loginVo = new WxUserLoginVo();
@ -196,10 +197,11 @@ public class WxUserServiceImpl implements WxUserService {
}
@Override
public WxUser getUserById(Long id) {
public WxUser getUserById(Long id,String appType) {
LambdaQueryWrapper<WxUser> wrapper = new LambdaQueryWrapper<>();
wrapper.eq(WxUser::getId, id);
wrapper.eq(WxUser::getIsShow,"1");
wrapper.eq(WxUser::getAppType, appType);
WxUser wxUser = wxUserMapper.selectOne(wrapper);
if(wxUser == null){
throw new ServiceException("当前用户不存在!");

2
bnyer-services/bnyer-img/src/main/java/com/bnyer/img/vo/CreatorProfitPreVo.java

@ -35,7 +35,7 @@ public class CreatorProfitPreVo implements Serializable {
@ApiModelProperty(value="结算平台(1->抖音;2->快手;3->微信)")
private String platform;
@ApiModelProperty(value="应用类型(0->次元意境)")
@ApiModelProperty(value="app类型(0->次元意境;1->妙鸭壁纸)")
private String appType;
@ApiModelProperty(value="收益类型(0->广告浏览;1->邀请;2->会员)")

3
bnyer-services/bnyer-img/src/main/java/com/bnyer/img/vo/DiamondLogVo.java

@ -29,6 +29,9 @@ public class DiamondLogVo implements Serializable {
@ApiModelProperty(value="平台(1->抖音;2->快手;3->微信)")
private String source;
@ApiModelProperty(value="app类型(0->次元意境;1->妙鸭壁纸)")
private String appType;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@ApiModelProperty(value="创建时间")
private Date createTime;

4
bnyer-services/bnyer-img/src/main/java/com/bnyer/img/vo/GoldLogVo.java

@ -26,9 +26,13 @@ public class GoldLogVo implements Serializable {
@ApiModelProperty(value="获取/消耗原因")
private String reason;
@ApiModelProperty(value="平台(1->抖音;2->快手;3->微信)")
private String source;
@ApiModelProperty(value="app类型(0->次元意境;1->妙鸭壁纸)")
private String appType;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@ApiModelProperty(value="创建时间")
private Date createTime;

3
bnyer-services/bnyer-img/src/main/java/com/bnyer/img/vo/TiktokSessionInfoVo.java

@ -25,5 +25,8 @@ public class TiktokSessionInfoVo implements Serializable {
@ApiModelProperty(value="anonymousOpenid")
private String anonymousOpenid;
@ApiModelProperty(value="app类型(0->次元意境;1->妙鸭壁纸)")
private String appType;
private static final long serialVersionUID = 1L;
}

9
bnyer-services/bnyer-img/src/main/resources/com/bnyer/img/mapper/AiPaintMapper.xml

@ -16,6 +16,7 @@
<result column="width" jdbcType="VARCHAR" property="width" />
<result column="is_show" jdbcType="CHAR" property="isShow" />
<result column="source" jdbcType="CHAR" property="source" />
<result column="app_type" jdbcType="CHAR" property="appType" />
<result column="create_time" jdbcType="TIMESTAMP" property="createTime" />
<result column="negative_prompt" jdbcType="VARCHAR" property="negativePrompt" />
<result column="steps" jdbcType="INTEGER" property="steps" />
@ -28,21 +29,21 @@
<sql id="Base_Column_List">
<!--@mbg.generated-->
id, paint_id, painter_id, painter_name, img_url, prompt, model,style_name, height, width, is_show,
`source`, create_time,negative_prompt,steps,seed,batch_size,cfg_scale,eta,sampler_index
`source`, create_time,negative_prompt,steps,seed,batch_size,cfg_scale,eta,sampler_index,app_type
</sql>
<select id="queryPage" resultType="com.bnyer.img.vo.AiPaintVo">
select
id, paint_id,painter_name,img_url, prompt, style_name,height, width,create_time,source,
id, paint_id,painter_name,img_url, prompt, style_name,height, width,create_time,source,app_type,
negative_prompt,steps,seed,batch_size,cfg_scale,eta,sampler_index
from img_ai_paint
where is_show = '1' and source = #{source} and painter_id = #{painterId}
where is_show = '1' and source = #{source} and painter_id = #{painterId} and app_type = #{appType}
order by create_time desc
</select>
<select id="queryDetails" resultType="com.bnyer.img.vo.AiPaintVo">
select
id, paint_id,painter_name,img_url, prompt, style_name,height, width,create_time,source,
id, paint_id,painter_name,img_url, prompt, style_name,height, width,create_time,source,app_type,
negative_prompt,steps,seed,batch_size,cfg_scale,eta,sampler_index
from img_ai_paint where id = #{id}
</select>

3
bnyer-services/bnyer-img/src/main/resources/com/bnyer/img/mapper/CdkLogMapper.xml

@ -9,11 +9,12 @@
<result column="paint_num" jdbcType="INTEGER" property="paintNum" />
<result column="user_id" jdbcType="BIGINT" property="userId" />
<result column="source" jdbcType="CHAR" property="source" />
<result column="app_type" jdbcType="CHAR" property="appType" />
<result column="is_show" jdbcType="CHAR" property="isShow" />
<result column="create_time" jdbcType="TIMESTAMP" property="createTime" />
</resultMap>
<sql id="Base_Column_List">
<!--@mbg.generated-->
id, cdk, user_id, `source`, is_show, create_time,paint_num
id, cdk, user_id, `source`, is_show, create_time,paint_num,app_type
</sql>
</mapper>

7
bnyer-services/bnyer-img/src/main/resources/com/bnyer/img/mapper/DiamondLogMapper.xml

@ -8,6 +8,7 @@
<result column="user_id" jdbcType="BIGINT" property="userId" />
<result column="diamond_num" jdbcType="INTEGER" property="diamondNum" />
<result column="reason" jdbcType="VARCHAR" property="reason" />
<result column="app_type" jdbcType="CHAR" property="appType" />
<result column="source" jdbcType="CHAR" property="source" />
<result column="is_show" jdbcType="CHAR" property="isShow" />
<result column="create_time" jdbcType="TIMESTAMP" property="createTime" />
@ -16,14 +17,14 @@
</resultMap>
<sql id="Base_Column_List">
<!--@mbg.generated-->
id, user_id, diamond_num, reason, `source`, is_show, create_time, update_time, sort
id, user_id, diamond_num, reason, `source`, is_show, create_time, update_time, sort,app_type
</sql>
<select id="queryPage" resultType="com.bnyer.img.vo.DiamondLogVo">
select
id, user_id, diamond_num, reason, `source`,create_time
id, user_id, diamond_num, reason, `source`,create_time,app_type
from img_diamond_log
where user_id = #{userId} and source = #{source}
where user_id = #{userId} and source = #{source} and app_type = #{appType}
order by create_time desc
</select>
</mapper>

3
bnyer-services/bnyer-img/src/main/resources/com/bnyer/img/mapper/FhUserMapper.xml

@ -9,6 +9,7 @@
<result column="fh_code" jdbcType="VARCHAR" property="fhCode" />
<result column="phone" jdbcType="VARCHAR" property="phone" />
<result column="img" jdbcType="VARCHAR" property="img" />
<result column="app_type" jdbcType="CHAR" property="appType" />
<result column="is_vip" jdbcType="CHAR" property="isVip" />
<result column="gold_num" jdbcType="INTEGER" property="goldNum" />
<result column="diamond_num" jdbcType="INTEGER" property="diamondNum" />
@ -19,7 +20,7 @@
</resultMap>
<sql id="Base_Column_List">
<!--@mbg.generated-->
id, username, fh_code,phone, img,is_vip,gold_num,diamond_num, is_show, create_time, update_time, sort
id, username, fh_code,phone, img,is_vip,gold_num,diamond_num, is_show, create_time, update_time, sort,app_type
</sql>
<select id="queryGoldNum" resultType="int">

7
bnyer-services/bnyer-img/src/main/resources/com/bnyer/img/mapper/GoldLogMapper.xml

@ -9,6 +9,7 @@
<result column="gold_num" jdbcType="INTEGER" property="goldNum" />
<result column="reason" jdbcType="VARCHAR" property="reason" />
<result column="source" jdbcType="CHAR" property="source" />
<result column="app_type" jdbcType="CHAR" property="appType" />
<result column="is_show" jdbcType="CHAR" property="isShow" />
<result column="create_time" jdbcType="TIMESTAMP" property="createTime" />
<result column="update_time" jdbcType="TIMESTAMP" property="updateTime" />
@ -16,14 +17,14 @@
</resultMap>
<sql id="Base_Column_List">
<!--@mbg.generated-->
id, user_id, gold_num, reason, `source`, is_show, create_time, update_time, sort
id, user_id, gold_num, reason, `source`, is_show, create_time, update_time, sort,app_type
</sql>
<select id="queryPage" resultType="com.bnyer.img.vo.GoldLogVo">
select
id, user_id, gold_num, reason, `source`,create_time
id, user_id, gold_num, reason, `source`,create_time,app_type
from img_gold_log
where user_id = #{userId} and source = #{source} and is_show = '1'
where user_id = #{userId} and source = #{source} and is_show = '1' and app_type = #{appType}
order by create_time desc
</select>
</mapper>

3
bnyer-services/bnyer-img/src/main/resources/com/bnyer/img/mapper/PaintCdkMapper.xml

@ -10,12 +10,13 @@
<result column="is_show" jdbcType="CHAR" property="isShow" />
<result column="is_use" jdbcType="CHAR" property="isUse" />
<result column="source" jdbcType="CHAR" property="source" />
<result column="app_type" jdbcType="CHAR" property="appType" />
<result column="create_time" jdbcType="TIMESTAMP" property="createTime" />
<result column="update_time" jdbcType="TIMESTAMP" property="updateTime" />
<result column="sort" jdbcType="INTEGER" property="sort" />
</resultMap>
<sql id="Base_Column_List">
<!--@mbg.generated-->
id, cdk, is_show, is_use, `source`, create_time, update_time, sort,paint_num
id, cdk, is_show, is_use, `source`, create_time, update_time, sort,paint_num,app_type
</sql>
</mapper>

3
bnyer-services/bnyer-img/src/main/resources/com/bnyer/img/mapper/TiktokUserMapper.xml

@ -9,6 +9,7 @@
<result column="tiktok_code" jdbcType="VARCHAR" property="tiktokCode" />
<result column="phone" jdbcType="VARCHAR" property="phone" />
<result column="img" jdbcType="VARCHAR" property="img" />
<result column="app_type" jdbcType="CHAR" property="appType" />
<result column="is_vip" jdbcType="CHAR" property="isVip" />
<result column="gold_num" jdbcType="INTEGER" property="goldNum" />
<result column="diamond_num" jdbcType="INTEGER" property="diamondNum" />
@ -21,7 +22,7 @@
<sql id="Base_Column_List">
<!--@mbg.generated-->
id, username, tiktok_code,phone, img,is_vip,gold_num,diamond_num,is_show, create_time, update_time, sort
id, username, tiktok_code,phone, img,is_vip,gold_num,diamond_num,is_show, create_time, update_time, sort,app_type
</sql>
<select id="queryGoldNum" resultType="int">

3
bnyer-services/bnyer-img/src/main/resources/com/bnyer/img/mapper/WxUserMapper.xml

@ -9,6 +9,7 @@
<result column="wx_code" jdbcType="VARCHAR" property="wxCode" />
<result column="phone" jdbcType="VARCHAR" property="phone" />
<result column="img" jdbcType="VARCHAR" property="img" />
<result column="app_type" jdbcType="CHAR" property="appType" />
<result column="is_vip" jdbcType="CHAR" property="isVip" />
<result column="gold_num" jdbcType="INTEGER" property="goldNum" />
<result column="diamond_num" jdbcType="INTEGER" property="diamondNum" />
@ -19,7 +20,7 @@
</resultMap>
<sql id="Base_Column_List">
<!--@mbg.generated-->
id, username, wx_code,phone, img,is_vip,gold_num,diamond_num, is_show, create_time, update_time, sort
id, username, wx_code,phone, img,is_vip,gold_num,diamond_num, is_show, create_time, update_time, sort,app_type
</sql>
<select id="queryGoldNum" resultType="int">

2
bnyer-services/bnyer-system/src/main/java/com/bnyer/system/mapper/CreatorProfitMapper.java

@ -20,7 +20,7 @@ public interface CreatorProfitMapper extends BaseMapper<CreatorProfit> {
/**
* 查询所有指定平台类型待入账信息
* @param platform 平台(1->抖音;2->快手;3->微信)
* @param appType 应用
* @param appType app类型(0->次元意境;1->妙鸭壁纸)
* @param type 收益类型
* @param date 日期
* @return -

3
bnyer-services/bnyer-system/src/main/resources/com/bnyer/system/mapper/WxUserMapper.xml

@ -9,6 +9,7 @@
<result column="wx_code" jdbcType="VARCHAR" property="wxCode" />
<result column="phone" jdbcType="VARCHAR" property="phone" />
<result column="img" jdbcType="VARCHAR" property="img" />
<result column="app_type" jdbcType="CHAR" property="appType" />
<result column="is_vip" jdbcType="CHAR" property="isVip" />
<result column="is_show" jdbcType="CHAR" property="isShow" />
<result column="create_time" jdbcType="TIMESTAMP" property="createTime" />
@ -17,7 +18,7 @@
</resultMap>
<sql id="Base_Column_List">
<!--@mbg.generated-->
id, username, wx_code,phone, img,is_vip, is_show, create_time, update_time, sort
id, username, wx_code,phone, img,is_vip, is_show, create_time, update_time, sort,app_type
</sql>
<select id="queryPage" resultMap="BaseResultMap">

Loading…
Cancel
Save