Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
Administrator
mall4cloudNew
Commits
3ab6e756
Commit
3ab6e756
authored
Dec 21, 2023
by
shengnan hu
Browse files
init
parents
Pipeline
#294
passed with stage
in 2 minutes and 13 seconds
Changes
678
Pipelines
3
Hide whitespace changes
Inline
Side-by-side
Showing
20 changed files
with
935 additions
and
0 deletions
+935
-0
mall4cloud-api/mall4cloud-api-product/target/classes/com/mall4j/cloud/api/product/vo/SpuVO.class
...arget/classes/com/mall4j/cloud/api/product/vo/SpuVO.class
+0
-0
mall4cloud-api/mall4cloud-api-rbac/pom.xml
mall4cloud-api/mall4cloud-api-rbac/pom.xml
+23
-0
mall4cloud-api/mall4cloud-api-rbac/src/main/java/com/mall4j/cloud/api/rbac/bo/UriPermissionBO.java
...in/java/com/mall4j/cloud/api/rbac/bo/UriPermissionBO.java
+56
-0
mall4cloud-api/mall4cloud-api-rbac/src/main/java/com/mall4j/cloud/api/rbac/constant/HttpMethodEnum.java
...va/com/mall4j/cloud/api/rbac/constant/HttpMethodEnum.java
+58
-0
mall4cloud-api/mall4cloud-api-rbac/src/main/java/com/mall4j/cloud/api/rbac/dto/CheckPermissionDTO.java
...ava/com/mall4j/cloud/api/rbac/dto/CheckPermissionDTO.java
+87
-0
mall4cloud-api/mall4cloud-api-rbac/src/main/java/com/mall4j/cloud/api/rbac/dto/ClearUserPermissionsCacheDTO.java
...ll4j/cloud/api/rbac/dto/ClearUserPermissionsCacheDTO.java
+46
-0
mall4cloud-api/mall4cloud-api-rbac/src/main/java/com/mall4j/cloud/api/rbac/dto/UserRoleDTO.java
.../main/java/com/mall4j/cloud/api/rbac/dto/UserRoleDTO.java
+49
-0
mall4cloud-api/mall4cloud-api-rbac/src/main/java/com/mall4j/cloud/api/rbac/feign/PermissionFeignClient.java
...om/mall4j/cloud/api/rbac/feign/PermissionFeignClient.java
+45
-0
mall4cloud-api/mall4cloud-api-rbac/src/main/java/com/mall4j/cloud/api/rbac/feign/UserRoleFeignClient.java
.../com/mall4j/cloud/api/rbac/feign/UserRoleFeignClient.java
+50
-0
mall4cloud-api/mall4cloud-api-rbac/target/classes/com/mall4j/cloud/api/rbac/bo/UriPermissionBO.class
...lasses/com/mall4j/cloud/api/rbac/bo/UriPermissionBO.class
+0
-0
mall4cloud-api/mall4cloud-api-rbac/target/classes/com/mall4j/cloud/api/rbac/constant/HttpMethodEnum.class
...s/com/mall4j/cloud/api/rbac/constant/HttpMethodEnum.class
+0
-0
mall4cloud-api/mall4cloud-api-rbac/target/classes/com/mall4j/cloud/api/rbac/dto/CheckPermissionDTO.class
...es/com/mall4j/cloud/api/rbac/dto/CheckPermissionDTO.class
+0
-0
mall4cloud-api/mall4cloud-api-rbac/target/classes/com/mall4j/cloud/api/rbac/dto/ClearUserPermissionsCacheDTO.class
...l4j/cloud/api/rbac/dto/ClearUserPermissionsCacheDTO.class
+0
-0
mall4cloud-api/mall4cloud-api-rbac/target/classes/com/mall4j/cloud/api/rbac/dto/UserRoleDTO.class
...t/classes/com/mall4j/cloud/api/rbac/dto/UserRoleDTO.class
+0
-0
mall4cloud-api/mall4cloud-api-rbac/target/classes/com/mall4j/cloud/api/rbac/feign/PermissionFeignClient.class
...m/mall4j/cloud/api/rbac/feign/PermissionFeignClient.class
+0
-0
mall4cloud-api/mall4cloud-api-rbac/target/classes/com/mall4j/cloud/api/rbac/feign/UserRoleFeignClient.class
...com/mall4j/cloud/api/rbac/feign/UserRoleFeignClient.class
+0
-0
mall4cloud-api/mall4cloud-api-search/pom.xml
mall4cloud-api/mall4cloud-api-search/pom.xml
+25
-0
mall4cloud-api/mall4cloud-api-search/src/main/java/com/mall4j/cloud/api/dto/EsPageDTO.java
...rch/src/main/java/com/mall4j/cloud/api/dto/EsPageDTO.java
+143
-0
mall4cloud-api/mall4cloud-api-search/src/main/java/com/mall4j/cloud/api/dto/ProductSearchDTO.java
.../main/java/com/mall4j/cloud/api/dto/ProductSearchDTO.java
+325
-0
mall4cloud-api/mall4cloud-api-search/src/main/java/com/mall4j/cloud/api/feign/SearchOrderFeignClient.java
...va/com/mall4j/cloud/api/feign/SearchOrderFeignClient.java
+28
-0
No files found.
mall4cloud-api/mall4cloud-api-product/target/classes/com/mall4j/cloud/api/product/vo/SpuVO.class
0 → 100644
View file @
3ab6e756
File added
mall4cloud-api/mall4cloud-api-rbac/pom.xml
0 → 100644
View file @
3ab6e756
<?xml version="1.0" encoding="UTF-8"?>
<project
xmlns=
"http://maven.apache.org/POM/4.0.0"
xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation=
"http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
>
<parent>
<artifactId>
mall4cloud-api
</artifactId>
<groupId>
com.mall4j.cloud
</groupId>
<version>
1.0-SNAPSHOT
</version>
</parent>
<modelVersion>
4.0.0
</modelVersion>
<artifactId>
mall4cloud-api-rbac
</artifactId>
<packaging>
jar
</packaging>
<description>
用户角色权限对内接口
</description>
<dependencies>
<dependency>
<groupId>
com.mall4j.cloud
</groupId>
<artifactId>
mall4cloud-common-core
</artifactId>
<version>
${project.version}
</version>
</dependency>
</dependencies>
</project>
mall4cloud-api/mall4cloud-api-rbac/src/main/java/com/mall4j/cloud/api/rbac/bo/UriPermissionBO.java
0 → 100644
View file @
3ab6e756
package
com.mall4j.cloud.api.rbac.bo
;
/**
* uri权限bo
*
* @author FrozenWatermelon
* @date 2020/9/3
*/
public
class
UriPermissionBO
{
/**
* 请求方法 1.GET 2.POST 3.PUT 4.DELETE
*/
private
Integer
method
;
/**
* uri
*/
private
String
uri
;
/**
* permission
*/
private
String
permission
;
public
Integer
getMethod
()
{
return
method
;
}
public
void
setMethod
(
Integer
method
)
{
this
.
method
=
method
;
}
public
String
getUri
()
{
return
uri
;
}
public
void
setUri
(
String
uri
)
{
this
.
uri
=
uri
;
}
public
String
getPermission
()
{
return
permission
;
}
public
void
setPermission
(
String
permission
)
{
this
.
permission
=
permission
;
}
@Override
public
String
toString
()
{
return
"UriPermissionBO{"
+
"method="
+
method
+
", uri='"
+
uri
+
'\''
+
", permission='"
+
permission
+
'\''
+
'}'
;
}
}
mall4cloud-api/mall4cloud-api-rbac/src/main/java/com/mall4j/cloud/api/rbac/constant/HttpMethodEnum.java
0 → 100644
View file @
3ab6e756
package
com.mall4j.cloud.api.rbac.constant
;
import
java.util.Objects
;
/**
* 请求方法 1.GET 2.POST 3.PUT 4.DELETE http方法枚举
* @author FrozenWatermelon
* @date 2020/9/3
*/
public
enum
HttpMethodEnum
{
/**
* GET
*/
GET
(
1
,
"GET"
),
/**
* POST
*/
POST
(
2
,
"POST"
),
/**
* PUT
*/
PUT
(
3
,
"PUT"
),
/**
* DELETE
*/
DELETE
(
4
,
"DELETE"
),;
private
final
Integer
value
;
private
final
String
method
;
public
Integer
value
()
{
return
value
;
}
public
String
method
()
{
return
this
.
method
;
}
HttpMethodEnum
(
Integer
value
,
String
method
)
{
this
.
value
=
value
;
this
.
method
=
method
;
}
public
static
HttpMethodEnum
valueOf
(
Integer
value
)
{
for
(
HttpMethodEnum
httpMethodEnum
:
values
())
{
if
(
Objects
.
equals
(
httpMethodEnum
.
value
(),
value
))
{
return
httpMethodEnum
;
}
}
return
null
;
}
}
mall4cloud-api/mall4cloud-api-rbac/src/main/java/com/mall4j/cloud/api/rbac/dto/CheckPermissionDTO.java
0 → 100644
View file @
3ab6e756
package
com.mall4j.cloud.api.rbac.dto
;
import
jakarta.validation.constraints.NotBlank
;
import
jakarta.validation.constraints.NotNull
;
/**
* @author FrozenWatermelon
* @date 2020/9/2
*/
public
class
CheckPermissionDTO
{
/**
* 用户id
*/
@NotNull
(
message
=
"userId not null"
)
private
Long
userId
;
/**
* 系统类型
*/
@NotNull
(
message
=
"sysType not null"
)
private
Integer
sysType
;
/**
* uri
*/
@NotBlank
(
message
=
"uri not blank"
)
private
String
uri
;
/**
* 是否是管理员
*/
@NotNull
(
message
=
"isAdmin not null"
)
private
Integer
isAdmin
;
/**
* 请求方法 1.GET 2.POST 3.PUT 4.DELETE
*/
private
Integer
method
;
public
Long
getUserId
()
{
return
userId
;
}
public
void
setUserId
(
Long
userId
)
{
this
.
userId
=
userId
;
}
public
Integer
getSysType
()
{
return
sysType
;
}
public
void
setSysType
(
Integer
sysType
)
{
this
.
sysType
=
sysType
;
}
public
String
getUri
()
{
return
uri
;
}
public
void
setUri
(
String
uri
)
{
this
.
uri
=
uri
;
}
public
Integer
getIsAdmin
()
{
return
isAdmin
;
}
public
void
setIsAdmin
(
Integer
isAdmin
)
{
this
.
isAdmin
=
isAdmin
;
}
public
Integer
getMethod
()
{
return
method
;
}
public
void
setMethod
(
Integer
method
)
{
this
.
method
=
method
;
}
@Override
public
String
toString
()
{
return
"CheckPermissionDTO{"
+
"userId="
+
userId
+
", sysType="
+
sysType
+
", uri='"
+
uri
+
'\''
+
", isAdmin="
+
isAdmin
+
", method="
+
method
+
'}'
;
}
}
mall4cloud-api/mall4cloud-api-rbac/src/main/java/com/mall4j/cloud/api/rbac/dto/ClearUserPermissionsCacheDTO.java
0 → 100644
View file @
3ab6e756
package
com.mall4j.cloud.api.rbac.dto
;
import
jakarta.validation.constraints.NotNull
;
/**
* @author FrozenWatermelon
* @date 2020/11/27
*/
public
class
ClearUserPermissionsCacheDTO
{
/**
* 用户id
*/
@NotNull
(
message
=
"userId not null"
)
private
Long
userId
;
/**
* 系统类型
*/
@NotNull
(
message
=
"sysType not null"
)
private
Integer
sysType
;
public
Long
getUserId
()
{
return
userId
;
}
public
void
setUserId
(
Long
userId
)
{
this
.
userId
=
userId
;
}
public
Integer
getSysType
()
{
return
sysType
;
}
public
void
setSysType
(
Integer
sysType
)
{
this
.
sysType
=
sysType
;
}
@Override
public
String
toString
()
{
return
"ClearUserPermissionsCacheDTO{"
+
"userId="
+
userId
+
", sysType="
+
sysType
+
'}'
;
}
}
mall4cloud-api/mall4cloud-api-rbac/src/main/java/com/mall4j/cloud/api/rbac/dto/UserRoleDTO.java
0 → 100644
View file @
3ab6e756
package
com.mall4j.cloud.api.rbac.dto
;
import
jakarta.validation.constraints.NotEmpty
;
import
jakarta.validation.constraints.NotNull
;
import
java.util.List
;
/**
* @author FrozenWatermelon
* @date 2020/11/27
*/
public
class
UserRoleDTO
{
/**
* 用户id
*/
@NotNull
(
message
=
"userId not null"
)
private
Long
userId
;
/**
* 角色id列表
*/
@NotEmpty
(
message
=
"userId not null"
)
private
List
<
Long
>
roleIds
;
public
Long
getUserId
()
{
return
userId
;
}
public
void
setUserId
(
Long
userId
)
{
this
.
userId
=
userId
;
}
public
List
<
Long
>
getRoleIds
()
{
return
roleIds
;
}
public
void
setRoleIds
(
List
<
Long
>
roleIds
)
{
this
.
roleIds
=
roleIds
;
}
@Override
public
String
toString
()
{
return
"UserRoleDTO{"
+
"userId="
+
userId
+
", roleIds="
+
roleIds
+
'}'
;
}
}
mall4cloud-api/mall4cloud-api-rbac/src/main/java/com/mall4j/cloud/api/rbac/feign/PermissionFeignClient.java
0 → 100644
View file @
3ab6e756
package
com.mall4j.cloud.api.rbac.feign
;
import
com.mall4j.cloud.api.rbac.dto.ClearUserPermissionsCacheDTO
;
import
com.mall4j.cloud.common.constant.Auth
;
import
com.mall4j.cloud.common.feign.FeignInsideAuthConfig
;
import
com.mall4j.cloud.common.response.ServerResponseEntity
;
import
org.springframework.cloud.openfeign.FeignClient
;
import
org.springframework.web.bind.annotation.GetMapping
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
org.springframework.web.bind.annotation.RequestParam
;
/**
*
* @author FrozenWatermelon
* @date 2020/09/02
*/
@FeignClient
(
value
=
PermissionFeignClient
.
SERVICE_NAME
,
contextId
=
"permission"
)
public
interface
PermissionFeignClient
{
String
SERVICE_NAME
=
"mall4cloud-rbac"
;
/**
* 校验是否有某个uri的权限
* @param userId
* @param sysType
* @param uri
* @param isAdmin
* @param method
* @return 是否有某个uri的权限
*/
@GetMapping
(
value
=
Auth
.
CHECK_RBAC_URI
)
ServerResponseEntity
<
Boolean
>
checkPermission
(
@RequestParam
(
"userId"
)
Long
userId
,
@RequestParam
(
"sysType"
)
Integer
sysType
,
@RequestParam
(
"uri"
)
String
uri
,
@RequestParam
(
"isAdmin"
)
Integer
isAdmin
,
@RequestParam
(
"method"
)
Integer
method
);
/**
* 清除用户权限缓存
* @param clearUserPermissionsCacheDTO
* @return 是否调用成功
*/
@PostMapping
(
value
=
FeignInsideAuthConfig
.
FEIGN_INSIDE_URL_PREFIX
+
"/insider/permission/clearUserPermissionsCache"
)
ServerResponseEntity
<
Void
>
clearUserPermissionsCache
(
@RequestBody
ClearUserPermissionsCacheDTO
clearUserPermissionsCacheDTO
);
}
mall4cloud-api/mall4cloud-api-rbac/src/main/java/com/mall4j/cloud/api/rbac/feign/UserRoleFeignClient.java
0 → 100644
View file @
3ab6e756
package
com.mall4j.cloud.api.rbac.feign
;
import
com.mall4j.cloud.api.rbac.dto.UserRoleDTO
;
import
com.mall4j.cloud.common.feign.FeignInsideAuthConfig
;
import
com.mall4j.cloud.common.response.ServerResponseEntity
;
import
org.springframework.cloud.openfeign.FeignClient
;
import
org.springframework.web.bind.annotation.*
;
import
java.util.List
;
/**
* @author FrozenWatermelon
* @date 2020/11/25
*/
@FeignClient
(
value
=
"mall4cloud-rbac"
,
contextId
=
"userRole"
)
public
interface
UserRoleFeignClient
{
/**
* 保存用户角色关联信息
* @param userRoleDTO 用户角色关联信息
* @return void
*/
@PostMapping
(
value
=
FeignInsideAuthConfig
.
FEIGN_INSIDE_URL_PREFIX
+
"/userRole/saveByUserIdAndSysType"
)
ServerResponseEntity
<
Void
>
saveByUserIdAndSysType
(
@RequestBody
UserRoleDTO
userRoleDTO
);
/**
* 更新用户角色关联信息
* @param userRoleDTO 用户角色关联信息
* @return void
*/
@PutMapping
(
value
=
FeignInsideAuthConfig
.
FEIGN_INSIDE_URL_PREFIX
+
"/userRole/updateByUserIdAndSysType"
)
ServerResponseEntity
<
Void
>
updateByUserIdAndSysType
(
@RequestBody
UserRoleDTO
userRoleDTO
);
/**
* 删除用户角色关联信息
* @param userId 用户id
* @return void
*/
@DeleteMapping
(
value
=
FeignInsideAuthConfig
.
FEIGN_INSIDE_URL_PREFIX
+
"/userRole/deleteByUserIdAndSysType"
)
ServerResponseEntity
<
Void
>
deleteByUserIdAndSysType
(
@RequestParam
(
"userId"
)
Long
userId
);
/**
* 获取用户角色关联信息
* @param userId 用户id
* @return 用户角色关联ids
*/
@GetMapping
(
value
=
FeignInsideAuthConfig
.
FEIGN_INSIDE_URL_PREFIX
+
"/userRole/getRoleIds"
)
ServerResponseEntity
<
List
<
Long
>>
getRoleIds
(
@RequestParam
(
"userId"
)
Long
userId
);
}
mall4cloud-api/mall4cloud-api-rbac/target/classes/com/mall4j/cloud/api/rbac/bo/UriPermissionBO.class
0 → 100644
View file @
3ab6e756
File added
mall4cloud-api/mall4cloud-api-rbac/target/classes/com/mall4j/cloud/api/rbac/constant/HttpMethodEnum.class
0 → 100644
View file @
3ab6e756
File added
mall4cloud-api/mall4cloud-api-rbac/target/classes/com/mall4j/cloud/api/rbac/dto/CheckPermissionDTO.class
0 → 100644
View file @
3ab6e756
File added
mall4cloud-api/mall4cloud-api-rbac/target/classes/com/mall4j/cloud/api/rbac/dto/ClearUserPermissionsCacheDTO.class
0 → 100644
View file @
3ab6e756
File added
mall4cloud-api/mall4cloud-api-rbac/target/classes/com/mall4j/cloud/api/rbac/dto/UserRoleDTO.class
0 → 100644
View file @
3ab6e756
File added
mall4cloud-api/mall4cloud-api-rbac/target/classes/com/mall4j/cloud/api/rbac/feign/PermissionFeignClient.class
0 → 100644
View file @
3ab6e756
File added
mall4cloud-api/mall4cloud-api-rbac/target/classes/com/mall4j/cloud/api/rbac/feign/UserRoleFeignClient.class
0 → 100644
View file @
3ab6e756
File added
mall4cloud-api/mall4cloud-api-search/pom.xml
0 → 100644
View file @
3ab6e756
<?xml version="1.0" encoding="UTF-8"?>
<project
xmlns=
"http://maven.apache.org/POM/4.0.0"
xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation=
"http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
>
<parent>
<artifactId>
mall4cloud-api
</artifactId>
<groupId>
com.mall4j.cloud
</groupId>
<version>
1.0-SNAPSHOT
</version>
</parent>
<modelVersion>
4.0.0
</modelVersion>
<artifactId>
mall4cloud-api-search
</artifactId>
<packaging>
jar
</packaging>
<description>
搜索对内接口
</description>
<dependencies>
<dependency>
<groupId>
com.mall4j.cloud
</groupId>
<artifactId>
mall4cloud-common-core
</artifactId>
<version>
${project.version}
</version>
</dependency>
</dependencies>
</project>
\ No newline at end of file
mall4cloud-api/mall4cloud-api-search/src/main/java/com/mall4j/cloud/api/dto/EsPageDTO.java
0 → 100644
View file @
3ab6e756
package
com.mall4j.cloud.api.dto
;
import
com.mall4j.cloud.common.util.PrincipalUtil
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
jakarta.validation.constraints.NotNull
;
import
java.util.Arrays
;
/**
* @author FrozenWatermelon
* @date 2020/11/16
*/
public
class
EsPageDTO
{
public
static
final
String
ASC
=
"ASC"
;
public
static
final
String
DESC
=
"DESC"
;
/**
* 最大分页大小,如果分页大小大于500,则用500作为分页的大小。防止有人直接传入一个较大的数,导致服务器内存溢出宕机
*/
public
static
final
Integer
MAX_PAGE_SIZE
=
500
;
/**
* 当前页
*/
@NotNull
(
message
=
"pageNum 不能为空"
)
@Schema
(
description
=
"当前页"
,
requiredMode
=
Schema
.
RequiredMode
.
REQUIRED
)
private
Integer
pageNum
;
@NotNull
(
message
=
"pageSize 不能为空"
)
@Schema
(
description
=
"每页大小"
,
requiredMode
=
Schema
.
RequiredMode
.
REQUIRED
)
private
Integer
pageSize
;
@Schema
(
description
=
"排序字段数组,用逗号分割"
)
private
String
[]
columns
;
@Schema
(
description
=
"排序字段方式,用逗号分割,ASC正序,DESC倒序"
)
private
String
[]
orders
;
public
Integer
getPageNum
()
{
return
pageNum
;
}
public
void
setPageNum
(
Integer
pageNum
)
{
this
.
pageNum
=
pageNum
;
}
public
Integer
getPageSize
()
{
return
pageSize
;
}
public
void
setPageSize
(
Integer
pageSize
)
{
if
(
pageSize
>
MAX_PAGE_SIZE
)
{
this
.
pageSize
=
MAX_PAGE_SIZE
;
return
;
}
this
.
pageSize
=
pageSize
;
}
public
String
getOrderBy
()
{
return
order
(
this
.
columns
,
this
.
orders
);
}
public
String
[]
getColumns
()
{
return
columns
;
}
public
void
setColumns
(
String
[]
columns
)
{
this
.
columns
=
columns
;
}
public
String
[]
getOrders
()
{
return
orders
;
}
public
void
setOrders
(
String
[]
orders
)
{
this
.
orders
=
orders
;
}
public
static
String
order
(
String
[]
columns
,
String
[]
orders
)
{
if
(
columns
==
null
||
columns
.
length
==
0
)
{
return
""
;
}
StringBuilder
stringBuilder
=
new
StringBuilder
();
for
(
int
x
=
0
;
x
<
columns
.
length
;
x
++)
{
String
column
=
columns
[
x
];
String
order
;
if
(
orders
!=
null
&&
orders
.
length
>
x
)
{
order
=
orders
[
x
].
toUpperCase
();
if
(!(
order
.
equals
(
ASC
)
||
order
.
equals
(
DESC
)))
{
throw
new
IllegalArgumentException
(
"非法的排序策略:"
+
column
);
}
}
else
{
order
=
ASC
;
}
// 判断列名称的合法性,防止SQL注入。只能是【字母,数字,下划线】
if
(
PrincipalUtil
.
isField
(
column
))
{
throw
new
IllegalArgumentException
(
"非法的排序字段名称:"
+
column
);
}
// 驼峰转换为下划线
column
=
humpConversionUnderscore
(
column
);
if
(
x
!=
0
)
{
stringBuilder
.
append
(
", "
);
}
stringBuilder
.
append
(
"`"
).
append
(
column
).
append
(
"` "
).
append
(
order
);
}
return
stringBuilder
.
toString
();
}
public
static
String
humpConversionUnderscore
(
String
value
)
{
StringBuilder
stringBuilder
=
new
StringBuilder
();
char
[]
chars
=
value
.
toCharArray
();
for
(
char
character
:
chars
)
{
if
(
Character
.
isUpperCase
(
character
))
{
stringBuilder
.
append
(
"_"
);
character
=
Character
.
toLowerCase
(
character
);
}
stringBuilder
.
append
(
character
);
}
return
stringBuilder
.
toString
();
}
@Override
public
String
toString
()
{
return
"EsPageDTO{"
+
"pageNum="
+
pageNum
+
", pageSize="
+
pageSize
+
", columns="
+
Arrays
.
toString
(
columns
)
+
", orders="
+
Arrays
.
toString
(
orders
)
+
'}'
;
}
}
mall4cloud-api/mall4cloud-api-search/src/main/java/com/mall4j/cloud/api/dto/ProductSearchDTO.java
0 → 100644
View file @
3ab6e756
package
com.mall4j.cloud.api.dto
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
java.util.List
;
import
java.util.Map
;
/**
* @author FrozenWatermelon
* @date 2020/11/16
*/
public
class
ProductSearchDTO
{
@Schema
(
description
=
"页面传递过来的全文匹配关键字"
)
private
String
keyword
;
@Schema
(
description
=
"品牌id,可以多选"
)
private
String
brandIds
;
@Schema
(
description
=
"商家一级分类id"
)
private
Long
shopPrimaryCategoryId
;
@Schema
(
description
=
"商家二级分类id"
)
private
Long
shopSecondaryCategoryId
;
@Schema
(
description
=
"平台一级分类id"
)
private
Long
primaryCategoryId
;
@Schema
(
description
=
"平台三级分类id"
)
private
Long
categoryId
;
@Schema
(
description
=
"排序:1新品,2销量倒序,3销量正序,4商品价格倒序,5商品价格正序,6评论(暂无评论)"
)
private
Integer
sort
;
@Schema
(
description
=
"自营店 1:自营店 2:非自营店"
)
private
Integer
selfShop
;
@Schema
(
description
=
"是否显示有货"
)
private
Integer
hasStock
;
@Schema
(
description
=
"价格区间查询-最低价"
)
private
Long
minPrice
;
@Schema
(
description
=
"价格区间查询-最高价"
)
private
Long
maxPrice
;
@Schema
(
description
=
"店铺id"
)
private
Long
shopId
;
@Schema
(
description
=
"属性值ids(属性之间用^拼接;属性于属性值id用_拼接;多个属性值id间用,拼接)"
)
private
String
attrIds
;
@Schema
(
description
=
"商品状态"
)
private
Integer
spuStatus
;
@Schema
(
description
=
"属性值ids(多个id间使用 , 分隔)"
)
private
String
attrValueIds
;
@Schema
(
description
=
"spuId列表"
)
private
List
<
Long
>
spuIds
;
@Schema
(
description
=
"销量区间查询-最低销量"
)
private
Long
minSaleNum
;
@Schema
(
description
=
"销量区间查询-最高销量"
)
private
Long
maxSaleNum
;
@Schema
(
description
=
"商品编码列表(逗号分隔)"
)
private
String
partyCodes
;
@Schema
(
description
=
"商品条形码列表(逗号分隔)"
)
private
String
modelIds
;
@Schema
(
description
=
"0.全部 1.销售中 2.已售罄 3.已下架"
)
private
Integer
dataType
;
@Schema
(
description
=
"当前页"
)
private
Integer
pageNum
;
@Schema
(
description
=
"每页大小"
)
private
Integer
pageSize
;
/**
* 对应SearchTypeEnum
* 搜索类型 1:用户端搜索 2:店铺spu列表 3.平台spu管理列表
*/
private
Integer
searchType
;
/**
* 搜索属性信息
*/
private
Map
<
String
,
List
<
String
>>
attrMap
;
public
Map
<
String
,
List
<
String
>>
getAttrMap
()
{
return
attrMap
;
}
public
void
setAttrMap
(
Map
<
String
,
List
<
String
>>
attrMap
)
{
this
.
attrMap
=
attrMap
;
}
public
String
getAttrIds
()
{
return
attrIds
;
}
public
void
setAttrIds
(
String
attrIds
)
{
this
.
attrIds
=
attrIds
;
}
public
Long
getMinSaleNum
()
{
return
minSaleNum
;
}
public
void
setMinSaleNum
(
Long
minSaleNum
)
{
this
.
minSaleNum
=
minSaleNum
;
}
public
Long
getMaxSaleNum
()
{
return
maxSaleNum
;
}
public
void
setMaxSaleNum
(
Long
maxSaleNum
)
{
this
.
maxSaleNum
=
maxSaleNum
;
}
public
String
getPartyCodes
()
{
return
partyCodes
;
}
public
void
setPartyCodes
(
String
partyCodes
)
{
this
.
partyCodes
=
partyCodes
;
}
public
String
getModelIds
()
{
return
modelIds
;
}
public
void
setModelIds
(
String
modelIds
)
{
this
.
modelIds
=
modelIds
;
}
public
String
getKeyword
()
{
return
keyword
;
}
public
void
setKeyword
(
String
keyword
)
{
this
.
keyword
=
keyword
;
}
public
String
getBrandIds
()
{
return
brandIds
;
}
public
void
setBrandIds
(
String
brandIds
)
{
this
.
brandIds
=
brandIds
;
}
public
Long
getShopPrimaryCategoryId
()
{
return
shopPrimaryCategoryId
;
}
public
void
setShopPrimaryCategoryId
(
Long
shopPrimaryCategoryId
)
{
this
.
shopPrimaryCategoryId
=
shopPrimaryCategoryId
;
}
public
Long
getShopSecondaryCategoryId
()
{
return
shopSecondaryCategoryId
;
}
public
void
setShopSecondaryCategoryId
(
Long
shopSecondaryCategoryId
)
{
this
.
shopSecondaryCategoryId
=
shopSecondaryCategoryId
;
}
public
Long
getPrimaryCategoryId
()
{
return
primaryCategoryId
;
}
public
void
setPrimaryCategoryId
(
Long
primaryCategoryId
)
{
this
.
primaryCategoryId
=
primaryCategoryId
;
}
public
Long
getCategoryId
()
{
return
categoryId
;
}
public
void
setCategoryId
(
Long
categoryId
)
{
this
.
categoryId
=
categoryId
;
}
public
Integer
getSort
()
{
return
sort
;
}
public
void
setSort
(
Integer
sort
)
{
this
.
sort
=
sort
;
}
public
Integer
getSelfShop
()
{
return
selfShop
;
}
public
void
setSelfShop
(
Integer
selfShop
)
{
this
.
selfShop
=
selfShop
;
}
public
Integer
getHasStock
()
{
return
hasStock
;
}
public
void
setHasStock
(
Integer
hasStock
)
{
this
.
hasStock
=
hasStock
;
}
public
Long
getMinPrice
()
{
return
minPrice
;
}
public
void
setMinPrice
(
Long
minPrice
)
{
this
.
minPrice
=
minPrice
;
}
public
Long
getMaxPrice
()
{
return
maxPrice
;
}
public
void
setMaxPrice
(
Long
maxPrice
)
{
this
.
maxPrice
=
maxPrice
;
}
public
Long
getShopId
()
{
return
shopId
;
}
public
void
setShopId
(
Long
shopId
)
{
this
.
shopId
=
shopId
;
}
public
Integer
getSpuStatus
()
{
return
spuStatus
;
}
public
void
setSpuStatus
(
Integer
spuStatus
)
{
this
.
spuStatus
=
spuStatus
;
}
public
String
getAttrValueIds
()
{
return
attrValueIds
;
}
public
void
setAttrValueIds
(
String
attrValueIds
)
{
this
.
attrValueIds
=
attrValueIds
;
}
public
List
<
Long
>
getSpuIds
()
{
return
spuIds
;
}
public
void
setSpuIds
(
List
<
Long
>
spuIds
)
{
this
.
spuIds
=
spuIds
;
}
public
Integer
getDataType
()
{
return
dataType
;
}
public
void
setDataType
(
Integer
dataType
)
{
this
.
dataType
=
dataType
;
}
public
Integer
getPageNum
()
{
return
pageNum
;
}
public
void
setPageNum
(
Integer
pageNum
)
{
this
.
pageNum
=
pageNum
;
}
public
Integer
getPageSize
()
{
return
pageSize
;
}
public
void
setPageSize
(
Integer
pageSize
)
{
this
.
pageSize
=
pageSize
;
}
public
Integer
getSearchType
()
{
return
searchType
;
}
public
void
setSearchType
(
Integer
searchType
)
{
this
.
searchType
=
searchType
;
}
@Override
public
String
toString
()
{
return
"ProductSearchDTO{"
+
"keyword='"
+
keyword
+
'\''
+
", brandIds='"
+
brandIds
+
'\''
+
", shopPrimaryCategoryId="
+
shopPrimaryCategoryId
+
", shopSecondaryCategoryId="
+
shopSecondaryCategoryId
+
", primaryCategoryId="
+
primaryCategoryId
+
", categoryId="
+
categoryId
+
", sort="
+
sort
+
", selfShop="
+
selfShop
+
", hasStock="
+
hasStock
+
", minPrice="
+
minPrice
+
", maxPrice="
+
maxPrice
+
", shopId="
+
shopId
+
", attrIds='"
+
attrIds
+
'\''
+
", spuStatus="
+
spuStatus
+
", attrValueIds='"
+
attrValueIds
+
'\''
+
", spuIds="
+
spuIds
+
", minSaleNum="
+
minSaleNum
+
", maxSaleNum="
+
maxSaleNum
+
", partyCodes='"
+
partyCodes
+
'\''
+
", modelIds='"
+
modelIds
+
'\''
+
", dataType="
+
dataType
+
", pageNum="
+
pageNum
+
", pageSize="
+
pageSize
+
", searchType="
+
searchType
+
", attrMap="
+
attrMap
+
'}'
;
}
}
mall4cloud-api/mall4cloud-api-search/src/main/java/com/mall4j/cloud/api/feign/SearchOrderFeignClient.java
0 → 100644
View file @
3ab6e756
package
com.mall4j.cloud.api.feign
;
import
com.mall4j.cloud.api.vo.EsPageVO
;
import
com.mall4j.cloud.api.vo.search.EsOrderVO
;
import
com.mall4j.cloud.common.dto.OrderSearchDTO
;
import
com.mall4j.cloud.common.feign.FeignInsideAuthConfig
;
import
com.mall4j.cloud.common.response.ServerResponseEntity
;
import
org.springframework.cloud.openfeign.FeignClient
;
import
org.springframework.web.bind.annotation.*
;
/**
* 订单搜索
* @author FrozenWatermelon
* @date 2021/02/05
*/
@FeignClient
(
value
=
"mall4cloud-search"
,
contextId
=
"searchOrder"
)
public
interface
SearchOrderFeignClient
{
/**
* 订单搜索
* @param orderSearch 订单搜索参数
* @return 订单列表
*/
@PutMapping
(
value
=
FeignInsideAuthConfig
.
FEIGN_INSIDE_URL_PREFIX
+
"/insider/searchOrder/getOrderPage"
)
ServerResponseEntity
<
EsPageVO
<
EsOrderVO
>>
getOrderPage
(
@RequestBody
OrderSearchDTO
orderSearch
);
}
Prev
1
2
3
4
5
6
7
8
9
10
…
34
Next
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment