Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
P
peizhen-java
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
PeiZhen-Java
peizhen-java
Commits
60f6be1b
Commit
60f6be1b
authored
Oct 09, 2023
by
Wangmin
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
新增订单消息相关业务
parent
b1b91cd0
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
13 changed files
with
622 additions
and
0 deletions
+622
-0
pz-admin/src/main/java/com/pz/web/controller/system/OrderMessageController.java
+106
-0
pz-applet/src/main/java/com/pz/applet/AppletOrderMessageController.java
+40
-0
pz-system/src/main/java/com/pz/system/domain/OrderMessage.java
+52
-0
pz-system/src/main/java/com/pz/system/domain/bo/OrderMessageBo.java
+61
-0
pz-system/src/main/java/com/pz/system/domain/vo/AppletOrderMessageVo.java
+24
-0
pz-system/src/main/java/com/pz/system/domain/vo/OrderMessageVo.java
+73
-0
pz-system/src/main/java/com/pz/system/mapper/OrderMessageMapper.java
+29
-0
pz-system/src/main/java/com/pz/system/mapper/TotalOrderMapper.java
+8
-0
pz-system/src/main/java/com/pz/system/service/IOrderMessageService.java
+58
-0
pz-system/src/main/java/com/pz/system/service/impl/OrderMessageServiceImpl.java
+126
-0
pz-system/src/main/java/com/pz/system/service/impl/TotalOrderServiceImpl.java
+0
-0
pz-system/src/main/resources/mapper/system/OrderMessageMapper.xml
+32
-0
pz-system/src/main/resources/mapper/system/TotalOrderMapper.xml
+13
-0
No files found.
pz-admin/src/main/java/com/pz/web/controller/system/OrderMessageController.java
0 → 100644
View file @
60f6be1b
package
com
.
pz
.
web
.
controller
.
system
;
import
java.util.List
;
import
java.util.Arrays
;
import
lombok.RequiredArgsConstructor
;
import
javax.servlet.http.HttpServletResponse
;
import
javax.validation.constraints.*
;
import
cn.dev33.satoken.annotation.SaCheckPermission
;
import
org.springframework.web.bind.annotation.*
;
import
org.springframework.validation.annotation.Validated
;
import
com.pz.common.annotation.RepeatSubmit
;
import
com.pz.common.annotation.Log
;
import
com.pz.common.core.controller.BaseController
;
import
com.pz.common.core.domain.PageQuery
;
import
com.pz.common.core.domain.R
;
import
com.pz.common.core.validate.AddGroup
;
import
com.pz.common.core.validate.EditGroup
;
import
com.pz.common.enums.BusinessType
;
import
com.pz.common.utils.poi.ExcelUtil
;
import
com.pz.system.domain.vo.OrderMessageVo
;
import
com.pz.system.domain.bo.OrderMessageBo
;
import
com.pz.system.service.IOrderMessageService
;
import
com.pz.common.core.page.TableDataInfo
;
/**
* 订单消息
*
* @author Wang Min
* @date 2023-10-09
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping
(
"/system/message"
)
public
class
OrderMessageController
extends
BaseController
{
private
final
IOrderMessageService
iOrderMessageService
;
/**
* 查询订单消息列表
*/
@SaCheckPermission
(
"system:message:list"
)
@GetMapping
(
"/list"
)
public
TableDataInfo
<
OrderMessageVo
>
list
(
OrderMessageBo
bo
,
PageQuery
pageQuery
)
{
return
iOrderMessageService
.
queryPageList
(
bo
,
pageQuery
);
}
/**
* 导出订单消息列表
*/
@SaCheckPermission
(
"system:message:export"
)
@Log
(
title
=
"订单消息"
,
businessType
=
BusinessType
.
EXPORT
)
@PostMapping
(
"/export"
)
public
void
export
(
OrderMessageBo
bo
,
HttpServletResponse
response
)
{
List
<
OrderMessageVo
>
list
=
iOrderMessageService
.
queryList
(
bo
);
ExcelUtil
.
exportExcel
(
list
,
"订单消息"
,
OrderMessageVo
.
class
,
response
);
}
/**
* 获取订单消息详细信息
*
* @param id 主键
*/
@SaCheckPermission
(
"system:message:query"
)
@GetMapping
(
"/{id}"
)
public
R
<
OrderMessageVo
>
getInfo
(
@NotNull
(
message
=
"主键不能为空"
)
@PathVariable
Long
id
)
{
return
R
.
ok
(
iOrderMessageService
.
queryById
(
id
));
}
/**
* 新增订单消息
*/
@SaCheckPermission
(
"system:message:add"
)
@Log
(
title
=
"订单消息"
,
businessType
=
BusinessType
.
INSERT
)
@RepeatSubmit
()
@PostMapping
()
public
R
<
Void
>
add
(
@Validated
(
AddGroup
.
class
)
@RequestBody
OrderMessageBo
bo
)
{
return
toAjax
(
iOrderMessageService
.
insertByBo
(
bo
));
}
/**
* 修改订单消息
*/
@SaCheckPermission
(
"system:message:edit"
)
@Log
(
title
=
"订单消息"
,
businessType
=
BusinessType
.
UPDATE
)
@RepeatSubmit
()
@PutMapping
()
public
R
<
Void
>
edit
(
@Validated
(
EditGroup
.
class
)
@RequestBody
OrderMessageBo
bo
)
{
return
toAjax
(
iOrderMessageService
.
updateByBo
(
bo
));
}
/**
* 删除订单消息
*
* @param ids 主键串
*/
@SaCheckPermission
(
"system:message:remove"
)
@Log
(
title
=
"订单消息"
,
businessType
=
BusinessType
.
DELETE
)
@DeleteMapping
(
"/{ids}"
)
public
R
<
Void
>
remove
(
@NotEmpty
(
message
=
"主键不能为空"
)
@PathVariable
Long
[]
ids
)
{
return
toAjax
(
iOrderMessageService
.
deleteWithValidByIds
(
Arrays
.
asList
(
ids
),
true
));
}
}
pz-applet/src/main/java/com/pz/applet/AppletOrderMessageController.java
0 → 100644
View file @
60f6be1b
package
com
.
pz
.
applet
;
import
cn.dev33.satoken.annotation.SaIgnore
;
import
com.pz.applet.util.CityIdUtils
;
import
com.pz.common.core.domain.R
;
import
com.pz.system.domain.vo.AppletOrderMessageVo
;
import
com.pz.system.service.IOrderMessageService
;
import
lombok.RequiredArgsConstructor
;
import
org.springframework.web.bind.annotation.GetMapping
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
import
javax.servlet.http.HttpServletRequest
;
import
java.util.List
;
/**
* 订单消息
* <p>created in 2023/10/9 10:23
*
* @author WangMin
* @version 1.0
*/
@RequiredArgsConstructor
@RestController
@RequestMapping
(
"/applet/orderMessage"
)
@SaIgnore
public
class
AppletOrderMessageController
{
private
final
IOrderMessageService
iOrderMessageService
;
/**
* 查询订单消息列表
*/
@GetMapping
(
"/list"
)
public
R
<
List
<
AppletOrderMessageVo
>>
list
(
HttpServletRequest
request
)
{
Integer
cityId
=
CityIdUtils
.
setCityIdPasInteger
(
request
);
return
R
.
ok
(
iOrderMessageService
.
messageList
(
cityId
));
}
}
pz-system/src/main/java/com/pz/system/domain/OrderMessage.java
0 → 100644
View file @
60f6be1b
package
com
.
pz
.
system
.
domain
;
import
com.baomidou.mybatisplus.annotation.*
;
import
com.pz.common.core.domain.BaseEntity
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
/**
* 订单消息对象 order_message
*
* @author Wang Min
* @date 2023-10-09
*/
@Data
@EqualsAndHashCode
(
callSuper
=
true
)
@TableName
(
"order_message"
)
public
class
OrderMessage
extends
BaseEntity
{
private
static
final
long
serialVersionUID
=
1L
;
/**
* 主键
*/
@TableId
(
value
=
"id"
,
type
=
IdType
.
AUTO
)
private
Long
id
;
/**
* 主订单Id
*/
private
Long
totalOrderId
;
/**
* 城市
*/
private
Integer
cityId
;
/**
* 购买用户
*/
private
String
userName
;
/**
* 业务
*/
private
String
businessName
;
/**
* 服务
*/
private
String
serviceName
;
/**
* 备注
*/
private
String
remark
;
}
pz-system/src/main/java/com/pz/system/domain/bo/OrderMessageBo.java
0 → 100644
View file @
60f6be1b
package
com
.
pz
.
system
.
domain
.
bo
;
import
com.pz.common.core.domain.BaseEntity
;
import
com.pz.common.core.validate.AddGroup
;
import
com.pz.common.core.validate.EditGroup
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
import
javax.validation.constraints.*
;
/**
* 订单消息业务对象 order_message
*
* @author Wang Min
* @date 2023-10-09
*/
@Data
@EqualsAndHashCode
(
callSuper
=
true
)
public
class
OrderMessageBo
extends
BaseEntity
{
/**
* 主键
*/
@NotNull
(
message
=
"主键不能为空"
,
groups
=
{
EditGroup
.
class
})
private
Long
id
;
/**
* 主订单Id
*/
private
Long
totalOrderId
;
/**
* 城市
*/
@NotNull
(
message
=
"城市不能为空"
,
groups
=
{
AddGroup
.
class
,
EditGroup
.
class
})
private
Integer
cityId
;
/**
* 购买用户
*/
@NotBlank
(
message
=
"购买用户不能为空"
,
groups
=
{
AddGroup
.
class
,
EditGroup
.
class
})
private
String
userName
;
/**
* 业务
*/
@NotBlank
(
message
=
"业务不能为空"
,
groups
=
{
AddGroup
.
class
,
EditGroup
.
class
})
private
String
businessName
;
/**
* 服务
*/
@NotBlank
(
message
=
"服务不能为空"
,
groups
=
{
AddGroup
.
class
,
EditGroup
.
class
})
private
String
serviceName
;
private
String
remark
;
}
pz-system/src/main/java/com/pz/system/domain/vo/AppletOrderMessageVo.java
0 → 100644
View file @
60f6be1b
package
com
.
pz
.
system
.
domain
.
vo
;
import
lombok.Data
;
/**
* <p>created in 2023/10/9 10:52
*
* @author WangMin
* @version 1.0
*/
@Data
public
class
AppletOrderMessageVo
{
/**
* 买家姓名
*/
private
String
userName
;
/**
* 头像
*/
private
String
avatar
;
}
pz-system/src/main/java/com/pz/system/domain/vo/OrderMessageVo.java
0 → 100644
View file @
60f6be1b
package
com
.
pz
.
system
.
domain
.
vo
;
import
com.alibaba.excel.annotation.ExcelIgnoreUnannotated
;
import
com.alibaba.excel.annotation.ExcelProperty
;
import
com.pz.common.annotation.ExcelDictFormat
;
import
com.pz.common.convert.ExcelDictConvert
;
import
lombok.Data
;
import
java.util.Date
;
/**
* 订单消息视图对象 order_message
*
* @author Wang Min
* @date 2023-10-09
*/
@Data
@ExcelIgnoreUnannotated
public
class
OrderMessageVo
{
private
static
final
long
serialVersionUID
=
1L
;
/**
* 主键
*/
@ExcelProperty
(
value
=
"主键"
)
private
Long
id
;
/**
* 主订单Id
*/
@ExcelProperty
(
value
=
"主订单Id"
)
private
Long
totalOrderId
;
/**
* 城市
*/
@ExcelProperty
(
value
=
"城市"
)
private
Integer
cityId
;
/**
* 购买用户
*/
@ExcelProperty
(
value
=
"购买用户"
)
private
String
userName
;
/**
* 业务
*/
@ExcelProperty
(
value
=
"业务"
)
private
String
businessName
;
/**
* 服务
*/
@ExcelProperty
(
value
=
"服务"
)
private
String
serviceName
;
/**
* 购买时间
*/
@ExcelProperty
(
value
=
"购买时间"
)
private
Date
createTime
;
/**
* 备注
*/
@ExcelProperty
(
value
=
"备注"
)
private
String
remark
;
}
pz-system/src/main/java/com/pz/system/mapper/OrderMessageMapper.java
0 → 100644
View file @
60f6be1b
package
com
.
pz
.
system
.
mapper
;
import
com.pz.system.domain.OrderMessage
;
import
com.pz.system.domain.vo.AppletOrderMessageVo
;
import
com.pz.system.domain.vo.OrderMessageVo
;
import
com.pz.common.core.mapper.BaseMapperPlus
;
import
org.apache.ibatis.annotations.Mapper
;
import
java.util.List
;
/**
* 订单消息Mapper接口
*
* @author Wang Min
* @date 2023-10-09
*/
@Mapper
public
interface
OrderMessageMapper
extends
BaseMapperPlus
<
OrderMessageMapper
,
OrderMessage
,
OrderMessageVo
>
{
/**
* 查询最近10条数据
*
* @param cityId 城市ID
* @return 结果
*/
List
<
AppletOrderMessageVo
>
selectLastTenRecord
(
Integer
cityId
);
}
pz-system/src/main/java/com/pz/system/mapper/TotalOrderMapper.java
View file @
60f6be1b
...
...
@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import
com.baomidou.mybatisplus.core.toolkit.Constants
;
import
com.pz.merchant.domain.Company
;
import
com.pz.merchant.domain.vo.FinanceOrderInfoVo
;
import
com.pz.system.domain.OrderMessage
;
import
com.pz.system.domain.TotalOrder
;
import
com.pz.system.domain.vo.AccompanyDemandVo
;
import
com.pz.system.domain.vo.AppOrderVo
;
...
...
@@ -52,4 +53,11 @@ public interface TotalOrderMapper extends BaseMapperPlus<TotalOrderMapper, Total
IPage
<
TotalOrderVo
>
selectAppOrder
(
IPage
<
TotalOrderVo
>
page
,
@Param
(
Constants
.
WRAPPER
)
Wrapper
<
TotalOrder
>
queryWrapper
);
TotalOrderVo
selectByOrderId
(
@Param
(
"id"
)
Integer
id
);
/**
* 查询主订单相关数据转换为订单消息
* @param id 主订单ID
* @return 主订单数据转订单消息
*/
OrderMessage
selectDataToMessageById
(
Long
id
);
}
pz-system/src/main/java/com/pz/system/service/IOrderMessageService.java
0 → 100644
View file @
60f6be1b
package
com
.
pz
.
system
.
service
;
import
com.pz.system.domain.OrderMessage
;
import
com.pz.system.domain.vo.AppletOrderMessageVo
;
import
com.pz.system.domain.vo.OrderMessageVo
;
import
com.pz.system.domain.bo.OrderMessageBo
;
import
com.pz.common.core.page.TableDataInfo
;
import
com.pz.common.core.domain.PageQuery
;
import
java.util.Collection
;
import
java.util.List
;
/**
* 订单消息Service接口
*
* @author Wang Min
* @date 2023-10-09
*/
public
interface
IOrderMessageService
{
/**
* 查询订单消息
*/
OrderMessageVo
queryById
(
Long
id
);
/**
* 查询订单消息列表
*/
TableDataInfo
<
OrderMessageVo
>
queryPageList
(
OrderMessageBo
bo
,
PageQuery
pageQuery
);
/**
* 根据城市查询订单消息列表,只返回最近10条数据
*
* @param cityId 城市ID
* @return 消息结果
*/
List
<
AppletOrderMessageVo
>
messageList
(
Integer
cityId
);
/**
* 查询订单消息列表
*/
List
<
OrderMessageVo
>
queryList
(
OrderMessageBo
bo
);
/**
* 新增订单消息
*/
Boolean
insertByBo
(
OrderMessageBo
bo
);
/**
* 修改订单消息
*/
Boolean
updateByBo
(
OrderMessageBo
bo
);
/**
* 校验并批量删除订单消息信息
*/
Boolean
deleteWithValidByIds
(
Collection
<
Long
>
ids
,
Boolean
isValid
);
}
pz-system/src/main/java/com/pz/system/service/impl/OrderMessageServiceImpl.java
0 → 100644
View file @
60f6be1b
package
com
.
pz
.
system
.
service
.
impl
;
import
cn.hutool.core.bean.BeanUtil
;
import
com.baomidou.mybatisplus.core.conditions.Wrapper
;
import
com.baomidou.mybatisplus.core.conditions.query.QueryWrapper
;
import
com.pz.common.core.page.TableDataInfo
;
import
com.pz.common.core.domain.PageQuery
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper
;
import
com.baomidou.mybatisplus.core.toolkit.Wrappers
;
import
com.pz.common.utils.StringUtils
;
import
com.pz.system.domain.vo.AppletOrderMessageVo
;
import
lombok.RequiredArgsConstructor
;
import
org.springframework.stereotype.Service
;
import
com.pz.system.domain.bo.OrderMessageBo
;
import
com.pz.system.domain.vo.OrderMessageVo
;
import
com.pz.system.domain.OrderMessage
;
import
com.pz.system.mapper.OrderMessageMapper
;
import
com.pz.system.service.IOrderMessageService
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.Collection
;
/**
* 订单消息Service业务层处理
*
* @author Wang Min
* @date 2023-10-09
*/
@RequiredArgsConstructor
@Service
public
class
OrderMessageServiceImpl
implements
IOrderMessageService
{
private
final
OrderMessageMapper
baseMapper
;
/**
* 查询订单消息
*/
@Override
public
OrderMessageVo
queryById
(
Long
id
)
{
return
baseMapper
.
selectVoById
(
id
);
}
/**
* 查询订单消息列表
*/
@Override
public
TableDataInfo
<
OrderMessageVo
>
queryPageList
(
OrderMessageBo
bo
,
PageQuery
pageQuery
)
{
LambdaQueryWrapper
<
OrderMessage
>
lqw
=
buildQueryWrapper
(
bo
);
Page
<
OrderMessageVo
>
result
=
baseMapper
.
selectVoPage
(
pageQuery
.
build
(),
lqw
);
return
TableDataInfo
.
build
(
result
);
}
/**
* 根据城市查询订单消息列表,只返回最近10条数据
*
* @param cityId 城市ID
* @return 消息结果
*/
@Override
public
List
<
AppletOrderMessageVo
>
messageList
(
Integer
cityId
)
{
return
baseMapper
.
selectLastTenRecord
(
cityId
);
}
/**
* 查询订单消息列表
*/
@Override
public
List
<
OrderMessageVo
>
queryList
(
OrderMessageBo
bo
)
{
LambdaQueryWrapper
<
OrderMessage
>
lqw
=
buildQueryWrapper
(
bo
);
return
baseMapper
.
selectVoList
(
lqw
);
}
private
LambdaQueryWrapper
<
OrderMessage
>
buildQueryWrapper
(
OrderMessageBo
bo
)
{
Map
<
String
,
Object
>
params
=
bo
.
getParams
();
LambdaQueryWrapper
<
OrderMessage
>
lqw
=
Wrappers
.
lambdaQuery
();
lqw
.
like
(
StringUtils
.
isNotBlank
(
bo
.
getUserName
()),
OrderMessage:
:
getUserName
,
bo
.
getUserName
());
lqw
.
like
(
StringUtils
.
isNotBlank
(
bo
.
getBusinessName
()),
OrderMessage:
:
getBusinessName
,
bo
.
getBusinessName
());
lqw
.
like
(
StringUtils
.
isNotBlank
(
bo
.
getServiceName
()),
OrderMessage:
:
getServiceName
,
bo
.
getServiceName
());
return
lqw
;
}
/**
* 新增订单消息
*/
@Override
public
Boolean
insertByBo
(
OrderMessageBo
bo
)
{
OrderMessage
add
=
BeanUtil
.
toBean
(
bo
,
OrderMessage
.
class
);
validEntityBeforeSave
(
add
);
boolean
flag
=
baseMapper
.
insert
(
add
)
>
0
;
if
(
flag
)
{
bo
.
setId
(
add
.
getId
());
}
return
flag
;
}
/**
* 修改订单消息
*/
@Override
public
Boolean
updateByBo
(
OrderMessageBo
bo
)
{
OrderMessage
update
=
BeanUtil
.
toBean
(
bo
,
OrderMessage
.
class
);
validEntityBeforeSave
(
update
);
return
baseMapper
.
updateById
(
update
)
>
0
;
}
/**
* 保存前的数据校验
*/
private
void
validEntityBeforeSave
(
OrderMessage
entity
)
{
// TODO 做一些数据校验,如唯一约束
}
/**
* 批量删除订单消息
*/
@Override
public
Boolean
deleteWithValidByIds
(
Collection
<
Long
>
ids
,
Boolean
isValid
)
{
if
(
isValid
)
{
// TODO 做一些业务上的校验,判断是否需要校验
}
return
baseMapper
.
deleteBatchIds
(
ids
)
>
0
;
}
}
pz-system/src/main/java/com/pz/system/service/impl/TotalOrderServiceImpl.java
View file @
60f6be1b
This diff is collapsed.
Click to expand it.
pz-system/src/main/resources/mapper/system/OrderMessageMapper.xml
0 → 100644
View file @
60f6be1b
<?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.pz.system.mapper.OrderMessageMapper"
>
<resultMap
type=
"com.pz.system.domain.OrderMessage"
id=
"OrderMessageResult"
>
<result
property=
"id"
column=
"id"
/>
<result
property=
"totalOrderId"
column=
"total_order_id"
/>
<result
property=
"cityId"
column=
"city_id"
/>
<result
property=
"userName"
column=
"user_name"
/>
<result
property=
"businessName"
column=
"business_name"
/>
<result
property=
"serviceName"
column=
"service_name"
/>
<result
property=
"createBy"
column=
"create_by"
/>
<result
property=
"createTime"
column=
"create_time"
/>
<result
property=
"updateBy"
column=
"update_by"
/>
<result
property=
"updateTime"
column=
"update_time"
/>
<result
property=
"remark"
column=
"remark"
/>
</resultMap>
<select
id=
"selectLastTenRecord"
resultType=
"com.pz.system.domain.vo.AppletOrderMessageVo"
>
select ifnull(order_message.user_name, '') as userName,
ifnull(user.avatar, '') as avatar
from order_message
join total_order on total_order.id = order_message.total_order_id
left join sys_user as user on user.user_id = total_order.uid
order by order_message.id desc
limit 10
</select>
</mapper>
pz-system/src/main/resources/mapper/system/TotalOrderMapper.xml
View file @
60f6be1b
...
...
@@ -72,4 +72,17 @@
where t.id = #{id}
</select>
<select
id=
"selectDataToMessageById"
resultType=
"com.pz.system.domain.OrderMessage"
>
select total_order.id as totalOrderId,
total_order.city_id,
business.name as businessName,
services.name as serviceName,
sys_user.nick_name as userName
from total_order
left join business on total_order.business_id = business.id
left join services on total_order.service_id = services.id
left join sys_user on sys_user.user_id = total_order.uid
where total_order.id = #{id}
</select>
</mapper>
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