feat(resource): 用户作品数量统计、配置文件调整

master
yang 2025-02-20 09:33:11 +08:00
parent cecfc17172
commit e26568d0df
17 changed files with 238 additions and 55 deletions

View File

@ -7,6 +7,7 @@ import com.mcwl.common.core.domain.R;
import com.mcwl.common.core.domain.entity.SysUser; import com.mcwl.common.core.domain.entity.SysUser;
import com.mcwl.resource.domain.SysUserInfo; import com.mcwl.resource.domain.SysUserInfo;
import com.mcwl.resource.domain.vo.PageVo; import com.mcwl.resource.domain.vo.PageVo;
import com.mcwl.resource.service.SysUserAttentionService;
import com.mcwl.resource.service.impl.SysUserAttentionServiceImpl; import com.mcwl.resource.service.impl.SysUserAttentionServiceImpl;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
@ -25,7 +26,7 @@ import org.springframework.web.bind.annotation.*;
public class SysUserAttentionController { public class SysUserAttentionController {
@Autowired @Autowired
private SysUserAttentionServiceImpl sysUserAttentionService; private SysUserAttentionService sysUserAttentionService;
/** /**
* / * /
@ -61,9 +62,9 @@ public class SysUserAttentionController {
*/ */
@ApiOperation(value = "查询个人粉丝,关注,下载量,喜欢") @ApiOperation(value = "查询个人粉丝,关注,下载量,喜欢")
@GetMapping("/selectUserInfo") @GetMapping("/selectUserInfo")
public R<SysUserInfo> selectUserInfo(){ public R<SysUserInfo> selectUserInfo(Long userId){
SysUserInfo sysUserInfo = sysUserAttentionService.selectUserInfo(); SysUserInfo sysUserInfo = sysUserAttentionService.selectUserInfo(userId);
return R.ok(sysUserInfo); return R.ok(sysUserInfo);
} }

View File

@ -0,0 +1,140 @@
# 数据源配置
spring:
#mq
rabbitmq:
host: 1.13.246.108
port: 5672
username: guest
password: guest
virtualHost: /
listener:
simple:
prefetch: 1 # 每次之能获取一条
acknowledge-mode: manual # 设置消费端手动ack确认
retry:
enabled: true # 是否支持重试
# 生产者配置
publisher-confirm-type: correlated #确认消息已发送到交换机(Exchange)
publisher-returns: true #确认消息已发送到队列(Queue)
datasource:
type: com.alibaba.druid.pool.DruidDataSource
driverClassName: com.mysql.cj.jdbc.Driver
druid:
# 主库数据源
master:
url: jdbc:mysql://1.13.246.108:3306/mcwl?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
username: root
password: ybl123456@
# 从库数据源
slave:
# 从数据源开关/默认关闭
enabled: false
url:
username:
password:
# 初始连接数
initialSize: 5
# 最小连接池数量
minIdle: 10
# 最大连接池数量
maxActive: 20
# 配置获取连接等待超时的时间
maxWait: 60000
# 配置连接超时时间
connectTimeout: 30000
# 配置网络超时时间
socketTimeout: 60000
# 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒
timeBetweenEvictionRunsMillis: 60000
# 配置一个连接在池中最小生存的时间,单位是毫秒
minEvictableIdleTimeMillis: 300000
# 配置一个连接在池中最大生存的时间,单位是毫秒
maxEvictableIdleTimeMillis: 900000
# 配置检测连接是否有效
validationQuery: SELECT 1 FROM DUAL
testWhileIdle: true
testOnBorrow: false
testOnReturn: false
webStatFilter:
enabled: true
statViewServlet:
enabled: true
# 设置白名单,不填则允许所有访问
allow:
url-pattern: /druid/*
# 控制台管理用户名和密码
login-username: mcwl
login-password: 123456
filter:
stat:
enabled: true
# 慢SQL记录
log-slow-sql: true
slow-sql-millis: 1000
merge-sql: true
wall:
config:
multi-statement-allow: true
# redis 配置
redis:
# 地址
host: 1.13.246.108
# 端口默认为6379
port: 6370
# 数据库索引
database: 0
# 密码
password: MuYu_Cloud@Redis
# 连接超时时间
timeout: 10s
lettuce:
pool:
# 连接池中的最小空闲连接
min-idle: 0
# 连接池中的最大空闲连接
max-idle: 8
# 连接池的最大数据库连接数
max-active: 8
# #连接池最大阻塞等待时间(使用负值表示没有限制)
max-wait: -1ms
# 公众号配置
wechat:
# 应用ID
appid: wx82d4c3c96f0ffa5b
# 应用密钥
secret: abbabcf1da711a3bbd95387ec83edcac
# yml版(application.yml)
aliyun:
oss:
bucketName: ybl2112
endpoint: oss-cn-beijing.aliyuncs.com
accessKeyId: LTAI5tSHZZ8wHJRP8X4r9TXT
accessKeySecret: F82IVNx0IGJ3AnP6gSIfcyql1HCXIH
accessPre: https://ybl2112.oss-cn-beijing.aliyuncs.com/
## 沙箱环境
mall:
mgt:
aliPayConfig:
protocol: https
gatewayHost: openapi-sandbox.dl.alipaydev.com
signType: RSA2
# 沙箱应用id
appId: 9021000135682614
# 沙箱应用私钥
privateKey: MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCQxmQGcaiKjOhayWi+zNTvpp8B5YT8jFFkjLzrD+W+T2Dwf2GfFR4p95zsCJxYeoLWdghMPA6/GMFrLbuVFpaEjuTm4icqA9N8n5d3W0j7gh+wMjZoqyJclAIeb09ut7rY6mWzilA9kWmZnUG7MOWIU70RVRYrfJectCFw/odM9lG4XIVe13X2h+1ecTQyQzLWmnvKFCfo7dQjE7fIYiWfud1ZGUneNs3u73pNWMB6ThGTTCbs0atcgM3fYOg3q7fTxIu9VcaUCJiJ/kNbL9sVEyOrSyx2f2o6w06zdEaOiQFsuDeS8QPYGMg7pf42wAfqCO6hqxQiQT5vp1hvB0o1AgMBAAECggEAIhaEYLwMSispXo8D2cES9iaOU/z91hUX6Qv2Q4anuqqoEZh8nN91Db6etTjFz1NxURvTklelxTsH97t56n26DRY0MWTYgd0Kw9Iz8MeOpKGb4nnAM97vpUq4QQBGfLRIC2ENdzu+7vA5JBFR88hsky/cWaNmJ/EbJauIIDneE7GigMR2HF7kfzdZzOBN4ZEh/ef5NKeCnEieRJJhWRgrgNXVZ44Tqi67AM7ey9pyUtBe7fgzxXtrWXBN9yKaVxxSXm3KJXFQqA6mcilFVZaxMNlAySc4MPTW8lq0ozOCOCunoeIphNz/OVIxGu3/voXFXlBfOKqOkYMVZxMY6OrvtQKBgQD0nIlXK4VW72VaGpz9kxQkRNzJV/yqaqet1GOSlPM2l0RCRFOVVdnvbQdHGPe6+HxHL1dh5MP8T/aHoP+4UXkkQCc8moS2FZxJvFH2QTSZBcSSdGL7GMpROqs38J+XlJzrhNcB20lrW6D7yMeQa4YEcXwdbD8Er/YaIqODBWYYewKBgQCXg+16RLDArciwwhf0TBWZPor2iYFDdwU5UPu7CKOhU1MLfQhG85gGpXHjB6G8cMUi/ezxh/FEl+sWOZegpkPwL5/BQS9tNYWIaC4kipPF/a5Up4DMYUHVAuuPwNqqXpvgU+rGjCns0wtPRnjrkghLkc3oTSID7o7pzUwIk2whDwKBgAys3+EIfExY82OL5X6uVGjcuKQmTw11oWK8krxRw5iclgjpCXu/ix+BAtOIU634mlgF9/02oYE9k4TLrvSaJDDgsifNyfq1e/fGLmkYT+VuCxWbulVQn4s+AwlPCrYMGWWK6KlL9638fYcOjGjLaZJpXwkXRtyzUYlhKh/r87JpAoGBAIavRp2mi/xrPvgpQQPv0k9L8llfOCHRnjoqC+thrZsNp8eRmJcBmMVnskofEZ2iHQuS71pw/n58EQTLo0ayJbhPjVJL8K3CovXzrfjbmqqoa5xi3bJQTiXdF6rMw1QpD6Uk05E1LVuQ6v/IZFr7kBYlAQWb8z3NhQq+bPU+nyLvAoGAGpBbSM8gPzdWQqkHoos0icu3cj0GhN3MU7+1Eb/rsXyh/lk5wtZTEnHjwhdUOUtwVNjvrv7CzA7unhOoaM6YcE/Zpd4zt8pjqH1Mhds7UHf4Xg+A+J4G6meYnhSwfBpOub02ncsqfBlXE0qhFv6AvcMewWndyLb8EYaUUXTYkG0=
# 沙箱应用公钥证书
appCertPath: cert/appPublicCert.crt
# 沙箱支付宝公钥证书路径
alipayCertPath: cert/alipayPublicCert.crt
# 沙箱支付宝根证书路径
alipayRootCertPath: cert/alipayRootCert.crt
notifyUrl: https://53a65908.r27.cpolar.top/ali/pay/notify
# 沙箱支付宝网关
gatewayUrl: https://openapi-sandbox.dl.alipaydev.com/gateway.do

View File

@ -2,7 +2,7 @@
spring: spring:
#mq #mq
rabbitmq: rabbitmq:
host: 1.13.246.108 host: 113.45.74.175
port: 5672 port: 5672
username: guest username: guest
password: guest password: guest
@ -79,7 +79,7 @@ spring:
# redis 配置 # redis 配置
redis: redis:
# 地址 # 地址
host: 1.13.246.108 host: 113.45.74.175
# 端口默认为6379 # 端口默认为6379
port: 6370 port: 6370
# 数据库索引 # 数据库索引
@ -115,48 +115,27 @@ aliyun:
accessKeySecret: F82IVNx0IGJ3AnP6gSIfcyql1HCXIH accessKeySecret: F82IVNx0IGJ3AnP6gSIfcyql1HCXIH
accessPre: https://ybl2112.oss-cn-beijing.aliyuncs.com/ accessPre: https://ybl2112.oss-cn-beijing.aliyuncs.com/
## 沙箱环境 # 线上环境
mall: mall:
mgt: mgt:
aliPayConfig: aliPayConfig:
protocol: https protocol: https
gatewayHost: openapi-sandbox.dl.alipaydev.com gatewayHost: openapi-sandbox.dl.alipaydev.com
signType: RSA2 signType: RSA2
# 沙箱应用id # 线上应用id
appId: 9021000135682614 appId: 2021005119630093
# 沙箱应用私钥 # 线上应用私钥
privateKey: MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCQxmQGcaiKjOhayWi+zNTvpp8B5YT8jFFkjLzrD+W+T2Dwf2GfFR4p95zsCJxYeoLWdghMPA6/GMFrLbuVFpaEjuTm4icqA9N8n5d3W0j7gh+wMjZoqyJclAIeb09ut7rY6mWzilA9kWmZnUG7MOWIU70RVRYrfJectCFw/odM9lG4XIVe13X2h+1ecTQyQzLWmnvKFCfo7dQjE7fIYiWfud1ZGUneNs3u73pNWMB6ThGTTCbs0atcgM3fYOg3q7fTxIu9VcaUCJiJ/kNbL9sVEyOrSyx2f2o6w06zdEaOiQFsuDeS8QPYGMg7pf42wAfqCO6hqxQiQT5vp1hvB0o1AgMBAAECggEAIhaEYLwMSispXo8D2cES9iaOU/z91hUX6Qv2Q4anuqqoEZh8nN91Db6etTjFz1NxURvTklelxTsH97t56n26DRY0MWTYgd0Kw9Iz8MeOpKGb4nnAM97vpUq4QQBGfLRIC2ENdzu+7vA5JBFR88hsky/cWaNmJ/EbJauIIDneE7GigMR2HF7kfzdZzOBN4ZEh/ef5NKeCnEieRJJhWRgrgNXVZ44Tqi67AM7ey9pyUtBe7fgzxXtrWXBN9yKaVxxSXm3KJXFQqA6mcilFVZaxMNlAySc4MPTW8lq0ozOCOCunoeIphNz/OVIxGu3/voXFXlBfOKqOkYMVZxMY6OrvtQKBgQD0nIlXK4VW72VaGpz9kxQkRNzJV/yqaqet1GOSlPM2l0RCRFOVVdnvbQdHGPe6+HxHL1dh5MP8T/aHoP+4UXkkQCc8moS2FZxJvFH2QTSZBcSSdGL7GMpROqs38J+XlJzrhNcB20lrW6D7yMeQa4YEcXwdbD8Er/YaIqODBWYYewKBgQCXg+16RLDArciwwhf0TBWZPor2iYFDdwU5UPu7CKOhU1MLfQhG85gGpXHjB6G8cMUi/ezxh/FEl+sWOZegpkPwL5/BQS9tNYWIaC4kipPF/a5Up4DMYUHVAuuPwNqqXpvgU+rGjCns0wtPRnjrkghLkc3oTSID7o7pzUwIk2whDwKBgAys3+EIfExY82OL5X6uVGjcuKQmTw11oWK8krxRw5iclgjpCXu/ix+BAtOIU634mlgF9/02oYE9k4TLrvSaJDDgsifNyfq1e/fGLmkYT+VuCxWbulVQn4s+AwlPCrYMGWWK6KlL9638fYcOjGjLaZJpXwkXRtyzUYlhKh/r87JpAoGBAIavRp2mi/xrPvgpQQPv0k9L8llfOCHRnjoqC+thrZsNp8eRmJcBmMVnskofEZ2iHQuS71pw/n58EQTLo0ayJbhPjVJL8K3CovXzrfjbmqqoa5xi3bJQTiXdF6rMw1QpD6Uk05E1LVuQ6v/IZFr7kBYlAQWb8z3NhQq+bPU+nyLvAoGAGpBbSM8gPzdWQqkHoos0icu3cj0GhN3MU7+1Eb/rsXyh/lk5wtZTEnHjwhdUOUtwVNjvrv7CzA7unhOoaM6YcE/Zpd4zt8pjqH1Mhds7UHf4Xg+A+J4G6meYnhSwfBpOub02ncsqfBlXE0qhFv6AvcMewWndyLb8EYaUUXTYkG0= privateKey: MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCQuhRU5iHoabfzJS40A+moMKzb5rmi5XbL59K98CW65Oq/rnzQnj6sCYggIXOLCLKUykZ1XIVa+4V7bGFkMDF0236ncPumnVY/tfCSebLyKl+up1mGeH4mAR6ily7nXAhRnXL+A0015bpCa5FCg2ReN68MEmquB/mHfeLqJfRupwzDWnIWxYSKkFCJ0i47KTFYhM93LHHQ8GrZNNaeiJ6q59MruQI83z0HCxN/DzK4Z2rBWGilwPuYcSEa0STPXYhz8XMXUX/Mlp7dd5zyWeNaxkNRWlhKHvhLVPGvteaEcchs476DIWLCRVXEC1372wMKNrKblzRp7Wi5+l+W14k5AgMBAAECggEAHahkPjmivTPc5FC8NSCQI01GPxH6/Ky1OXfaMd4ifTgn+vvQzBeBlFOnt53jRZyUq/T/l1FMaqacZfyBwLw3hlDslXeLuksHv6qTEBEsYH/ad7oHmIzcnQEhvAPrMrIjakYvqGoYynC3SKEudUjjqoMSthCYF+2+bsuXUpBQlNQLqcJ03U+YhfLswwVVujKvAujoLRqDAWeaa0k0y/1Ua4fr5GJq5M+P8TTBRgZlSK5A7Ee6yxMUncZ9W3lTqZtyG0OQLbz9gkr0c63KPisigaOx9eKlCPWFWUWo+zGvQMVijHDTeoJ3dqNmsPtiIE3rDt8anx4a1R7YK6MQ520hAQKBgQDPFMNl4fRmLSOLNShJm/0mBMoIjPmS3+tPBtCiG4oH9F8vYMJWDA1Im0FdgRa2HlCv6hpiVvvQt824RaUYa7XR6aefXKVEWddHvl3utnghMohjK8o8fTmIxADtU5Q2OlWmPdp1v7yDg8yE5P1GlY+AZ3oggxXOIRVtQrNeL7E3iQKBgQCy6nEaUQUCDDts4o7Pn+N402g3/T9Vz/5JtKmDI01EndK5l/yE8CdgGwdiwN1k3la/Nv8P5kaaX2qVcCGoOIQmMNGOxuNfkKCi+bJKdxmFOI4E3iVYT2H6x27QJwNB6bik1i6b2OWT7ckxeB6xMjefNp1u8Qif+vab60OQZSqoMQKBgESRF3Hwsz/xykcZvtFAuT2RcGQMacbcJcnw87v5ambf33SMkUx0iSF1ZttTFvYOa6ET3tCZBKBDe/Z7+QJxB68NstbtkjtjlAjJW8ji2jwDw20y3q/QtvA2Fih++CBMiHeXG3LJnd3eEiYevE5Wz0ExAhspzFqIUdPvtfyFxiQhAoGBAKgc+iGMN3RxIfVx/FbDGe6SVr8lSrnLMlj3VMBQD26GDVcupKwVLCp1uz7jkiQRdtk9R/UcnwK23WOFdVqnoCRygrXx0/wb3ZTFou2tc2Fmfqu8QML19E67zjfwMHNitYjNaAYwi6ewKvg8sjo1wWXs34k7GquYGNjw+w9Wv/pBAoGAUlVHfZ4RncAiiH/x3EDgqmmVikFpLoM2xXxM16nplrjdBE6IzkpgWb/x2ZI6JCMDyoV2kvF6owW2+QEQ81MrHQMtBRpAvd8nI03gXA5VF3uwp4UjfGpoIAGDBrqQv9DM8vx6C6VJNTT5esZWZSw/+PZ4D19l0/n7gICGx3ugw0Q=
# 沙箱应用公钥证书 # 线上应用公钥证书
appCertPath: cert/appPublicCert.crt appCertPath: appCertPublicKey_2021005119630093.crt
# 沙箱支付宝公钥证书路径 # 线上支付宝公钥证书路径
alipayCertPath: cert/alipayPublicCert.crt alipayCertPath: cert/alipayCertPublicKey_RSA2.crt
# 沙箱支付宝根证书路径 # 线上支付宝根证书路径
alipayRootCertPath: cert/alipayRootCert.crt alipayRootCertPath: cert/alipayRootCert.crt
notifyUrl: https://53a65908.r27.cpolar.top/ali/pay/notify # 线上支付宝公钥
# 沙箱支付宝网关 notifyUrl: https://253d7236.r27.cpolar.top/ali/pay/notify
gatewayUrl: https://openapi-sandbox.dl.alipaydev.com/gateway.do # 线上支付宝网关
gatewayUrl: https://openapi.alipay.com/gateway.do
## 线上环境
#mall:
# mgt:
# aliPayConfig:
# protocol: https
# gatewayHost: openapi-sandbox.dl.alipaydev.com
# signType: RSA2
# # 线上应用id
# appId: 2021005119630093
# # 线上应用私钥
# privateKey: MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCQuhRU5iHoabfzJS40A+moMKzb5rmi5XbL59K98CW65Oq/rnzQnj6sCYggIXOLCLKUykZ1XIVa+4V7bGFkMDF0236ncPumnVY/tfCSebLyKl+up1mGeH4mAR6ily7nXAhRnXL+A0015bpCa5FCg2ReN68MEmquB/mHfeLqJfRupwzDWnIWxYSKkFCJ0i47KTFYhM93LHHQ8GrZNNaeiJ6q59MruQI83z0HCxN/DzK4Z2rBWGilwPuYcSEa0STPXYhz8XMXUX/Mlp7dd5zyWeNaxkNRWlhKHvhLVPGvteaEcchs476DIWLCRVXEC1372wMKNrKblzRp7Wi5+l+W14k5AgMBAAECggEAHahkPjmivTPc5FC8NSCQI01GPxH6/Ky1OXfaMd4ifTgn+vvQzBeBlFOnt53jRZyUq/T/l1FMaqacZfyBwLw3hlDslXeLuksHv6qTEBEsYH/ad7oHmIzcnQEhvAPrMrIjakYvqGoYynC3SKEudUjjqoMSthCYF+2+bsuXUpBQlNQLqcJ03U+YhfLswwVVujKvAujoLRqDAWeaa0k0y/1Ua4fr5GJq5M+P8TTBRgZlSK5A7Ee6yxMUncZ9W3lTqZtyG0OQLbz9gkr0c63KPisigaOx9eKlCPWFWUWo+zGvQMVijHDTeoJ3dqNmsPtiIE3rDt8anx4a1R7YK6MQ520hAQKBgQDPFMNl4fRmLSOLNShJm/0mBMoIjPmS3+tPBtCiG4oH9F8vYMJWDA1Im0FdgRa2HlCv6hpiVvvQt824RaUYa7XR6aefXKVEWddHvl3utnghMohjK8o8fTmIxADtU5Q2OlWmPdp1v7yDg8yE5P1GlY+AZ3oggxXOIRVtQrNeL7E3iQKBgQCy6nEaUQUCDDts4o7Pn+N402g3/T9Vz/5JtKmDI01EndK5l/yE8CdgGwdiwN1k3la/Nv8P5kaaX2qVcCGoOIQmMNGOxuNfkKCi+bJKdxmFOI4E3iVYT2H6x27QJwNB6bik1i6b2OWT7ckxeB6xMjefNp1u8Qif+vab60OQZSqoMQKBgESRF3Hwsz/xykcZvtFAuT2RcGQMacbcJcnw87v5ambf33SMkUx0iSF1ZttTFvYOa6ET3tCZBKBDe/Z7+QJxB68NstbtkjtjlAjJW8ji2jwDw20y3q/QtvA2Fih++CBMiHeXG3LJnd3eEiYevE5Wz0ExAhspzFqIUdPvtfyFxiQhAoGBAKgc+iGMN3RxIfVx/FbDGe6SVr8lSrnLMlj3VMBQD26GDVcupKwVLCp1uz7jkiQRdtk9R/UcnwK23WOFdVqnoCRygrXx0/wb3ZTFou2tc2Fmfqu8QML19E67zjfwMHNitYjNaAYwi6ewKvg8sjo1wWXs34k7GquYGNjw+w9Wv/pBAoGAUlVHfZ4RncAiiH/x3EDgqmmVikFpLoM2xXxM16nplrjdBE6IzkpgWb/x2ZI6JCMDyoV2kvF6owW2+QEQ81MrHQMtBRpAvd8nI03gXA5VF3uwp4UjfGpoIAGDBrqQv9DM8vx6C6VJNTT5esZWZSw/+PZ4D19l0/n7gICGx3ugw0Q=
# # 线上应用公钥证书
# appCertPath: appCertPublicKey_2021005119630093.crt
# # 线上支付宝公钥证书路径
# alipayCertPath: cert/alipayCertPublicKey_RSA2.crt
# # 线上支付宝根证书路径
# alipayRootCertPath: cert/alipayRootCert.crt
# # 线上支付宝公钥
# notifyUrl: https://253d7236.r27.cpolar.top/ali/pay/notify
# # 线上支付宝网关
# gatewayUrl: https://openapi.alipay.com/gateway.do

View File

@ -52,7 +52,7 @@ spring:
# 国际化资源文件路径 # 国际化资源文件路径
basename: i18n/messages basename: i18n/messages
profiles: profiles:
active: druid active: dev
# 文件上传 # 文件上传
servlet: servlet:
multipart: multipart:

View File

@ -58,4 +58,10 @@ public class SysUserInfo {
@ApiModelProperty(value = "图片点赞次数") @ApiModelProperty(value = "图片点赞次数")
private Long imageLikeNum = 0L; private Long imageLikeNum = 0L;
/**
*
*/
@ApiModelProperty(value = "作品数量")
private Long productNum = 0L;
} }

