Autor | SHA1 | Nachricht | Datum |
---|---|---|---|
|
5ffb073f3c | Merge branch 'photo' of https://git.malls.iformall.com/suimang/suimangServer into photo | vor 1 Jahr |
|
ee8b67c414 | //package | vor 1 Jahr |
@@ -0,0 +1,52 @@ | |||||
package com.iformall.domain.po; | |||||
import com.baomidou.mybatisplus.annotation.TableField; | |||||
import com.baomidou.mybatisplus.annotation.TableName; | |||||
import com.iformall.domain.po.base.TenantEntity; | |||||
import lombok.Data; | |||||
import lombok.EqualsAndHashCode; | |||||
import lombok.ToString; | |||||
import java.util.Date; | |||||
@TableName(value = "level_package") | |||||
@Data | |||||
@ToString(callSuper = true) | |||||
@EqualsAndHashCode(callSuper = true) | |||||
public class LevelPackage extends TenantEntity { | |||||
protected Long id; | |||||
@io.swagger.annotations.ApiModelProperty(value="等级",name="level") | |||||
private Integer level; | |||||
@io.swagger.annotations.ApiModelProperty(value="名称",name="name") | |||||
private String name; | |||||
@io.swagger.annotations.ApiModelProperty(value="",name="en_name") | |||||
private String en_name; | |||||
@io.swagger.annotations.ApiModelProperty(value="套餐色",name="color") | |||||
private String color; | |||||
@io.swagger.annotations.ApiModelProperty(value="",name="priceDollar") | |||||
private Integer priceDollar; | |||||
@io.swagger.annotations.ApiModelProperty(value="",name="priceRmb") | |||||
private Integer priceRmb; | |||||
@io.swagger.annotations.ApiModelProperty(value="套餐积分",name="credit") | |||||
private Integer credit; | |||||
@io.swagger.annotations.ApiModelProperty(value="套餐时长",name="validityDuration") | |||||
private Integer validityDuration; | |||||
@io.swagger.annotations.ApiModelProperty(value="创建时间",name="createDate") | |||||
private Date createDate; | |||||
@io.swagger.annotations.ApiModelProperty(value="",name="updateDate") | |||||
private Date updateDate; | |||||
@TableField(exist = false) | |||||
private Date startDate; | |||||
@TableField(exist = false) | |||||
private Date endDate; | |||||
} |
@@ -0,0 +1,121 @@ | |||||
package com.iformall.domain.po; | |||||
import com.baomidou.mybatisplus.annotation.TableField; | |||||
import com.baomidou.mybatisplus.annotation.TableName; | |||||
import com.iformall.domain.po.base.TenantEntity; | |||||
import com.iformall.enums.sm.EnumAiTemplateType; | |||||
import com.iformall.enums.sm.EnumLanguageType; | |||||
import com.iformall.enums.sm.EnumSoundType; | |||||
import com.iformall.enums.sm.EnumVideoFormatType; | |||||
import lombok.Data; | |||||
import lombok.EqualsAndHashCode; | |||||
import lombok.ToString; | |||||
import java.util.Date; | |||||
@TableName(value = "project_package_detail") | |||||
@Data | |||||
@ToString(callSuper = true) | |||||
@EqualsAndHashCode(callSuper = true) | |||||
public class ProjectPackageDetail extends TenantEntity { | |||||
protected Long id; | |||||
@io.swagger.annotations.ApiModelProperty(value="项目",name="projectType") | |||||
private Integer projectType; | |||||
@io.swagger.annotations.ApiModelProperty(value="套餐ID",name="packageId") | |||||
private Long packageId; | |||||
@io.swagger.annotations.ApiModelProperty(value="邀请用户加积分数量",name="inviteUserCredit") | |||||
private Integer inviteUserCredit; | |||||
@io.swagger.annotations.ApiModelProperty(value="ai生成照片价格",name="aiPhotoPrice") | |||||
private Integer aiPhotoPrice; | |||||
@io.swagger.annotations.ApiModelProperty(value="ai生成脚本价格",name="aiScriptPrice") | |||||
private Integer aiScriptPrice; | |||||
@io.swagger.annotations.ApiModelProperty(value="生成视频价格",name="videoPrice") | |||||
private Integer videoPrice; | |||||
@io.swagger.annotations.ApiModelProperty(value="是否有水印",name="isVideoWatermark") | |||||
private Integer isVideoWatermark; | |||||
@io.swagger.annotations.ApiModelProperty(value="EnumLanguageType",name="language") | |||||
private Integer language; | |||||
@TableField(exist = false) | |||||
private String languageDesc; | |||||
public String getLanguageDesc(){ | |||||
if(this.language != null){ | |||||
EnumLanguageType languageEnum = EnumLanguageType.getEnum(language); | |||||
if(languageEnum != null){ | |||||
languageDesc = languageEnum.getMessage(); | |||||
} | |||||
} | |||||
return languageDesc; | |||||
} | |||||
@io.swagger.annotations.ApiModelProperty(value="EnumSoundType",name="sound") | |||||
private Integer sound; | |||||
@TableField(exist = false) | |||||
private String soundDesc; | |||||
public String getSoundDesc(){ | |||||
if(this.sound != null){ | |||||
EnumSoundType soundEnum = EnumSoundType.getEnum(sound); | |||||
if(soundEnum != null){ | |||||
soundDesc = soundEnum.getMessage(); | |||||
} | |||||
} | |||||
return soundDesc; | |||||
} | |||||
@io.swagger.annotations.ApiModelProperty(value="生成视频最大时长(s)",name="videoTime") | |||||
private Integer videoTime; | |||||
@io.swagger.annotations.ApiModelProperty(value="可生成照片的次数",name="aiPhoto") | |||||
private Integer aiPhoto; | |||||
@io.swagger.annotations.ApiModelProperty(value="是否可唱歌",name="isSing") | |||||
private Integer isSing; | |||||
@io.swagger.annotations.ApiModelProperty(value="可生成脚本的次数",name="aiScript") | |||||
private Integer aiScript; | |||||
@io.swagger.annotations.ApiModelProperty(value="EnumVideoFormatType",name="videoFormat") | |||||
private Integer videoFormat; | |||||
@TableField(exist = false) | |||||
private String videoFormatDesc; | |||||
public String getVideoFormatDesc(){ | |||||
if(this.videoFormat != null){ | |||||
EnumVideoFormatType videoFormatEnum = EnumVideoFormatType.getEnum(videoFormat); | |||||
if(videoFormatEnum != null){ | |||||
videoFormatDesc = videoFormatEnum.getMessage(); | |||||
} | |||||
} | |||||
return videoFormatDesc; | |||||
} | |||||
@io.swagger.annotations.ApiModelProperty(value="EnumAiTemplateType",name="template") | |||||
private Integer template; | |||||
@TableField(exist = false) | |||||
private String templateDesc; | |||||
public String getTemplateDesc(){ | |||||
if(this.template != null){ | |||||
EnumAiTemplateType templateEnum = EnumAiTemplateType.getEnum(template); | |||||
if(templateEnum != null){ | |||||
templateDesc = templateEnum.getMessage(); | |||||
} | |||||
} | |||||
return templateDesc; | |||||
} | |||||
@io.swagger.annotations.ApiModelProperty(value="创建时间",name="createDate") | |||||
private Date createDate; | |||||
@io.swagger.annotations.ApiModelProperty(value="",name="updateDate") | |||||
private Date updateDate; | |||||
@TableField(exist = false) | |||||
private Date startDate; | |||||
@TableField(exist = false) | |||||
private Date endDate; | |||||
} |
@@ -0,0 +1,52 @@ | |||||
package com.iformall.domain.po; | |||||
import com.baomidou.mybatisplus.annotation.TableField; | |||||
import com.baomidou.mybatisplus.annotation.TableName; | |||||
import com.iformall.domain.po.base.TenantEntity; | |||||
import lombok.Data; | |||||
import lombok.EqualsAndHashCode; | |||||
import lombok.ToString; | |||||
import java.util.Date; | |||||
@TableName(value = "user_level_package") | |||||
@Data | |||||
@ToString(callSuper = true) | |||||
@EqualsAndHashCode(callSuper = true) | |||||
public class UserLevelPackage extends TenantEntity { | |||||
protected Long id; | |||||
@io.swagger.annotations.ApiModelProperty(value="套餐ID",name="packageId") | |||||
private Long packageId; | |||||
@io.swagger.annotations.ApiModelProperty(value="套餐等级",name="packageLevel") | |||||
private Integer packageLevel; | |||||
@io.swagger.annotations.ApiModelProperty(value="套餐色",name="packageColor") | |||||
private String packageColor; | |||||
@io.swagger.annotations.ApiModelProperty(value="用户总积分",name="userCredits") | |||||
private Integer userCredits; | |||||
@io.swagger.annotations.ApiModelProperty(value="剩余积分",name="residueCredits") | |||||
private Integer residueCredits; | |||||
@io.swagger.annotations.ApiModelProperty(value="到期时间",name="expiresDate") | |||||
private Date expiresDate; | |||||
@io.swagger.annotations.ApiModelProperty(value="",name="createDate") | |||||
private Date createDate; | |||||
@io.swagger.annotations.ApiModelProperty(value="",name="updateDate") | |||||
private Date updateDate; | |||||
@TableField(exist = false) | |||||
private Integer addCredits; | |||||
@TableField(exist = false) | |||||
private Integer addSumCredits; | |||||
@TableField(exist = false) | |||||
private Integer reduceCredits; | |||||
} |
@@ -0,0 +1,34 @@ | |||||
package com.iformall.enums.sm; | |||||
/** | |||||
* 数字人模板 | |||||
*/ | |||||
public enum EnumAiTemplateType { | |||||
FREE(1, "免费"), | |||||
VIP(2, "VIP"); | |||||
public static EnumAiTemplateType getEnum(Integer code) { | |||||
for (EnumAiTemplateType value : values()) { | |||||
if (value.getCode().equals(code)) { | |||||
return value; | |||||
} | |||||
} | |||||
return null; | |||||
} | |||||
private Integer code; | |||||
private String message; | |||||
EnumAiTemplateType(Integer code, String message) { | |||||
this.code = code; | |||||
this.message = message; | |||||
} | |||||
public Integer getCode() { | |||||
return code; | |||||
} | |||||
public String getMessage() { | |||||
return message; | |||||
} | |||||
} |
@@ -0,0 +1,34 @@ | |||||
package com.iformall.enums.sm; | |||||
/** | |||||
* 数字人模板 | |||||
*/ | |||||
public enum EnumTemplateType { | |||||
FREE(1, "免费"), | |||||
VIP(2, "VIP"); | |||||
public static EnumTemplateType getEnum(Integer code) { | |||||
for (EnumTemplateType value : values()) { | |||||
if (value.getCode().equals(code)) { | |||||
return value; | |||||
} | |||||
} | |||||
return null; | |||||
} | |||||
private Integer code; | |||||
private String message; | |||||
EnumTemplateType(Integer code, String message) { | |||||
this.code = code; | |||||
this.message = message; | |||||
} | |||||
public Integer getCode() { | |||||
return code; | |||||
} | |||||
public String getMessage() { | |||||
return message; | |||||
} | |||||
} |
@@ -0,0 +1,34 @@ | |||||
package com.iformall.enums.sm; | |||||
/** | |||||
* 分辨率 | |||||
*/ | |||||
public enum EnumVideoFormatType { | |||||
VIDEOFORMAT_720P(1, "720p"), | |||||
VIDEOFORMAT_1080P(2, "1080p"); | |||||
public static EnumVideoFormatType getEnum(Integer code) { | |||||
for (EnumVideoFormatType value : values()) { | |||||
if (value.getCode().equals(code)) { | |||||
return value; | |||||
} | |||||
} | |||||
return null; | |||||
} | |||||
private Integer code; | |||||
private String message; | |||||
EnumVideoFormatType(Integer code, String message) { | |||||
this.code = code; | |||||
this.message = message; | |||||
} | |||||
public Integer getCode() { | |||||
return code; | |||||
} | |||||
public String getMessage() { | |||||
return message; | |||||
} | |||||
} |
@@ -0,0 +1,12 @@ | |||||
package com.iformall.mapper; | |||||
import com.iformall.common.CommonMapper; | |||||
import com.iformall.domain.po.LevelPackage; | |||||
import java.util.List; | |||||
public interface LevelPackageMapper extends CommonMapper<LevelPackage, Long>{ | |||||
List<LevelPackage> findList(LevelPackage record); | |||||
} |
@@ -0,0 +1,12 @@ | |||||
package com.iformall.mapper; | |||||
import com.iformall.common.CommonMapper; | |||||
import com.iformall.domain.po.ProjectPackageDetail; | |||||
import java.util.List; | |||||
public interface ProjectPackageDetailMapper extends CommonMapper<ProjectPackageDetail, Long>{ | |||||
List<ProjectPackageDetail> findList(ProjectPackageDetail record); | |||||
} |
@@ -0,0 +1,12 @@ | |||||
package com.iformall.mapper; | |||||
import com.iformall.common.CommonMapper; | |||||
import com.iformall.domain.po.UserLevelPackage; | |||||
import java.util.List; | |||||
public interface UserLevelPackageMapper extends CommonMapper<UserLevelPackage, Long>{ | |||||
List<UserLevelPackage> findList(UserLevelPackage record); | |||||
} |
@@ -0,0 +1,69 @@ | |||||
<?xml version="1.0" encoding="UTF-8"?> | |||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> | |||||
<mapper namespace="com.iformall.mapper.LevelPackageMapper"> | |||||
<resultMap id="BaseResultMap" type="com.iformall.domain.po.LevelPackage"> | |||||
<id column="id" jdbcType="BIGINT" property="id" /> | |||||
<result column="tenant_id" jdbcType="VARCHAR" property="tenantId" /> | |||||
<result column="parent_tenant_id" jdbcType="VARCHAR" property="parentTenantId"/> | |||||
<result column="level" jdbcType="INTEGER" property="level" /> | |||||
<result column="name" jdbcType="VARCHAR" property="name" /> | |||||
<result column="en_name" jdbcType="VARCHAR" property="enName"/> | |||||
<result column="color" jdbcType="VARCHAR" property="color"/> | |||||
<result column="price_dollar" jdbcType="INTEGER" property="priceDollar" /> | |||||
<result column="price_rmb" jdbcType="INTEGER" property="priceRmb" /> | |||||
<result column="credit" jdbcType="INTEGER" property="credit" /> | |||||
<result column="validity_duration" jdbcType="INTEGER" property="validityDuration" /> | |||||
<result column="create_date" jdbcType="TIMESTAMP" property="createDate" /> | |||||
<result column="update_date" jdbcType="TIMESTAMP" property="updateDate"/> | |||||
</resultMap> | |||||
<sql id="allColumns"> | |||||
`id`,`tenant_id`,`parent_tenant_id`, | |||||
`level`,`name`,`en_name`,`color`, | |||||
`price_dollar`,`price_rmb`,`credit`,`validity_duration`, | |||||
`create_date`,`update_date` | |||||
</sql> | |||||
<sql id="dynamicWhereConditions"> | |||||
where is_del = 0 | |||||
<if test=" null != id "> and `id` = #{id} </if> | |||||
<if test=" null != tenantId and '' != tenantId"> | |||||
and `tenant_id` = #{tenantId} | |||||
</if> | |||||
<if test=" null != parentTenantId and '' != parentTenantId"> | |||||
and `parent_tenant_id` = #{parentTenantId} | |||||
</if> | |||||
<if test=" null != level "> and `level` = #{level} </if> | |||||
<if test=" null != name and '' != name"> | |||||
and `name` like concat('%', #{name},'%') | |||||
</if> | |||||
<if test=" null != enName and '' != enName"> | |||||
and `en_name` like concat('%', #{enName},'%') | |||||
</if> | |||||
<if test=" null != startDate "> | |||||
and `create_date` >= #{startDate} | |||||
</if> | |||||
<if test=" null != endDate"> | |||||
and `create_date` <= #{endDate} | |||||
</if> | |||||
<if test=" null != ids "> | |||||
and id in | |||||
<foreach collection="ids" index="index" item="idItem" open="(" separator="," close=")"> | |||||
#{idItem} | |||||
</foreach> | |||||
</if> | |||||
<if test=" null != sortColumns"> order by ${sortColumns} </if> | |||||
</sql> | |||||
<select id="findList" parameterType="com.iformall.domain.po.LevelPackage" resultMap="BaseResultMap"> | |||||
select <include refid="allColumns" /> | |||||
from level_package | |||||
<include refid="dynamicWhereConditions" /> | |||||
</select> | |||||
</mapper> |
@@ -0,0 +1,75 @@ | |||||
<?xml version="1.0" encoding="UTF-8"?> | |||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> | |||||
<mapper namespace="com.iformall.mapper.ProjectPackageDetailMapper"> | |||||
<resultMap id="BaseResultMap" type="com.iformall.domain.po.ProjectPackageDetail"> | |||||
<id column="id" jdbcType="BIGINT" property="id" /> | |||||
<result column="tenant_id" jdbcType="VARCHAR" property="tenantId" /> | |||||
<result column="parent_tenant_id" jdbcType="VARCHAR" property="parentTenantId"/> | |||||
<result column="project_type" jdbcType="INTEGER" property="projectType" /> | |||||
<result column="package_id" jdbcType="BIGINT" property="packageId" /> | |||||
<result column="invite_user_credit" jdbcType="INTEGER" property="inviteUserCredit" /> | |||||
<result column="ai_photo_price" jdbcType="INTEGER" property="aiPhotoPrice" /> | |||||
<result column="ai_script_price" jdbcType="INTEGER" property="aiScriptPrice" /> | |||||
<result column="video_price" jdbcType="INTEGER" property="videoPrice" /> | |||||
<result column="is_video_watermark" jdbcType="INTEGER" property="isVideoWatermark" /> | |||||
<result column="language" jdbcType="INTEGER" property="language" /> | |||||
<result column="sound" jdbcType="INTEGER" property="sound" /> | |||||
<result column="video_time" jdbcType="INTEGER" property="videoTime" /> | |||||
<result column="ai_photo" jdbcType="INTEGER" property="aiPhoto" /> | |||||
<result column="is_sing" jdbcType="INTEGER" property="isSing" /> | |||||
<result column="ai_script" jdbcType="INTEGER" property="aiScript" /> | |||||
<result column="video_format" jdbcType="INTEGER" property="videoFormat" /> | |||||
<result column="template" jdbcType="INTEGER" property="template" /> | |||||
<result column="create_date" jdbcType="TIMESTAMP" property="createDate" /> | |||||
<result column="update_date" jdbcType="TIMESTAMP" property="updateDate"/> | |||||
</resultMap> | |||||
<sql id="allColumns"> | |||||
`id`,`tenant_id`,`parent_tenant_id`,`project_type`,`package_id`, | |||||
`invite_user_credit`,`ai_photo_price`,`ai_script_price`,`video_price`, | |||||
`is_video_watermark`,`language`,`sound`, | |||||
`video_time`,`ai_photo`,`is_sing`,`ai_script`,`video_format`,`template`, | |||||
`create_date`,`update_date` | |||||
</sql> | |||||
<sql id="dynamicWhereConditions"> | |||||
where is_del = 0 | |||||
<if test=" null != id "> and `id` = #{id} </if> | |||||
<if test=" null != tenantId and '' != tenantId"> | |||||
and `tenant_id` = #{tenantId} | |||||
</if> | |||||
<if test=" null != parentTenantId and '' != parentTenantId"> | |||||
and `parent_tenant_id` = #{parentTenantId} | |||||
</if> | |||||
<if test=" null != projectType "> and `project_type` = #{projectType} </if> | |||||
<if test=" null != packageId"> | |||||
and `package_id` = #{packageId} | |||||
</if> | |||||
<if test=" null != startDate "> | |||||
and `create_date` >= #{startDate} | |||||
</if> | |||||
<if test=" null != endDate"> | |||||
and `create_date` <= #{endDate} | |||||
</if> | |||||
<if test=" null != ids "> | |||||
and id in | |||||
<foreach collection="ids" index="index" item="idItem" open="(" separator="," close=")"> | |||||
#{idItem} | |||||
</foreach> | |||||
</if> | |||||
<if test=" null != sortColumns"> order by ${sortColumns} </if> | |||||
</sql> | |||||
<select id="findList" parameterType="com.iformall.domain.po.ProjectPackageDetail" resultMap="BaseResultMap"> | |||||
select <include refid="allColumns" /> | |||||
from project_package_detail | |||||
<include refid="dynamicWhereConditions" /> | |||||
</select> | |||||
</mapper> |
@@ -0,0 +1,71 @@ | |||||
<?xml version="1.0" encoding="UTF-8"?> | |||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> | |||||
<mapper namespace="com.iformall.mapper.UserLevelPackageMapper"> | |||||
<resultMap id="BaseResultMap" type="com.iformall.domain.po.UserLevelPackage"> | |||||
<id column="id" jdbcType="BIGINT" property="id" /> | |||||
<result column="tenant_id" jdbcType="VARCHAR" property="tenantId" /> | |||||
<result column="parent_tenant_id" jdbcType="VARCHAR" property="parentTenantId"/> | |||||
<result column="package_id" jdbcType="BIGINT" property="packageId" /> | |||||
<result column="package_level" jdbcType="INTEGER" property="packageLevel" /> | |||||
<result column="package_color" jdbcType="VARCHAR" property="packageColor" /> | |||||
<result column="user_credits" jdbcType="INTEGER" property="userCredits" /> | |||||
<result column="residue_credits" jdbcType="INTEGER" property="residueCredits" /> | |||||
<result column="expires_date" jdbcType="TIMESTAMP" property="expiresDate"/> | |||||
<result column="create_date" jdbcType="TIMESTAMP" property="createDate" /> | |||||
<result column="update_date" jdbcType="TIMESTAMP" property="updateDate"/> | |||||
</resultMap> | |||||
<sql id="allColumns"> | |||||
`id`,`tenant_id`,`parent_tenant_id`, | |||||
`package_id`,`package_level`,`package_color`, | |||||
`user_credits`,`residue_credits`, | |||||
`expires_date`, `create_date`, `update_date` | |||||
</sql> | |||||
<sql id="dynamicWhereConditions"> | |||||
where 1 = 1 | |||||
<if test=" null != id "> and `id` = #{id} </if> | |||||
<if test=" null != tenantId and '' != tenantId"> | |||||
and `tenant_id` = #{tenantId} | |||||
</if> | |||||
<if test=" null != parentTenantId and '' != parentTenantId"> | |||||
and `parent_tenant_id` = #{parentTenantId} | |||||
</if> | |||||
<if test=" null != packageId "> and `package_id` = #{packageId} </if> | |||||
<if test=" null != packageLevel "> and `package_level` = #{packageLevel} </if> | |||||
<if test=" null != ids "> | |||||
and id in | |||||
<foreach collection="ids" index="index" item="idItem" open="(" separator="," close=")"> | |||||
#{idItem} | |||||
</foreach> | |||||
</if> | |||||
<if test=" null != sortColumns"> order by ${sortColumns} </if> | |||||
</sql> | |||||
<select id="findList" parameterType="com.iformall.domain.po.UserLevelPackage" resultMap="BaseResultMap"> | |||||
select <include refid="allColumns" /> | |||||
from user_level_package | |||||
<include refid="dynamicWhereConditions" /> | |||||
</select> | |||||
<update id="addUserCredits" parameterType="com.iformall.domain.po.UserLevelPackage"> | |||||
update user_level_package | |||||
set `update_date` = #{updateDate} | |||||
<if test=" null != addSumCredits "> | |||||
,`user_credits` = user_credits+#{addSumCredits} | |||||
</if> | |||||
,`residue_credits` = residue_credits+#{addCredits} | |||||
where id = #{id} | |||||
</update> | |||||
<update id="reduceUserCredits" parameterType="com.iformall.domain.po.UserLevelPackage"> | |||||
update user_level_package | |||||
set `update_date` = #{updateDate} | |||||
,`residue_credits` = residue_credits+#{reduceCredits} | |||||
where id = #{id} | |||||
and residue_credits+#{reduceCredits} >= 0 | |||||
</update> | |||||
</mapper> |