View File

@ -19,6 +19,12 @@ import java.util.Date;
@EqualsAndHashCode(callSuper = true) @EqualsAndHashCode(callSuper = true)
public class ModelImagePageRes extends PageDomain { public class ModelImagePageRes extends PageDomain {
/**
* id
*/
@ApiModelProperty(value = "用户id")
private Long userId;
/** /**
* *
*/ */

View File

@ -20,4 +20,5 @@ public interface ModelImageMapper extends BaseMapper<ModelImage> {
List<ResponseModelImage> imageList(PageVo pageVo); List<ResponseModelImage> imageList(PageVo pageVo);
Long sumImageNumber(Long userId);
} }

View File

@ -39,4 +39,5 @@ public interface ModelMapper extends BaseMapper<ModelProduct> {
List<ResponseModelProduct> modelSquare(PageVo pageVo); List<ResponseModelProduct> modelSquare(PageVo pageVo);
Long sumModelNumber(Long userId);
} }

View File

@ -27,4 +27,5 @@ public interface WorkFlowMapper extends BaseMapper<WorkFlow> {
List<ResponseWorkFlow> workFlowList(PageVo pageVo); List<ResponseWorkFlow> workFlowList(PageVo pageVo);
Long sumWorkFlowNumber(Long userId);
} }

View File

@ -1,9 +1,12 @@
package com.mcwl.resource.service; package com.mcwl.resource.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.github.pagehelper.PageInfo; import com.github.pagehelper.PageInfo;
import com.mcwl.common.core.domain.AjaxResult; import com.mcwl.common.core.domain.AjaxResult;
import com.mcwl.common.core.domain.R; import com.mcwl.common.core.domain.R;
import com.mcwl.common.core.domain.entity.SysUser; import com.mcwl.common.core.domain.entity.SysUser;
import com.mcwl.resource.domain.SysAdvice;
import com.mcwl.resource.domain.SysUserAttention;
import com.mcwl.resource.domain.SysUserInfo; import com.mcwl.resource.domain.SysUserInfo;
import com.mcwl.resource.domain.vo.PageVo; import com.mcwl.resource.domain.vo.PageVo;
@ -14,12 +17,12 @@ import com.mcwl.resource.domain.vo.PageVo;
* @apiNote * @apiNote
*/ */
public interface SysUserAttentionService { public interface SysUserAttentionService extends IService<SysUserAttention> {
R<Boolean> addAttention(Long userId); R<Boolean> addAttention(Long userId);
Boolean selectAttention(Long userId); Boolean selectAttention(Long userId);
SysUserInfo selectUserInfo(); SysUserInfo selectUserInfo(Long userId);
PageInfo<SysUser> selectAttentionPage(PageVo pageVo); PageInfo<SysUser> selectAttentionPage(PageVo pageVo);

View File

@ -175,7 +175,9 @@ public class ModelImageServiceImpl extends ServiceImpl<ModelImageMapper, ModelIm
*/ */
@Override @Override
public TableDataInfo listByPage(ModelImagePageRes imagePageRes) { public TableDataInfo listByPage(ModelImagePageRes imagePageRes) {
if (Objects.isNull(imagePageRes.getUserId())) {
imagePageRes.setUserId(SecurityUtils.getUserId());
}
Page<ModelImage> page = new Page<>(imagePageRes.getPageNum(), imagePageRes.getPageSize()); Page<ModelImage> page = new Page<>(imagePageRes.getPageNum(), imagePageRes.getPageSize());
if (StringUtils.isEmpty(imagePageRes.getOrderByColumn())) { if (StringUtils.isEmpty(imagePageRes.getOrderByColumn())) {
imagePageRes.setOrderByColumn("create_time"); imagePageRes.setOrderByColumn("create_time");
@ -188,7 +190,7 @@ public class ModelImageServiceImpl extends ServiceImpl<ModelImageMapper, ModelIm
LambdaQueryWrapper<ModelImage> lqw = new LambdaQueryWrapper<>(); LambdaQueryWrapper<ModelImage> lqw = new LambdaQueryWrapper<>();
lqw.eq(imagePageRes.getStatus() != null && imagePageRes.getStatus() != 0, ModelImage::getStatus, imagePageRes.getStatus()) lqw.eq(imagePageRes.getStatus() != null && imagePageRes.getStatus() != 0, ModelImage::getStatus, imagePageRes.getStatus())
.eq(ModelImage::getUserId, SecurityUtils.getUserId()) .eq(ModelImage::getUserId, imagePageRes.getUserId())
.ge(imagePageRes.getStartTime() != null, ModelImage::getCreateTime, imagePageRes.getStartTime()) .ge(imagePageRes.getStartTime() != null, ModelImage::getCreateTime, imagePageRes.getStartTime())
.le(imagePageRes.getEndTime() != null, ModelImage::getCreateTime, imagePageRes.getEndTime()); .le(imagePageRes.getEndTime() != null, ModelImage::getCreateTime, imagePageRes.getEndTime());

View File

@ -158,6 +158,10 @@ public class ModelServiceImpl extends ServiceImpl<ModelMapper,ModelProduct> impl
@Override @Override
public TableDataInfo listByPage(ModelImagePageRes imagePageRes) { public TableDataInfo listByPage(ModelImagePageRes imagePageRes) {
if (Objects.isNull(imagePageRes.getUserId())) {
imagePageRes.setUserId(SecurityUtils.getUserId());
}
Page<ModelProduct> page = new Page<>(imagePageRes.getPageNum(), imagePageRes.getPageSize()); Page<ModelProduct> page = new Page<>(imagePageRes.getPageNum(), imagePageRes.getPageSize());
if (StringUtils.isEmpty(imagePageRes.getOrderByColumn())) { if (StringUtils.isEmpty(imagePageRes.getOrderByColumn())) {
imagePageRes.setOrderByColumn("create_time"); imagePageRes.setOrderByColumn("create_time");
@ -170,7 +174,7 @@ public class ModelServiceImpl extends ServiceImpl<ModelMapper,ModelProduct> impl
LambdaQueryWrapper<ModelProduct> lqw = new LambdaQueryWrapper<>(); LambdaQueryWrapper<ModelProduct> lqw = new LambdaQueryWrapper<>();
lqw.eq(imagePageRes.getStatus() != null && imagePageRes.getStatus() != 0, ModelProduct::getAuditStatus, imagePageRes.getStatus()) lqw.eq(imagePageRes.getStatus() != null && imagePageRes.getStatus() != 0, ModelProduct::getAuditStatus, imagePageRes.getStatus())
.eq( ModelProduct::getUserId, SecurityUtils.getUserId()) .eq( ModelProduct::getUserId, imagePageRes.getUserId())
.ge(imagePageRes.getStartTime() != null, ModelProduct::getCreateTime, imagePageRes.getStartTime()) .ge(imagePageRes.getStartTime() != null, ModelProduct::getCreateTime, imagePageRes.getStartTime())
.le(imagePageRes.getEndTime() != null, ModelProduct::getCreateTime, imagePageRes.getEndTime()); .le(imagePageRes.getEndTime() != null, ModelProduct::getCreateTime, imagePageRes.getEndTime());
postMapper.selectPage(page, lqw); postMapper.selectPage(page, lqw);

View File

@ -1,19 +1,18 @@
package com.mcwl.resource.service.impl; package com.mcwl.resource.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo; import com.github.pagehelper.PageInfo;
import com.mcwl.common.core.domain.R; import com.mcwl.common.core.domain.R;
import com.mcwl.common.core.domain.entity.SysUser; import com.mcwl.common.core.domain.entity.SysUser;
import com.mcwl.common.utils.SecurityUtils; import com.mcwl.common.utils.SecurityUtils;
import com.mcwl.common.utils.StringUtils; import com.mcwl.common.utils.StringUtils;
import com.mcwl.resource.domain.ModelLike;
import com.mcwl.resource.domain.SysAdvice; import com.mcwl.resource.domain.SysAdvice;
import com.mcwl.resource.domain.SysUserAttention; import com.mcwl.resource.domain.SysUserAttention;
import com.mcwl.resource.domain.SysUserInfo; import com.mcwl.resource.domain.SysUserInfo;
import com.mcwl.resource.domain.vo.PageVo; import com.mcwl.resource.domain.vo.PageVo;
import com.mcwl.resource.mapper.MallProductLikeMapper; import com.mcwl.resource.mapper.*;
import com.mcwl.resource.mapper.ModelImageMapper;
import com.mcwl.resource.mapper.ModelMapper;
import com.mcwl.resource.mapper.SysUserAttentionMapper;
import com.mcwl.resource.service.SysUserAttentionService; import com.mcwl.resource.service.SysUserAttentionService;
import com.mcwl.system.domain.enums.AdviceEnum; import com.mcwl.system.domain.enums.AdviceEnum;
import com.mcwl.system.mapper.SysUserMapper; import com.mcwl.system.mapper.SysUserMapper;
@ -32,7 +31,7 @@ import java.util.List;
*/ */
@Service @Service
public class SysUserAttentionServiceImpl implements SysUserAttentionService { public class SysUserAttentionServiceImpl extends ServiceImpl<SysUserAttentionMapper, SysUserAttention> implements SysUserAttentionService {
@Autowired @Autowired
@ -47,6 +46,9 @@ public class SysUserAttentionServiceImpl implements SysUserAttentionService {
@Autowired @Autowired
private ModelImageMapper modelImageMapper; private ModelImageMapper modelImageMapper;
@Autowired
private WorkFlowMapper workFlowMapper;
@Autowired @Autowired
private SysUserMapper sysUserMapper; private SysUserMapper sysUserMapper;
@ -96,9 +98,13 @@ public class SysUserAttentionServiceImpl implements SysUserAttentionService {
} }
@Override @Override
public SysUserInfo selectUserInfo() { public SysUserInfo selectUserInfo(Long userId) {
if (userId == null) {
userId = SecurityUtils.getUserId();
}
Long userId = SecurityUtils.getUserId();
// 粉丝数 // 粉丝数
Long userBeanNum = sysUserAttentionMapper.selectBean(userId); Long userBeanNum = sysUserAttentionMapper.selectBean(userId);
@ -117,12 +123,19 @@ public class SysUserAttentionServiceImpl implements SysUserAttentionService {
// 图片点赞次数 // 图片点赞次数
Long imageLikeNum = modelImageMapper.sumLikeNumber(userId); Long imageLikeNum = modelImageMapper.sumLikeNumber(userId);
return SysUserInfo.builder().bean(userBeanNum) // 作品数量
Long modelNumber = modelMapper.sumModelNumber(userId);
Long imageNumber = modelImageMapper.sumImageNumber(userId);
Long workFlowNumber = workFlowMapper.sumWorkFlowNumber(userId);
return SysUserInfo.builder()
.bean(userBeanNum)
.attention(userAttentionNum) .attention(userAttentionNum)
.modelDownloadNum(modelDownloadNum) .modelDownloadNum(modelDownloadNum)
.modelRunNum(modelRunNum) .modelRunNum(modelRunNum)
.modelLikeNum(modelLikeNum) .modelLikeNum(modelLikeNum)
.imageLikeNum(imageLikeNum) .imageLikeNum(imageLikeNum)
.productNum(modelNumber + imageNumber + workFlowNumber)
.build(); .build();
} }

View File

@ -408,6 +408,10 @@ public class WorkFlowServiceImpl extends ServiceImpl<WorkFlowMapper, WorkFlow> i
@Override @Override
public TableDataInfo listByPage(ModelImagePageRes imagePageRes) { public TableDataInfo listByPage(ModelImagePageRes imagePageRes) {
if (Objects.isNull(imagePageRes.getUserId())) {
imagePageRes.setUserId(SecurityUtils.getUserId());
}
Page<WorkFlow> page = new Page<>(imagePageRes.getPageNum(), imagePageRes.getPageSize()); Page<WorkFlow> page = new Page<>(imagePageRes.getPageNum(), imagePageRes.getPageSize());
if (StringUtils.isEmpty(imagePageRes.getOrderByColumn())) { if (StringUtils.isEmpty(imagePageRes.getOrderByColumn())) {
imagePageRes.setOrderByColumn("create_time"); imagePageRes.setOrderByColumn("create_time");
@ -421,7 +425,7 @@ public class WorkFlowServiceImpl extends ServiceImpl<WorkFlowMapper, WorkFlow> i
LambdaQueryWrapper<WorkFlow> lqw = new LambdaQueryWrapper<>(); LambdaQueryWrapper<WorkFlow> lqw = new LambdaQueryWrapper<>();
lqw.eq(imagePageRes.getStatus() != null && imagePageRes.getStatus() != 0, WorkFlow::getAuditStatus, imagePageRes.getStatus()) lqw.eq(imagePageRes.getStatus() != null && imagePageRes.getStatus() != 0, WorkFlow::getAuditStatus, imagePageRes.getStatus())
.eq(WorkFlow::getUserId, SecurityUtils.getUserId()) .eq(WorkFlow::getUserId, imagePageRes.getUserId())
.ge(imagePageRes.getStartTime() != null, WorkFlow::getCreateTime, imagePageRes.getStartTime()) .ge(imagePageRes.getStartTime() != null, WorkFlow::getCreateTime, imagePageRes.getStartTime())
.le(imagePageRes.getEndTime() != null, WorkFlow::getCreateTime, imagePageRes.getEndTime()) .le(imagePageRes.getEndTime() != null, WorkFlow::getCreateTime, imagePageRes.getEndTime())
.eq(WorkFlow::getDelFlag, 0); .eq(WorkFlow::getDelFlag, 0);

View File

@ -35,4 +35,12 @@
</if> </if>
</select> </select>
<select id="sumImageNumber" resultType="java.lang.Long">
SELECT count(*)
FROM model_image
where user_id = #{userId}
and del_flag = 0
and status in (1, 2)
</select>
</mapper> </mapper>

View File

@ -100,5 +100,12 @@
and m.model_type = #{type} and m.model_type = #{type}
</if> </if>
</select> </select>
<select id="sumModelNumber" resultType="java.lang.Long">
SELECT count(*)
FROM model
where user_id = #{userId}
and del_flag = 0
and audit_status in (1, 2)
</select>
</mapper> </mapper>

View File

@ -56,4 +56,11 @@
and w.type like CONCAT('%', #{type}, '%') and w.type like CONCAT('%', #{type}, '%')
</if> </if>
</select> </select>
<select id="sumWorkFlowNumber" resultType="java.lang.Long">
SELECT count(*) sum
FROM work_flow
where user_id = #{userId}
and del_flag = '0'
and audit_status in (1, 2)
</select>
</mapper> </mapper>