Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
S
soss
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
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
hooloo
ms
soss
Commits
0a2b2609
Commit
0a2b2609
authored
May 29, 2022
by
张新旗
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
代码永远在路上
parent
ef275933
Show whitespace changes
Inline
Side-by-side
Showing
33 changed files
with
717 additions
and
71 deletions
+717
-71
soss-admin/src/main/java/com/soss/RuoYiApplication.java
+2
-0
soss-admin/src/main/java/com/soss/web/controller/coffee/AppController.java
+23
-0
soss-admin/src/main/java/com/soss/web/controller/coffee/ApplicationController.java
+1
-1
soss-admin/src/main/java/com/soss/web/controller/coffee/OrderController.java
+16
-2
soss-admin/src/main/java/com/soss/web/controller/coffee/OrderRefundController.java
+15
-4
soss-admin/src/main/java/com/soss/web/controller/coffee/WeixinController.java
+9
-2
soss-admin/src/main/java/com/soss/web/controller/system/SysUserController.java
+0
-2
soss-admin/src/main/resources/application.yml
+4
-0
soss-framework/src/main/java/com/soss/framework/config/SecurityConfig.java
+1
-1
soss-framework/src/main/java/com/soss/framework/web/service/WeixinServiceImpl.java
+20
-9
soss-system/pom.xml
+6
-0
soss-system/src/main/java/com/soss/system/config/WxConfig.java
+40
-0
soss-system/src/main/java/com/soss/system/constants/OrderStatusConstant.java
+47
-0
soss-system/src/main/java/com/soss/system/domain/OrderRefund.java
+10
-0
soss-system/src/main/java/com/soss/system/domain/WechatMessage.java
+3
-3
soss-system/src/main/java/com/soss/system/domain/vo/OrderQuery.java
+73
-0
soss-system/src/main/java/com/soss/system/mapper/OrderMapper.java
+4
-0
soss-system/src/main/java/com/soss/system/mapper/OrderRefundMapper.java
+3
-0
soss-system/src/main/java/com/soss/system/schedule/OrderSchedule.java
+22
-0
soss-system/src/main/java/com/soss/system/service/IOrderOperationLogService.java
+3
-1
soss-system/src/main/java/com/soss/system/service/IOrderRefundService.java
+3
-0
soss-system/src/main/java/com/soss/system/service/IWechatMessageService.java
+8
-0
soss-system/src/main/java/com/soss/system/service/impl/MachineApiServiceImpl.java
+27
-4
soss-system/src/main/java/com/soss/system/service/impl/OrderOperationLogServiceImpl.java
+93
-9
soss-system/src/main/java/com/soss/system/service/impl/OrderRefundServiceImpl.java
+46
-5
soss-system/src/main/java/com/soss/system/service/impl/OrderServiceImpl.java
+72
-13
soss-system/src/main/java/com/soss/system/service/impl/ShopRecommendServiceImpl.java
+1
-1
soss-system/src/main/java/com/soss/system/service/impl/ShopServiceImpl.java
+4
-1
soss-system/src/main/java/com/soss/system/service/impl/SysUserServiceImpl.java
+4
-12
soss-system/src/main/java/com/soss/system/service/impl/WechatMessageServiceImpl.java
+14
-0
soss-system/src/main/java/com/soss/system/weixin/util/SendMessageUtils.java
+84
-0
soss-system/src/main/resources/mapper/system/OrderMapper.xml
+17
-0
soss-system/src/main/resources/mapper/system/OrderRefundMapper.xml
+42
-1
No files found.
soss-admin/src/main/java/com/soss/RuoYiApplication.java
View file @
0a2b2609
...
@@ -4,6 +4,7 @@ import org.springframework.boot.SpringApplication;
...
@@ -4,6 +4,7 @@ import org.springframework.boot.SpringApplication;
import
org.springframework.boot.autoconfigure.SpringBootApplication
;
import
org.springframework.boot.autoconfigure.SpringBootApplication
;
import
org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration
;
import
org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration
;
import
org.springframework.context.annotation.Bean
;
import
org.springframework.context.annotation.Bean
;
import
org.springframework.scheduling.annotation.EnableScheduling
;
import
org.springframework.web.client.RestTemplate
;
import
org.springframework.web.client.RestTemplate
;
/**
/**
...
@@ -12,6 +13,7 @@ import org.springframework.web.client.RestTemplate;
...
@@ -12,6 +13,7 @@ import org.springframework.web.client.RestTemplate;
* @author zxq
* @author zxq
*/
*/
@SpringBootApplication
(
exclude
=
{
DataSourceAutoConfiguration
.
class
})
@SpringBootApplication
(
exclude
=
{
DataSourceAutoConfiguration
.
class
})
@EnableScheduling
//扫描定时器
public
class
RuoYiApplication
public
class
RuoYiApplication
{
{
public
static
void
main
(
String
[]
args
)
public
static
void
main
(
String
[]
args
)
...
...
soss-admin/src/main/java/com/soss/web/controller/coffee/AppController.java
View file @
0a2b2609
package
com
.
soss
.
web
.
controller
.
coffee
;
package
com
.
soss
.
web
.
controller
.
coffee
;
import
com.alibaba.fastjson.JSONObject
;
import
com.soss.common.core.controller.BaseController
;
import
com.soss.common.core.controller.BaseController
;
import
com.soss.common.core.domain.AjaxResult
;
import
com.soss.common.core.domain.AjaxResult
;
import
com.soss.common.core.domain.model.LoginUser
;
import
com.soss.common.core.domain.model.LoginUser
;
...
@@ -7,14 +8,17 @@ import com.soss.common.core.page.TableDataInfo;
...
@@ -7,14 +8,17 @@ import com.soss.common.core.page.TableDataInfo;
import
com.soss.common.exception.ServiceException
;
import
com.soss.common.exception.ServiceException
;
import
com.soss.framework.web.service.TokenService
;
import
com.soss.framework.web.service.TokenService
;
import
com.soss.system.domain.Order
;
import
com.soss.system.domain.Order
;
import
com.soss.system.domain.OrderDetail
;
import
com.soss.system.service.impl.AppServiceImpl
;
import
com.soss.system.service.impl.AppServiceImpl
;
import
com.soss.system.service.impl.OrderServiceImpl
;
import
com.soss.system.service.impl.OrderServiceImpl
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
import
org.springframework.web.bind.annotation.RestController
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletRequest
;
import
java.util.List
;
import
java.util.List
;
import
java.util.Map
;
@RestController
@RestController
@RequestMapping
(
"/app"
)
@RequestMapping
(
"/app"
)
...
@@ -39,6 +43,25 @@ public class AppController extends BaseController {
...
@@ -39,6 +43,25 @@ public class AppController extends BaseController {
List
<
Order
>
myOrder
=
orderService
.
getMyOrder
(
openId
);
List
<
Order
>
myOrder
=
orderService
.
getMyOrder
(
openId
);
return
getDataTable
(
myOrder
);
return
getDataTable
(
myOrder
);
}
}
@RequestMapping
(
"/getHomeOrder"
)
public
AjaxResult
getHomeOrder
(
HttpServletRequest
request
){
LoginUser
loginUser
=
tokenService
.
getLoginUser
(
request
);
if
(
loginUser
==
null
){
return
AjaxResult
.
success
();
}
String
openId
=
loginUser
.
getOpenId
();
Map
<
String
,
String
>
info
=
orderService
.
getMyFristOrder
(
openId
);
return
AjaxResult
.
success
(
"操作成功"
,
info
);
}
@RequestMapping
(
"/getWaitTine"
)
public
AjaxResult
getWaitTime
(
@RequestBody
Order
order
){
String
info
=
orderService
.
getWaitTime
(
order
);
return
AjaxResult
.
success
(
"操作成功"
,
info
);
}
@RequestMapping
(
"/refundOrder"
)
@RequestMapping
(
"/refundOrder"
)
public
AjaxResult
refundOrder
(
String
orderId
){
public
AjaxResult
refundOrder
(
String
orderId
){
return
AjaxResult
.
success
(
orderService
.
refundOrder
(
orderId
));
return
AjaxResult
.
success
(
orderService
.
refundOrder
(
orderId
));
...
...
soss-admin/src/main/java/com/soss/web/controller/coffee/ApplicationController.java
View file @
0a2b2609
...
@@ -37,7 +37,7 @@ public class ApplicationController {
...
@@ -37,7 +37,7 @@ public class ApplicationController {
@RequestMapping
(
"/saveData"
)
@RequestMapping
(
"/saveData"
)
public
AjaxResult
saveApplicationData
(
@RequestParam
(
"machineCode"
)
String
machineCode
,
@RequestBody
String
body
){
public
AjaxResult
saveApplicationData
(
@RequestParam
(
"machineCode"
)
String
machineCode
,
@RequestBody
String
body
){
String
id
=
UUID
.
randomUUID
().
toString
();
String
id
=
UUID
.
randomUUID
().
toString
();
String
key
=
machineCode
+
"_"
+
id
;
String
key
=
machineCode
;
//
+"_"+id;
stringRedisTemplate
.
opsForValue
().
set
(
key
,
body
);
stringRedisTemplate
.
opsForValue
().
set
(
key
,
body
);
stringRedisTemplate
.
expire
(
id
,
1
,
TimeUnit
.
HOURS
);
stringRedisTemplate
.
expire
(
id
,
1
,
TimeUnit
.
HOURS
);
return
AjaxResult
.
success
(
"处理成功"
,
key
);
return
AjaxResult
.
success
(
"处理成功"
,
key
);
...
...
soss-admin/src/main/java/com/soss/web/controller/coffee/OrderController.java
View file @
0a2b2609
...
@@ -57,6 +57,9 @@ public class OrderController extends BaseController
...
@@ -57,6 +57,9 @@ public class OrderController extends BaseController
}
}
/**
/**
* 获取订单详细信息
* 获取订单详细信息
*/
*/
...
@@ -88,14 +91,25 @@ public class OrderController extends BaseController
...
@@ -88,14 +91,25 @@ public class OrderController extends BaseController
return
ajaxResult
;
return
ajaxResult
;
}
}
int
amount
=
order
.
getAmount
().
movePointRight
(
2
).
intValue
();
int
amount
=
order
.
getAmount
().
movePointRight
(
2
).
intValue
();
Map
payInfo
=
weixinService
.
pay
(
request
,
"hooloo"
,
order
.
getOrderNo
(),
order
.
getUserId
(),
1
);
Map
payInfo
=
weixinService
.
pay
(
request
,
"hooloo"
,
order
.
getOrderNo
(),
order
.
getUserId
(),
amount
);
if
(
payInfo
!=
null
){
return
AjaxResult
.
success
(
payInfo
);
}
else
{
throw
new
ServiceException
(
"微信支付发生异常"
);
}
}
@RequestMapping
(
"/payOrder"
)
public
AjaxResult
cancel
(
HttpServletRequest
request
,
String
orderId
)
{
Order
order
=
orderService
.
selectOrderById
(
orderId
);
int
amount
=
order
.
getAmount
().
movePointRight
(
2
).
intValue
();
Map
payInfo
=
weixinService
.
pay
(
request
,
"hooloo"
,
order
.
getOrderNo
(),
order
.
getUserId
(),
amount
);
if
(
payInfo
!=
null
){
if
(
payInfo
!=
null
){
return
AjaxResult
.
success
(
payInfo
);
return
AjaxResult
.
success
(
payInfo
);
}
else
{
}
else
{
throw
new
ServiceException
(
"微信支付发生异常"
);
throw
new
ServiceException
(
"微信支付发生异常"
);
}
}
}
}
/**
/**
...
...
soss-admin/src/main/java/com/soss/web/controller/coffee/OrderRefundController.java
View file @
0a2b2609
...
@@ -2,7 +2,11 @@ package com.soss.web.controller.coffee;
...
@@ -2,7 +2,11 @@ package com.soss.web.controller.coffee;
import
java.util.List
;
import
java.util.List
;
import
com.soss.common.core.domain.model.LoginUser
;
import
com.soss.framework.web.service.TokenService
;
import
com.soss.framework.web.service.WeixinServiceImpl
;
import
com.soss.framework.web.service.WeixinServiceImpl
;
import
com.soss.system.domain.vo.OrderQuery
;
import
org.checkerframework.checker.units.qual.A
;
import
org.springframework.security.access.prepost.PreAuthorize
;
import
org.springframework.security.access.prepost.PreAuthorize
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.GetMapping
;
import
org.springframework.web.bind.annotation.GetMapping
;
...
@@ -19,6 +23,8 @@ import com.soss.system.domain.OrderRefund;
...
@@ -19,6 +23,8 @@ import com.soss.system.domain.OrderRefund;
import
com.soss.system.service.IOrderRefundService
;
import
com.soss.system.service.IOrderRefundService
;
import
com.soss.common.core.page.TableDataInfo
;
import
com.soss.common.core.page.TableDataInfo
;
import
javax.servlet.http.HttpServletRequest
;
/**
/**
* 订单退款Controller
* 订单退款Controller
*
*
...
@@ -33,16 +39,18 @@ public class OrderRefundController extends BaseController
...
@@ -33,16 +39,18 @@ public class OrderRefundController extends BaseController
private
IOrderRefundService
orderRefundService
;
private
IOrderRefundService
orderRefundService
;
@Autowired
@Autowired
private
WeixinServiceImpl
weixinService
;
private
WeixinServiceImpl
weixinService
;
@Autowired
private
TokenService
tokenService
;
/**
/**
* 查询订单退款列表
* 查询订单退款列表
*/
*/
@PreAuthorize
(
"@ss.hasPermi('system:refund:list')"
)
@PreAuthorize
(
"@ss.hasPermi('system:refund:list')"
)
@GetMapping
(
"/list"
)
@GetMapping
(
"/list"
)
public
TableDataInfo
list
(
Order
Refund
orderRefund
)
public
TableDataInfo
list
(
Order
Query
orderQuery
)
{
{
startPage
();
startPage
();
List
<
OrderRefund
>
list
=
orderRefundService
.
selectOrderRefundList
(
order
Refund
);
List
<
OrderRefund
>
list
=
orderRefundService
.
selectOrderRefundList
(
order
Query
);
return
getDataTable
(
list
);
return
getDataTable
(
list
);
}
}
...
@@ -61,16 +69,19 @@ public class OrderRefundController extends BaseController
...
@@ -61,16 +69,19 @@ public class OrderRefundController extends BaseController
*/
*/
@Log
(
title
=
"订单退款"
,
businessType
=
BusinessType
.
INSERT
)
@Log
(
title
=
"订单退款"
,
businessType
=
BusinessType
.
INSERT
)
@PostMapping
@PostMapping
public
AjaxResult
add
(
@RequestBody
OrderRefund
orderRefund
)
public
AjaxResult
add
(
HttpServletRequest
request
,
@RequestBody
OrderRefund
orderRefund
)
{
{
LoginUser
loginUser
=
tokenService
.
getLoginUser
(
request
);
orderRefund
.
setCreateUserName
(
loginUser
.
getUsername
());
AjaxResult
ajaxResult
=
orderRefundService
.
insertOrderRefund
(
orderRefund
);
AjaxResult
ajaxResult
=
orderRefundService
.
insertOrderRefund
(
orderRefund
);
Object
obejct
=
ajaxResult
.
get
(
AjaxResult
.
DATA_TAG
);
Object
obejct
=
ajaxResult
.
get
(
AjaxResult
.
DATA_TAG
);
if
(
obejct
!=
null
&&
obejct
instanceof
OrderRefund
){
if
(
obejct
!=
null
&&
obejct
instanceof
OrderRefund
){
OrderRefund
orderRefund1
=
(
OrderRefund
)
obejct
;
OrderRefund
orderRefund1
=
(
OrderRefund
)
obejct
;
if
(
"0"
.
equals
(
orderRefund1
.
getState
())){
if
(
"0"
.
equals
(
orderRefund1
.
getState
())){
int
totalFee
=
orderRefund1
.
getTotalFee
().
movePointRight
(
2
).
intValue
();
int
totalFee
=
orderRefund1
.
getTotalFee
().
movePointRight
(
2
).
intValue
();
int
refundAmount
=
orderRefund1
.
getRefundAmount
().
movePointRight
(
2
).
intValue
();
int
refundAmount
=
orderRefund1
.
getRefundAmount
().
movePointRight
(
2
).
intValue
();
weixinService
.
refund
(
orderRefund1
.
getOrderNo
(),
orderRefund1
.
getRefundNo
(),
1
,
1
);
weixinService
.
refund
(
orderRefund1
.
getOrderNo
(),
orderRefund1
.
getRefundNo
(),
totalFee
,
refundAmount
);
orderRefund1
.
setState
(
"1"
);
orderRefund1
.
setState
(
"1"
);
orderRefundService
.
updateOrderRefund
(
orderRefund1
);
orderRefundService
.
updateOrderRefund
(
orderRefund1
);
}
}
...
...
soss-admin/src/main/java/com/soss/web/controller/coffee/WeixinController.java
View file @
0a2b2609
...
@@ -7,7 +7,9 @@ import com.soss.framework.web.service.WeixinServiceImpl;
...
@@ -7,7 +7,9 @@ import com.soss.framework.web.service.WeixinServiceImpl;
import
com.soss.system.domain.Order
;
import
com.soss.system.domain.Order
;
import
com.soss.system.mapper.OrderMapper
;
import
com.soss.system.mapper.OrderMapper
;
import
com.soss.system.service.impl.AppServiceImpl
;
import
com.soss.system.service.impl.AppServiceImpl
;
import
com.soss.system.service.impl.OrderServiceImpl
;
import
com.soss.system.service.impl.OrderTakingServiceImpl
;
import
com.soss.system.service.impl.OrderTakingServiceImpl
;
import
com.soss.system.weixin.util.SendMessageUtils
;
import
lombok.extern.slf4j.Slf4j
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.*
;
import
org.springframework.web.bind.annotation.*
;
...
@@ -29,6 +31,8 @@ public class WeixinController {
...
@@ -29,6 +31,8 @@ public class WeixinController {
private
OrderTakingServiceImpl
orderTakingService
;
private
OrderTakingServiceImpl
orderTakingService
;
@Autowired
@Autowired
private
OrderMapper
orderMapper
;
private
OrderMapper
orderMapper
;
@Autowired
private
OrderServiceImpl
orderService
;
//这个就是那个使用传code进来的接口
//这个就是那个使用传code进来的接口
@PostMapping
(
"/login"
)
@PostMapping
(
"/login"
)
...
@@ -42,6 +46,7 @@ public class WeixinController {
...
@@ -42,6 +46,7 @@ public class WeixinController {
Map
<
String
,
String
>
map
=
weixinService
.
login
(
code
,
encryptedData
,
iv
,
source
);
Map
<
String
,
String
>
map
=
weixinService
.
login
(
code
,
encryptedData
,
iv
,
source
);
ajax
.
put
(
Constants
.
TOKEN
,
map
.
get
(
"token"
));
ajax
.
put
(
Constants
.
TOKEN
,
map
.
get
(
"token"
));
ajax
.
put
(
"phoneNumber"
,
map
.
get
(
"phoneNumber"
));
ajax
.
put
(
"phoneNumber"
,
map
.
get
(
"phoneNumber"
));
ajax
.
put
(
"customerName"
,
map
.
get
(
"customerName"
));
return
ajax
;
return
ajax
;
}
}
@PostMapping
(
"/refreshToken"
)
@PostMapping
(
"/refreshToken"
)
...
@@ -67,10 +72,12 @@ public class WeixinController {
...
@@ -67,10 +72,12 @@ public class WeixinController {
return
weixinService
.
wxNotify
(
request
);
return
weixinService
.
wxNotify
(
request
);
}
}
@Autowired
private
SendMessageUtils
sendMessageUtils
;
@RequestMapping
(
"/test"
)
@RequestMapping
(
"/test"
)
public
Map
<
String
,
String
>
test
(
HttpServletRequest
request
)
throws
Exception
{
public
Map
<
String
,
String
>
test
(
HttpServletRequest
request
)
throws
Exception
{
Order
order
=
order
Mapper
.
selectOrderById
(
"8
"
);
Order
order
=
order
Service
.
selectOrderById
(
"59
"
);
int
amount
=
order
.
getAmount
().
movePointRight
(
2
).
intValue
(
);
sendMessageUtils
.
sendWxMsg
(
order
);
return
null
;
return
null
;
}
}
...
...
soss-admin/src/main/java/com/soss/web/controller/system/SysUserController.java
View file @
0a2b2609
...
@@ -70,12 +70,10 @@ public class SysUserController extends BaseController
...
@@ -70,12 +70,10 @@ public class SysUserController extends BaseController
AjaxResult
ajax
=
AjaxResult
.
success
();
AjaxResult
ajax
=
AjaxResult
.
success
();
List
<
SysRole
>
roles
=
roleService
.
selectRoleAll
();
List
<
SysRole
>
roles
=
roleService
.
selectRoleAll
();
ajax
.
put
(
"roles"
,
SysUser
.
isAdmin
(
userId
)
?
roles
:
roles
.
stream
().
filter
(
r
->
!
r
.
isAdmin
()).
collect
(
Collectors
.
toList
()));
ajax
.
put
(
"roles"
,
SysUser
.
isAdmin
(
userId
)
?
roles
:
roles
.
stream
().
filter
(
r
->
!
r
.
isAdmin
()).
collect
(
Collectors
.
toList
()));
ajax
.
put
(
"posts"
,
postService
.
selectPostAll
());
if
(
StringUtils
.
isNotNull
(
userId
))
if
(
StringUtils
.
isNotNull
(
userId
))
{
{
SysUser
sysUser
=
userService
.
selectUserById
(
userId
);
SysUser
sysUser
=
userService
.
selectUserById
(
userId
);
ajax
.
put
(
AjaxResult
.
DATA_TAG
,
sysUser
);
ajax
.
put
(
AjaxResult
.
DATA_TAG
,
sysUser
);
ajax
.
put
(
"postIds"
,
postService
.
selectPostListByUserId
(
userId
));
ajax
.
put
(
"roleIds"
,
sysUser
.
getRoles
().
stream
().
map
(
SysRole:
:
getRoleId
).
collect
(
Collectors
.
toList
()));
ajax
.
put
(
"roleIds"
,
sysUser
.
getRoles
().
stream
().
map
(
SysRole:
:
getRoleId
).
collect
(
Collectors
.
toList
()));
}
}
return
ajax
;
return
ajax
;
...
...
soss-admin/src/main/resources/application.yml
View file @
0a2b2609
...
@@ -88,6 +88,8 @@ weixin:
...
@@ -88,6 +88,8 @@ weixin:
query-url
:
https://api.mch.weixin.qq.com/pay/orderquery
query-url
:
https://api.mch.weixin.qq.com/pay/orderquery
cert-path
:
classpath:apiclient_cert.p12
cert-path
:
classpath:apiclient_cert.p12
refund-url
:
https://hooloo-api.gdatac.com/weixin/refundNotify
refund-url
:
https://hooloo-api.gdatac.com/weixin/refundNotify
templateId
:
Fu_CPIXa0cnJ4EDdVKqFQ4T3qTxBqv8vXMU7-sQgerg
pagePath
:
/cs
#mqtt:
#mqtt:
# url: tcp://iot-06z00dhgql5j8bw.mqtt.iothub.aliyuncs.com:1883
# url: tcp://iot-06z00dhgql5j8bw.mqtt.iothub.aliyuncs.com:1883
# clientId: h5kgirX6kNQ.XQ_000001A|securemode=2,signmethod=hmacsha256,timestamp=1651746531320|
# clientId: h5kgirX6kNQ.XQ_000001A|securemode=2,signmethod=hmacsha256,timestamp=1651746531320|
...
@@ -109,3 +111,4 @@ machine:
...
@@ -109,3 +111,4 @@ machine:
url
:
http://47.94.241.71:10003
url
:
http://47.94.241.71:10003
json
:
json
:
path
:
D:\workspecs\soss\soss\soss-admin\src\main\resources/province.json
path
:
D:\workspecs\soss\soss\soss-admin\src\main\resources/province.json
timeout
:
10
\ No newline at end of file
soss-framework/src/main/java/com/soss/framework/config/SecurityConfig.java
View file @
0a2b2609
...
@@ -101,7 +101,7 @@ public class SecurityConfig extends WebSecurityConfigurerAdapter
...
@@ -101,7 +101,7 @@ public class SecurityConfig extends WebSecurityConfigurerAdapter
// 过滤请求
// 过滤请求
.
authorizeRequests
()
.
authorizeRequests
()
// 对于登录login 注册register 验证码captchaImage 允许匿名访问
// 对于登录login 注册register 验证码captchaImage 允许匿名访问
.
antMatchers
(
"/login"
,
"/register"
,
"/captchaImage"
,
"/weixin/**"
,
"/application/**"
,
"/v1/**"
,
"/tool/**"
).
anonymous
()
.
antMatchers
(
"/login"
,
"/register"
,
"/captchaImage"
,
"/weixin/**"
,
"/application/**"
,
"/v1/**"
,
"/tool/**"
).
permitAll
()
.
antMatchers
(
.
antMatchers
(
HttpMethod
.
GET
,
HttpMethod
.
GET
,
"/"
,
"/"
,
...
...
soss-framework/src/main/java/com/soss/framework/web/service/WeixinServiceImpl.java
View file @
0a2b2609
...
@@ -23,6 +23,7 @@ import com.soss.common.utils.QRCodeUtil;
...
@@ -23,6 +23,7 @@ import com.soss.common.utils.QRCodeUtil;
import
com.soss.common.utils.StringUtils
;
import
com.soss.common.utils.StringUtils
;
import
com.soss.common.utils.ip.IpUtils
;
import
com.soss.common.utils.ip.IpUtils
;
import
com.soss.common.utils.sign.Base64
;
import
com.soss.common.utils.sign.Base64
;
import
com.soss.system.constants.OrderStatusConstant
;
import
com.soss.system.domain.*
;
import
com.soss.system.domain.*
;
import
com.soss.system.jiguang.impl.JiGuangPushServiceImpl
;
import
com.soss.system.jiguang.impl.JiGuangPushServiceImpl
;
import
com.soss.system.mapper.CustomerMapper
;
import
com.soss.system.mapper.CustomerMapper
;
...
@@ -30,6 +31,7 @@ import com.soss.system.mapper.CustomerMapper;
...
@@ -30,6 +31,7 @@ import com.soss.system.mapper.CustomerMapper;
import
com.soss.system.mapper.OrderMapper
;
import
com.soss.system.mapper.OrderMapper
;
import
com.soss.system.mapper.OrderRefundMapper
;
import
com.soss.system.mapper.OrderRefundMapper
;
import
com.soss.system.mapper.ShopMapper
;
import
com.soss.system.mapper.ShopMapper
;
import
com.soss.system.service.IWechatMessageService
;
import
com.soss.system.service.impl.MachineApiServiceImpl
;
import
com.soss.system.service.impl.MachineApiServiceImpl
;
import
com.soss.system.service.impl.OrderOperationLogServiceImpl
;
import
com.soss.system.service.impl.OrderOperationLogServiceImpl
;
import
com.soss.system.weixin.entity.OrderInfo
;
import
com.soss.system.weixin.entity.OrderInfo
;
...
@@ -37,6 +39,7 @@ import com.soss.system.weixin.entity.OrderInfo;
...
@@ -37,6 +39,7 @@ import com.soss.system.weixin.entity.OrderInfo;
import
com.soss.system.weixin.entity.QueryReturnInfo
;
import
com.soss.system.weixin.entity.QueryReturnInfo
;
import
com.soss.system.weixin.util.RandomStringGenerator
;
import
com.soss.system.weixin.util.RandomStringGenerator
;
import
com.soss.system.weixin.util.SendMessageUtils
;
import
com.soss.system.weixin.util.Signature
;
import
com.soss.system.weixin.util.Signature
;
import
com.thoughtworks.xstream.XStream
;
import
com.thoughtworks.xstream.XStream
;
...
@@ -122,6 +125,11 @@ public class WeixinServiceImpl {
...
@@ -122,6 +125,11 @@ public class WeixinServiceImpl {
private
String
areaData
;
private
String
areaData
;
@Value
(
"${json.path}"
)
@Value
(
"${json.path}"
)
private
String
jsonPath
;
private
String
jsonPath
;
@Autowired
private
IWechatMessageService
wechatMessageService
;
@Autowired
private
SendMessageUtils
sendMessageUtils
;
public
String
getSessionKeyOrOpenId
(
String
code
)
{
public
String
getSessionKeyOrOpenId
(
String
code
)
{
String
url
=
"https://api.weixin.qq.com/sns/jscode2session?appid={0}&secret={1}&js_code={2}&grant_type=authorization_code"
;
String
url
=
"https://api.weixin.qq.com/sns/jscode2session?appid={0}&secret={1}&js_code={2}&grant_type=authorization_code"
;
...
@@ -162,7 +170,7 @@ public class WeixinServiceImpl {
...
@@ -162,7 +170,7 @@ public class WeixinServiceImpl {
customer
=
new
Customer
();
customer
=
new
Customer
();
customer
.
setId
(
cutomerId
);
customer
.
setId
(
cutomerId
);
customer
.
setHeadSculpturePath
(
encDataInf
.
getString
(
"avatarUrl"
));
customer
.
setHeadSculpturePath
(
encDataInf
.
getString
(
"avatarUrl"
));
customer
.
setUserName
(
"小呼噜"
+
customer
.
getPhone
().
substring
(
customer
.
getPhone
(
).
length
()-
4
));
customer
.
setUserName
(
"小呼噜"
+
encDataInf
.
getString
(
"phoneNumber"
).
substring
(
encDataInf
.
getString
(
"phoneNumber"
).
length
()-
4
));
customer
.
setPhone
(
encDataInf
.
getString
(
"phoneNumber"
));
customer
.
setPhone
(
encDataInf
.
getString
(
"phoneNumber"
));
customer
.
setCreateTime
(
new
Date
());
customer
.
setCreateTime
(
new
Date
());
if
(
StringUtils
.
isNotEmpty
(
source
)){
if
(
StringUtils
.
isNotEmpty
(
source
)){
...
@@ -175,6 +183,7 @@ public class WeixinServiceImpl {
...
@@ -175,6 +183,7 @@ public class WeixinServiceImpl {
Map
map
=
new
HashMap
();
Map
map
=
new
HashMap
();
map
.
put
(
"token"
,
token
);
map
.
put
(
"token"
,
token
);
map
.
put
(
"phoneNumber"
,
encDataInf
.
getString
(
"phoneNumber"
));
map
.
put
(
"phoneNumber"
,
encDataInf
.
getString
(
"phoneNumber"
));
map
.
put
(
"customerName"
,
customer
.
getUserName
());
return
map
;
return
map
;
}
catch
(
Exception
e
){
}
catch
(
Exception
e
){
log
.
error
(
"微信登录发生异常"
,
e
);
log
.
error
(
"微信登录发生异常"
,
e
);
...
@@ -449,14 +458,14 @@ public class WeixinServiceImpl {
...
@@ -449,14 +458,14 @@ public class WeixinServiceImpl {
stringRedisTemplate
.
opsForValue
().
set
(
uid
,
String
.
valueOf
(
order
.
getId
()));
stringRedisTemplate
.
opsForValue
().
set
(
uid
,
String
.
valueOf
(
order
.
getId
()));
stringRedisTemplate
.
expire
(
uid
,
1
,
TimeUnit
.
DAYS
);
stringRedisTemplate
.
expire
(
uid
,
1
,
TimeUnit
.
DAYS
);
jsonObject
.
put
(
"secret"
,
uid
);
jsonObject
.
put
(
"secret"
,
uid
);
order
.
setPickCode
(
jsonObject
.
toJSONString
());
order
.
setPickCode
(
jsonObject
.
toJSONString
());
orderMapper
.
updateOrder
(
order
);
orderMapper
.
updateOrder
(
order
);
orderOperationLogService
.
insertOrderOperationLog
(
order
);
orderOperationLogService
.
insertOrderOperationLog
(
"已付款"
,
order
.
getId
(),
"付款成功"
,
order
.
getUserName
(),
"付款"
);
machineApiService
.
updateOrder
(
order
);
machineApiService
.
updateOrder
(
order
);
//极光推送
//极光推送
jiGuangPushService
.
pushOrderState
(
order
);
jiGuangPushService
.
pushOrderState
(
order
);
wechatMessageService
.
insertWechatMessage
(
order
.
getUserId
(),
"下单成功,您已经下单成功了~"
);
sendMessageUtils
.
sendWxMsg
(
order
);
}
}
}
finally
{
}
finally
{
//要主动释放锁
//要主动释放锁
...
@@ -524,15 +533,17 @@ public class WeixinServiceImpl {
...
@@ -524,15 +533,17 @@ public class WeixinServiceImpl {
orderRefund1
.
setState
(
"2"
);
orderRefund1
.
setState
(
"2"
);
orderRefundMapper
.
updateOrderRefund
(
orderRefund1
);
orderRefundMapper
.
updateOrderRefund
(
orderRefund1
);
OrderOperationLog
orderOperationLog
=
new
OrderOperationLog
();
OrderOperationLog
orderOperationLog
=
new
OrderOperationLog
();
orderOperationLog
.
setOrderId
(
String
.
valueOf
(
orderRefund1
.
getOrderId
()
));
orderOperationLog
.
setOrderId
(
orderRefund1
.
getOrderId
(
));
order
.
setState
(
"11"
);
order
.
setState
(
OrderStatusConstant
.
refund
);
if
(
orderRefund1
.
getRefundAmount
().
compareTo
(
order
.
getAmount
())<
0
){
if
(
orderRefund1
.
getRefundAmount
().
compareTo
(
order
.
getAmount
())<
0
){
order
.
setState
(
"12"
);
order
.
setState
(
OrderStatusConstant
.
PartialRefund
);
}
}
orderRefund1
.
setOrder
(
order
);
orderMapper
.
updateOrder
(
order
);
orderMapper
.
updateOrder
(
order
);
orderOperationLogService
.
insertOrderOperationLog
(
"已退款"
,
Long
.
valueOf
(
orderRefund
.
getOrderId
()),
"用户退款成功,已到账"
,
"系统"
,
"退款"
);
machineApiService
.
updateOrder
(
order
);
machineApiService
.
updateOrder
(
order
);
jiGuangPushService
.
pushOrderState
(
order
);
jiGuangPushService
.
pushOrderState
(
order
);
orderOperationLogService
.
insertOrderOperationLog
(
orderRefund1
);
return
WxPayNotifyResponse
.
success
(
"退款成功!"
);
return
WxPayNotifyResponse
.
success
(
"退款成功!"
);
}
}
...
@@ -667,7 +678,7 @@ public class WeixinServiceImpl {
...
@@ -667,7 +678,7 @@ public class WeixinServiceImpl {
List
<
Customer
>
customers
=
customerMapper
.
selectCustomerList
(
customer
);
List
<
Customer
>
customers
=
customerMapper
.
selectCustomerList
(
customer
);
if
(
customers
!=
null
&&!
customers
.
isEmpty
()){
if
(
customers
!=
null
&&!
customers
.
isEmpty
()){
Customer
customer1
=
customers
.
get
(
0
);
Customer
customer1
=
customers
.
get
(
0
);
return
tokenService
.
createToken
(
transLoginUser
(
customer
));
return
tokenService
.
createToken
(
transLoginUser
(
customer
1
));
}
}
throw
new
ServiceException
(
"该用户没有注册,请先注册"
);
throw
new
ServiceException
(
"该用户没有注册,请先注册"
);
...
...
soss-system/pom.xml
View file @
0a2b2609
...
@@ -86,6 +86,12 @@
...
@@ -86,6 +86,12 @@
<artifactId>
weixin-java-pay
</artifactId>
<artifactId>
weixin-java-pay
</artifactId>
<version>
4.1.0
</version>
<version>
4.1.0
</version>
</dependency>
</dependency>
<dependency>
<groupId>
com.github.binarywang
</groupId>
<artifactId>
weixin-java-miniapp
</artifactId>
<version>
4.1.0
</version>
</dependency>
...
...
soss-system/src/main/java/com/soss/system/config/WxConfig.java
0 → 100644
View file @
0a2b2609
package
com
.
soss
.
system
.
config
;
import
cn.binarywang.wx.miniapp.api.WxMaService
;
import
cn.binarywang.wx.miniapp.api.impl.WxMaServiceImpl
;
import
cn.binarywang.wx.miniapp.config.impl.WxMaDefaultConfigImpl
;
import
lombok.AllArgsConstructor
;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.context.annotation.Bean
;
import
org.springframework.context.annotation.Configuration
;
@Configuration
@AllArgsConstructor
public
class
WxConfig
{
@Value
(
"${weixin.appid}"
)
private
String
appid
;
@Value
(
"${weixin.secret}"
)
private
String
secret
;
public
WxConfig
(){
}
/**
* 小程序service配置
*/
@Bean
public
WxMaService
wxMaService
()
{
WxMaDefaultConfigImpl
wxMaConfig
=
new
WxMaDefaultConfigImpl
();
wxMaConfig
.
setAppid
(
appid
);
wxMaConfig
.
setSecret
(
secret
);
WxMaService
wxMaService
=
new
WxMaServiceImpl
();
wxMaService
.
setWxMaConfig
(
wxMaConfig
);
return
wxMaService
;
}
}
soss-system/src/main/java/com/soss/system/constants/OrderStatusConstant.java
0 → 100644
View file @
0a2b2609
package
com
.
soss
.
system
.
constants
;
public
class
OrderStatusConstant
{
/**
* 0 创建未校验
* 1 未支付 给机器
* 2 已支付 给机器,安卓
* 3 支付制作中 机器给我们 我们给安卓
* 4 制作完成未取 机器给我们,我们给安卓
* 5 取餐中 机器给我们
* 6 正常完成 机器给我们 我们给安卓
* 7 待取超时 我们定时器生成,我们给机器
* 8 未支付取消 给机器,安卓
* 9 支付后制作前取消 给机器,安卓
* 10 制作中取消 给机器,安卓
* 11 制作完成取消 给机器,安卓
* 12 退款中
* 13 退款失败 给机器,安卓
* 14 部分退款 给机器,安卓
* 15 已退款 给机器,安卓
* 50 其他人工干预状态
*/
public
final
static
String
Unpaid
=
"1"
;
public
final
static
String
Paid
=
"2"
;
public
final
static
String
production
=
"3"
;
public
final
static
String
productionCompleted
=
"4"
;
public
final
static
String
Taking
=
"5"
;
public
final
static
String
completed
=
"6"
;
public
final
static
String
timeout
=
"7"
;
public
final
static
String
UnpaidCancel
=
"8"
;
public
final
static
String
PaidCancel
=
"9"
;
public
final
static
String
productionCancel
=
"10"
;
public
final
static
String
productionCompletedCancel
=
"11"
;
public
final
static
String
refunding
=
"12"
;
public
final
static
String
refundFailed
=
"13"
;
public
final
static
String
PartialRefund
=
"14"
;
public
final
static
String
refund
=
"15"
;
public
final
static
String
artificial
=
"50"
;
}
soss-system/src/main/java/com/soss/system/domain/OrderRefund.java
View file @
0a2b2609
...
@@ -42,6 +42,16 @@ public class OrderRefund extends BaseEntity
...
@@ -42,6 +42,16 @@ public class OrderRefund extends BaseEntity
@Excel
(
name
=
"创建时间"
,
width
=
30
,
dateFormat
=
"yyyy-MM-dd"
)
@Excel
(
name
=
"创建时间"
,
width
=
30
,
dateFormat
=
"yyyy-MM-dd"
)
private
Date
createdAt
;
private
Date
createdAt
;
private
String
createUserName
;
public
String
getCreateUserName
()
{
return
createUserName
;
}
public
void
setCreateUserName
(
String
createUserName
)
{
this
.
createUserName
=
createUserName
;
}
/** 更新时间 */
/** 更新时间 */
@JsonFormat
(
pattern
=
"yyyy-MM-dd"
)
@JsonFormat
(
pattern
=
"yyyy-MM-dd"
)
@Excel
(
name
=
"更新时间"
,
width
=
30
,
dateFormat
=
"yyyy-MM-dd"
)
@Excel
(
name
=
"更新时间"
,
width
=
30
,
dateFormat
=
"yyyy-MM-dd"
)
...
...
soss-system/src/main/java/com/soss/system/domain/WechatMessage.java
View file @
0a2b2609
...
@@ -22,7 +22,7 @@ public class WechatMessage extends BaseEntity
...
@@ -22,7 +22,7 @@ public class WechatMessage extends BaseEntity
/** 用户ID */
/** 用户ID */
@Excel
(
name
=
"用户ID"
)
@Excel
(
name
=
"用户ID"
)
private
Lo
ng
userId
;
private
Stri
ng
userId
;
/** 推送ID */
/** 推送ID */
@Excel
(
name
=
"推送ID"
)
@Excel
(
name
=
"推送ID"
)
...
@@ -71,12 +71,12 @@ public class WechatMessage extends BaseEntity
...
@@ -71,12 +71,12 @@ public class WechatMessage extends BaseEntity
{
{
return
id
;
return
id
;
}
}
public
void
setUserId
(
Long
userId
)
public
void
setUserId
(
String
userId
)
{
{
this
.
userId
=
userId
;
this
.
userId
=
userId
;
}
}
public
Long
getUserId
()
public
String
getUserId
()
{
{
return
userId
;
return
userId
;
}
}
...
...
soss-system/src/main/java/com/soss/system/domain/vo/OrderQuery.java
View file @
0a2b2609
...
@@ -10,6 +10,79 @@ public class OrderQuery extends BaseEntity {
...
@@ -10,6 +10,79 @@ public class OrderQuery extends BaseEntity {
private
String
orderNo
;
private
String
orderNo
;
//顺序号
//顺序号
private
String
orderNum
;
private
String
orderNum
;
public
String
getOrderNo
()
{
return
orderNo
;
}
public
void
setOrderNo
(
String
orderNo
)
{
this
.
orderNo
=
orderNo
;
}
public
String
getOrderNum
()
{
return
orderNum
;
}
public
void
setOrderNum
(
String
orderNum
)
{
this
.
orderNum
=
orderNum
;
}
public
String
getUserName
()
{
return
userName
;
}
public
void
setUserName
(
String
userName
)
{
this
.
userName
=
userName
;
}
public
Long
getShopId
()
{
return
shopId
;
}
public
void
setShopId
(
Long
shopId
)
{
this
.
shopId
=
shopId
;
}
public
Date
getCreateAtStart
()
{
return
createAtStart
;
}
public
void
setCreateAtStart
(
Date
createAtStart
)
{
this
.
createAtStart
=
createAtStart
;
}
public
Date
getCreateAtEnd
()
{
return
createAtEnd
;
}
public
void
setCreateAtEnd
(
Date
createAtEnd
)
{
this
.
createAtEnd
=
createAtEnd
;
}
public
Date
getPayAtStart
()
{
return
payAtStart
;
}
public
void
setPayAtStart
(
Date
payAtStart
)
{
this
.
payAtStart
=
payAtStart
;
}
public
Date
getPayAtEnd
()
{
return
payAtEnd
;
}
public
void
setPayAtEnd
(
Date
payAtEnd
)
{
this
.
payAtEnd
=
payAtEnd
;
}
public
String
getState
()
{
return
state
;
}
public
void
setState
(
String
state
)
{
this
.
state
=
state
;
}
//用户昵称
//用户昵称
private
String
userName
;
private
String
userName
;
...
...
soss-system/src/main/java/com/soss/system/mapper/OrderMapper.java
View file @
0a2b2609
...
@@ -71,4 +71,8 @@ public interface OrderMapper
...
@@ -71,4 +71,8 @@ public interface OrderMapper
List
<
Order
>
selectOrderByQuery
(
OrderQuery
order
);
List
<
Order
>
selectOrderByQuery
(
OrderQuery
order
);
List
<
Order
>
selectOrder
(
@Param
(
"status"
)
List
<
String
>
status
,
@Param
(
"machineId"
)
String
machineCode
);
List
<
Order
>
selectOrder
(
@Param
(
"status"
)
List
<
String
>
status
,
@Param
(
"machineId"
)
String
machineCode
);
Order
selectHomeByUserId
(
@Param
(
"userId"
)
String
openId
,
@Param
(
"status"
)
List
<
String
>
status
);
void
updateTimeOut
(
@Param
(
"status"
)
String
productionCompleted
,
@Param
(
"timeout"
)
String
timeout
);
}
}
soss-system/src/main/java/com/soss/system/mapper/OrderRefundMapper.java
View file @
0a2b2609
...
@@ -2,6 +2,7 @@ package com.soss.system.mapper;
...
@@ -2,6 +2,7 @@ package com.soss.system.mapper;
import
java.util.List
;
import
java.util.List
;
import
com.soss.system.domain.OrderRefund
;
import
com.soss.system.domain.OrderRefund
;
import
com.soss.system.domain.vo.OrderQuery
;
/**
/**
* 订单退款Mapper接口
* 订单退款Mapper接口
...
@@ -58,4 +59,6 @@ public interface OrderRefundMapper
...
@@ -58,4 +59,6 @@ public interface OrderRefundMapper
* @return 结果
* @return 结果
*/
*/
public
int
deleteOrderRefundByIds
(
String
[]
ids
);
public
int
deleteOrderRefundByIds
(
String
[]
ids
);
List
<
OrderRefund
>
selectList
(
OrderQuery
orderQuery
);
}
}
soss-system/src/main/java/com/soss/system/schedule/OrderSchedule.java
0 → 100644
View file @
0a2b2609
package
com
.
soss
.
system
.
schedule
;
import
com.soss.system.constants.OrderStatusConstant
;
import
com.soss.system.domain.Order
;
import
com.soss.system.mapper.OrderMapper
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.scheduling.annotation.Scheduled
;
import
org.springframework.stereotype.Component
;
@Component
public
class
OrderSchedule
{
@Autowired
private
OrderMapper
orderMapper
;
@Value
(
"${timeout}"
)
private
String
timeout
;
@Scheduled
(
fixedDelay
=
60
*
1000
)
private
void
process
()
{
orderMapper
.
updateTimeOut
(
OrderStatusConstant
.
productionCompleted
,
timeout
);
}
}
soss-system/src/main/java/com/soss/system/service/IOrderOperationLogService.java
View file @
0a2b2609
package
com
.
soss
.
system
.
service
;
package
com
.
soss
.
system
.
service
;
import
java.util.List
;
import
java.util.List
;
import
com.soss.system.domain.Order
;
import
com.soss.system.domain.OrderOperationLog
;
import
com.soss.system.domain.OrderOperationLog
;
/**
/**
...
@@ -33,7 +35,7 @@ public interface IOrderOperationLogService
...
@@ -33,7 +35,7 @@ public interface IOrderOperationLogService
* @param 【请填写功能名称】
* @param 【请填写功能名称】
* @return 结果
* @return 结果
*/
*/
int
insertOrderOperationLog
(
String
status
,
Long
orderId
,
String
content
,
String
operationUser
,
String
operation
);
int
insertOrderOperationLog
(
Order
order
);
/**
/**
* 修改【请填写功能名称】
* 修改【请填写功能名称】
...
...
soss-system/src/main/java/com/soss/system/service/IOrderRefundService.java
View file @
0a2b2609
...
@@ -4,6 +4,7 @@ import java.util.List;
...
@@ -4,6 +4,7 @@ import java.util.List;
import
com.soss.common.core.domain.AjaxResult
;
import
com.soss.common.core.domain.AjaxResult
;
import
com.soss.system.domain.OrderRefund
;
import
com.soss.system.domain.OrderRefund
;
import
com.soss.system.domain.vo.OrderQuery
;
/**
/**
* 订单退款Service接口
* 订单退款Service接口
...
@@ -62,4 +63,6 @@ public interface IOrderRefundService
...
@@ -62,4 +63,6 @@ public interface IOrderRefundService
public
int
deleteOrderRefundById
(
String
id
);
public
int
deleteOrderRefundById
(
String
id
);
OrderRefund
getOrderRefund
(
String
id
);
OrderRefund
getOrderRefund
(
String
id
);
List
<
OrderRefund
>
selectOrderRefundList
(
OrderQuery
orderQuery
);
}
}
soss-system/src/main/java/com/soss/system/service/IWechatMessageService.java
View file @
0a2b2609
...
@@ -36,6 +36,14 @@ public interface IWechatMessageService
...
@@ -36,6 +36,14 @@ public interface IWechatMessageService
public
int
insertWechatMessage
(
WechatMessage
wechatMessage
);
public
int
insertWechatMessage
(
WechatMessage
wechatMessage
);
/**
/**
* 新增小程序信息发送
*
* @param wechatMessage 小程序信息发送
* @return 结果
*/
public
int
insertWechatMessage
(
String
openId
,
String
message
);
/**
* 修改小程序信息发送
* 修改小程序信息发送
*
*
* @param wechatMessage 小程序信息发送
* @param wechatMessage 小程序信息发送
...
...
soss-system/src/main/java/com/soss/system/service/impl/MachineApiServiceImpl.java
View file @
0a2b2609
...
@@ -3,12 +3,15 @@ package com.soss.system.service.impl;
...
@@ -3,12 +3,15 @@ package com.soss.system.service.impl;
import
com.alibaba.fastjson.JSONObject
;
import
com.alibaba.fastjson.JSONObject
;
import
com.fasterxml.jackson.databind.ObjectMapper
;
import
com.fasterxml.jackson.databind.ObjectMapper
;
import
com.soss.common.exception.ServiceException
;
import
com.soss.common.exception.ServiceException
;
import
com.soss.common.utils.DateUtils
;
import
com.soss.common.utils.StringUtils
;
import
com.soss.common.utils.StringUtils
;
import
com.soss.system.constants.OrderStatusConstant
;
import
com.soss.system.domain.*
;
import
com.soss.system.domain.*
;
import
com.soss.system.domain.vo.ResultVo
;
import
com.soss.system.domain.vo.ResultVo
;
import
com.soss.system.jiguang.JiGuangPushService
;
import
com.soss.system.jiguang.JiGuangPushService
;
import
com.soss.system.jiguang.impl.JiGuangPushServiceImpl
;
import
com.soss.system.jiguang.impl.JiGuangPushServiceImpl
;
import
com.soss.system.mapper.*
;
import
com.soss.system.mapper.*
;
import
com.soss.system.weixin.util.SendMessageUtils
;
import
lombok.extern.slf4j.Slf4j
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.beans.factory.annotation.Value
;
...
@@ -49,6 +52,12 @@ public class MachineApiServiceImpl {
...
@@ -49,6 +52,12 @@ public class MachineApiServiceImpl {
private
JiGuangPushServiceImpl
jiGuangPushService
;
private
JiGuangPushServiceImpl
jiGuangPushService
;
@Autowired
@Autowired
private
GoodsCategoryMapper
goodsCategoryMapper
;
private
GoodsCategoryMapper
goodsCategoryMapper
;
@Autowired
private
WechatMessageServiceImpl
wechatMessageService
;
@Autowired
private
SendMessageUtils
sendMessageUtils
;
@Autowired
private
OrderOperationLogServiceImpl
operationLogService
;
public
String
shopGoodsUpdate
(
JSONObject
jsonObject
)
{
public
String
shopGoodsUpdate
(
JSONObject
jsonObject
)
{
String
shopID
=
jsonObject
.
getString
(
"shopId"
);
String
shopID
=
jsonObject
.
getString
(
"shopId"
);
...
@@ -85,11 +94,19 @@ public class MachineApiServiceImpl {
...
@@ -85,11 +94,19 @@ public class MachineApiServiceImpl {
order
.
setId
(
orderID
);
order
.
setId
(
orderID
);
order
.
setState
(
status
);
order
.
setState
(
status
);
order
.
setUpdatedAt
(
new
Date
());
order
.
setUpdatedAt
(
new
Date
());
if
(
"6"
.
equals
(
status
)){
if
(
OrderStatusConstant
.
completed
.
equals
(
status
)){
order
.
setFinishTime
(
new
Date
());
order
.
setFinishTime
(
new
Date
());
}
}
int
i
=
orderMapper
.
updateOrder
(
order
);
int
i
=
orderMapper
.
updateOrder
(
order
);
jiGuangPushService
.
pushOrderState
(
order
);
jiGuangPushService
.
pushOrderState
(
order
);
if
(
OrderStatusConstant
.
production
.
equals
(
status
)){
wechatMessageService
.
insertWechatMessage
(
order
.
getUserId
(),
"制作提醒,您的订单已经开始制作,马上就能享受美味了!"
);
}
if
(
OrderStatusConstant
.
completed
.
equals
(
status
)){
wechatMessageService
.
insertWechatMessage
(
order
.
getUserId
(),
"制作完成,您的订单已经制作完成,现在可以去取餐啦!"
);
sendMessageUtils
.
sendWxMsg
(
order
);
}
return
i
+
""
;
return
i
+
""
;
}
}
...
@@ -218,14 +235,20 @@ public class MachineApiServiceImpl {
...
@@ -218,14 +235,20 @@ public class MachineApiServiceImpl {
}
}
public
void
updateOrder
(
Order
order
)
{
public
void
updateOrder
(
Order
order
)
{
JSONObject
param
=
new
JSONObject
();
JSONObject
param
=
new
JSONObject
();
JSONObject
data
=
new
JSONObject
();
JSONObject
data
=
new
JSONObject
();
data
.
put
(
"state"
,
Integer
.
parseInt
(
order
.
getState
()));
data
.
put
(
"state"
,
Integer
.
parseInt
(
order
.
getState
()));
data
.
put
(
"payTime"
,
order
.
getPayTime
());
if
(
"2"
.
equals
(
order
.
getState
())){
data
.
put
(
"finishTime"
,
order
.
getFinishTime
());
data
.
put
(
"payTime"
,
DateUtils
.
parseDateToStr
(
"yyyy-MM-dd HH:mm:ss"
,
order
.
getPayTime
()));
}
param
.
put
(
"data"
,
data
.
toJSONString
());
param
.
put
(
"data"
,
data
.
toJSONString
());
param
.
put
(
"orderId"
,
order
.
getId
());
param
.
put
(
"orderId"
,
order
.
getId
());
sendRequest
(
param
.
toJSONString
(),
"/v1/order/update"
);
ResultVo
resultVo
=
sendRequest
(
param
.
toJSONString
(),
"/v1/order/update"
);
jiGuangPushService
.
pushOrderState
(
order
);
operationLogService
.
insertOrderOperationLog
(
order
,
resultVo
);
}
}
public
Object
checkOrder
(
JSONObject
jsonObject
)
{
public
Object
checkOrder
(
JSONObject
jsonObject
)
{
...
...
soss-system/src/main/java/com/soss/system/service/impl/OrderOperationLogServiceImpl.java
View file @
0a2b2609
...
@@ -4,6 +4,10 @@ import java.util.Date;
...
@@ -4,6 +4,10 @@ import java.util.Date;
import
java.util.List
;
import
java.util.List
;
import
com.soss.common.utils.StringUtils
;
import
com.soss.common.utils.StringUtils
;
import
com.soss.system.constants.OrderStatusConstant
;
import
com.soss.system.domain.Order
;
import
com.soss.system.domain.OrderRefund
;
import
com.soss.system.domain.vo.ResultVo
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
import
com.soss.system.mapper.OrderOperationLogMapper
;
import
com.soss.system.mapper.OrderOperationLogMapper
;
...
@@ -53,20 +57,56 @@ public class OrderOperationLogServiceImpl implements IOrderOperationLogService
...
@@ -53,20 +57,56 @@ public class OrderOperationLogServiceImpl implements IOrderOperationLogService
* @return 结果
* @return 结果
*/
*/
@Override
@Override
public
int
insertOrderOperationLog
(
String
status
,
Long
orderId
,
String
content
,
String
operationUser
,
String
operation
)
public
int
insertOrderOperationLog
(
Order
order
)
{
{
OrderOperationLog
operationLog
=
new
OrderOperationLog
();
OrderOperationLog
operationLog
=
new
OrderOperationLog
();
operationLog
.
setStatus
(
status
);
operationLog
.
setOrderId
(
String
.
valueOf
(
order
.
getId
()));
operationLog
.
setOrderId
(
String
.
valueOf
(
orderId
));
operationLog
.
setContent
(
content
);
operationLog
.
setCreateAt
(
new
Date
());
operationLog
.
setCreateAt
(
new
Date
());
operationLog
.
setOperationUser
(
operationUser
);
String
state
=
order
.
getState
();
operationLog
.
setOperation
(
operation
);
if
(
StringUtils
.
isEmpty
(
operationUser
)){
switch
(
state
){
case
OrderStatusConstant
.
Unpaid
:
operationLog
.
setStatus
(
"待付款"
);
operationLog
.
setOperation
(
"创建订单"
);
operationLog
.
setOperationUser
(
order
.
getUserName
());
operationLog
.
setContent
(
"创建了订单"
);
break
;
case
OrderStatusConstant
.
UnpaidCancel
:
operationLog
.
setStatus
(
"已取消"
);
operationLog
.
setOperation
(
"取消订单"
);
operationLog
.
setOperationUser
(
order
.
getUserName
());
operationLog
.
setContent
(
"用户取消订单"
);
break
;
case
OrderStatusConstant
.
Paid
:
operationLog
.
setStatus
(
"已付款"
);
operationLog
.
setOperation
(
"付款"
);
operationLog
.
setOperationUser
(
order
.
getUserName
());
operationLog
.
setContent
(
"付款成功"
);
break
;
case
OrderStatusConstant
.
production
:
operationLog
.
setStatus
(
"制作中"
);
operationLog
.
setOperation
(
"同步信息"
);
operationLog
.
setOperationUser
(
"接口"
);
operationLog
.
setOperationUser
(
"接口"
);
}
operationLog
.
setContent
(
"机器推送制作中"
);
if
(
StringUtils
.
isEmpty
(
operation
)){
break
;
case
OrderStatusConstant
.
productionCompleted
:
operationLog
.
setStatus
(
"制作完成"
);
operationLog
.
setOperation
(
"同步信息"
);
operationLog
.
setOperation
(
"同步信息"
);
operationLog
.
setOperationUser
(
"接口"
);
operationLog
.
setContent
(
"机器推送制作完成"
);
break
;
case
OrderStatusConstant
.
Taking
:
operationLog
.
setStatus
(
"取餐中"
);
operationLog
.
setOperation
(
"同步信息"
);
operationLog
.
setOperationUser
(
"接口"
);
operationLog
.
setContent
(
"机器推送取餐中"
);
break
;
case
OrderStatusConstant
.
completed
:
operationLog
.
setStatus
(
"已完成"
);
operationLog
.
setOperation
(
"同步信息"
);
operationLog
.
setOperationUser
(
"接口"
);
operationLog
.
setContent
(
"机器推送已完成"
);
break
;
}
}
return
orderOperationLogMapper
.
insertOrderOperationLog
(
operationLog
);
return
orderOperationLogMapper
.
insertOrderOperationLog
(
operationLog
);
}
}
...
@@ -106,4 +146,48 @@ public class OrderOperationLogServiceImpl implements IOrderOperationLogService
...
@@ -106,4 +146,48 @@ public class OrderOperationLogServiceImpl implements IOrderOperationLogService
{
{
return
orderOperationLogMapper
.
deleteOrderOperationLogById
(
id
);
return
orderOperationLogMapper
.
deleteOrderOperationLogById
(
id
);
}
}
public
void
insertOrderOperationLog
(
OrderRefund
orderRefund
)
{
Order
order
=
orderRefund
.
getOrder
();
OrderOperationLog
operationLog
=
new
OrderOperationLog
();
operationLog
.
setOrderId
(
String
.
valueOf
(
order
.
getId
()));
operationLog
.
setCreateAt
(
new
Date
());
if
(
StringUtils
.
isEmpty
(
orderRefund
.
getDesc
())){
operationLog
.
setStatus
(
"已退款"
);
operationLog
.
setOperation
(
"退款"
);
operationLog
.
setOperationUser
(
"系统"
);
operationLog
.
setContent
(
"用户完成退款"
);
}
else
{
operationLog
.
setStatus
(
"已完成"
);
operationLog
.
setOperation
(
"售后"
);
operationLog
.
setOperationUser
(
orderRefund
.
getCreateUserName
());
operationLog
.
setContent
(
orderRefund
.
getDesc
());
}
}
public
void
insertOrderOperationLog
(
Order
order
,
ResultVo
resultVo
)
{
OrderOperationLog
operationLog
=
new
OrderOperationLog
();
operationLog
.
setOrderId
(
String
.
valueOf
(
order
.
getId
()));
operationLog
.
setCreateAt
(
new
Date
());
String
state
=
order
.
getState
();
operationLog
.
setOperation
(
"同步消息"
);
operationLog
.
setOperationUser
(
"接口"
);
String
result
=
"成功"
;
if
(!
"0"
.
equals
(
resultVo
.
getCode
())){
result
=
"失败"
;
}
switch
(
state
){
case
OrderStatusConstant
.
UnpaidCancel
:
operationLog
.
setStatus
(
"已取消"
);
operationLog
.
setContent
(
"取消订单同步"
+
result
);
break
;
case
OrderStatusConstant
.
Paid
:
operationLog
.
setStatus
(
"已付款"
);
operationLog
.
setContent
(
"付款状态信息"
+
result
);
break
;
}
orderOperationLogMapper
.
insertOrderOperationLog
(
operationLog
);
}
}
}
soss-system/src/main/java/com/soss/system/service/impl/OrderRefundServiceImpl.java
View file @
0a2b2609
package
com
.
soss
.
system
.
service
.
impl
;
package
com
.
soss
.
system
.
service
.
impl
;
import
java.util.Arrays
;
import
java.util.Date
;
import
java.util.Date
;
import
java.util.List
;
import
java.util.List
;
...
@@ -8,9 +9,12 @@ import com.soss.common.core.domain.AjaxResult;
...
@@ -8,9 +9,12 @@ import com.soss.common.core.domain.AjaxResult;
import
com.soss.common.exception.ServiceException
;
import
com.soss.common.exception.ServiceException
;
import
com.soss.common.utils.GenerateCode
;
import
com.soss.common.utils.GenerateCode
;
import
com.soss.common.utils.StringUtils
;
import
com.soss.common.utils.StringUtils
;
import
com.soss.system.constants.OrderStatusConstant
;
import
com.soss.system.domain.Order
;
import
com.soss.system.domain.Order
;
import
com.soss.system.domain.OrderDetail
;
import
com.soss.system.domain.OrderDetail
;
import
com.soss.system.domain.OrderSnapshot
;
import
com.soss.system.domain.OrderSnapshot
;
import
com.soss.system.domain.vo.OrderQuery
;
import
com.soss.system.jiguang.impl.JiGuangPushServiceImpl
;
import
com.soss.system.mapper.OrderMapper
;
import
com.soss.system.mapper.OrderMapper
;
import
com.soss.system.mapper.OrderSnapshotMapper
;
import
com.soss.system.mapper.OrderSnapshotMapper
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
...
@@ -36,6 +40,12 @@ public class OrderRefundServiceImpl implements IOrderRefundService
...
@@ -36,6 +40,12 @@ public class OrderRefundServiceImpl implements IOrderRefundService
private
OrderMapper
orderMapper
;
private
OrderMapper
orderMapper
;
@Autowired
@Autowired
private
OrderSnapshotMapper
orderSnapshotMapper
;
private
OrderSnapshotMapper
orderSnapshotMapper
;
@Autowired
private
MachineApiServiceImpl
machineApiService
;
@Autowired
private
JiGuangPushServiceImpl
jiGuangPushService
;
@Autowired
private
OrderOperationLogServiceImpl
orderOperationLogService
;
/**
/**
* 查询订单退款
* 查询订单退款
...
@@ -91,11 +101,11 @@ public class OrderRefundServiceImpl implements IOrderRefundService
...
@@ -91,11 +101,11 @@ public class OrderRefundServiceImpl implements IOrderRefundService
}
}
// 制作中、制作完成、聚餐中、已完成
// 制作中、制作完成、聚餐中、已完成
String
state
=
order
.
getState
();
String
state
=
order
.
getState
();
List
<
String
>
status
=
Arrays
.
asList
(
OrderStatusConstant
.
production
,
OrderStatusConstant
.
productionCompleted
,
OrderStatusConstant
.
completed
);
if
(
"2"
.
equals
(
state
)){
if
(
OrderStatusConstant
.
Paid
.
equals
(
state
)){
cancel
(
order
);
// 4 支付制作中 5 制作完成未取 6 取餐中 7 取餐完成
// 4 支付制作中 5 制作完成未取 6 取餐中 7 取餐完成
}
else
if
(
"3"
.
equals
(
state
)||
"4"
.
equals
(
state
)||
"5"
.
equals
(
state
)||
"6"
.
equals
(
state
)||
"13"
.
equal
s
(
state
)){
}
else
if
(
status
.
contain
s
(
state
)){
String
desc
=
orderRefund
.
getDesc
();
String
desc
=
orderRefund
.
getDesc
();
if
(
StringUtils
.
isEmpty
(
desc
)){
if
(
StringUtils
.
isEmpty
(
desc
)){
return
AjaxResult
.
error
(
"请联系客服进行退款"
);
return
AjaxResult
.
error
(
"请联系客服进行退款"
);
...
@@ -112,9 +122,27 @@ public class OrderRefundServiceImpl implements IOrderRefundService
...
@@ -112,9 +122,27 @@ public class OrderRefundServiceImpl implements IOrderRefundService
orderRefund
.
setTotalFee
(
order
.
getAmount
());
orderRefund
.
setTotalFee
(
order
.
getAmount
());
orderRefund
.
setOrderNo
(
order
.
getOrderNo
());
orderRefund
.
setOrderNo
(
order
.
getOrderNo
());
int
i
=
orderRefundMapper
.
insertOrderRefund
(
orderRefund
);
int
i
=
orderRefundMapper
.
insertOrderRefund
(
orderRefund
);
order
.
setState
(
OrderStatusConstant
.
refunding
);
orderMapper
.
updateOrder
(
order
);
orderRefund
.
setOrder
(
order
);
return
AjaxResult
.
success
(
orderRefund
);
return
AjaxResult
.
success
(
orderRefund
);
}
}
public
void
cancel
(
Order
order
)
{
if
(
OrderStatusConstant
.
Unpaid
.
equals
(
order
.
getState
())){
order
.
setState
(
OrderStatusConstant
.
UnpaidCancel
);
order
.
setUpdatedAt
(
new
Date
());
orderMapper
.
updateOrder
(
order
);
machineApiService
.
updateOrder
(
order
);
}
else
if
(
OrderStatusConstant
.
Paid
.
equals
(
order
.
getState
())){
order
.
setState
(
OrderStatusConstant
.
PaidCancel
);
order
.
setUpdatedAt
(
new
Date
());
orderMapper
.
updateOrder
(
order
);
machineApiService
.
updateOrder
(
order
);
jiGuangPushService
.
pushOrderState
(
order
);
}
else
{
throw
new
ServiceException
(
"该订单不允许退款"
);
}
}
/**
/**
* 修改订单退款
* 修改订单退款
*
*
...
@@ -163,4 +191,17 @@ public class OrderRefundServiceImpl implements IOrderRefundService
...
@@ -163,4 +191,17 @@ public class OrderRefundServiceImpl implements IOrderRefundService
orderRefund
.
setTotalFee
(
order
.
getAmount
());
orderRefund
.
setTotalFee
(
order
.
getAmount
());
return
orderRefund
;
return
orderRefund
;
}
}
@Override
public
List
<
OrderRefund
>
selectOrderRefundList
(
OrderQuery
orderQuery
)
{
List
<
OrderRefund
>
orderRefunds
=
orderRefundMapper
.
selectList
(
orderQuery
);
for
(
OrderRefund
refund
:
orderRefunds
)
{
Order
order
=
orderService
.
selectOrderById
(
refund
.
getOrderId
());
OrderSnapshot
orderSnapshot
=
orderSnapshotMapper
.
selectOrderSnapshotByOrderId
(
order
.
getId
());
List
<
OrderDetail
>
orderDetails
=
JSONObject
.
parseArray
(
orderSnapshot
.
getSnapshot
(),
OrderDetail
.
class
);
order
.
setOrderDetails
(
orderDetails
);
refund
.
setOrder
(
order
);
}
return
orderRefunds
;
}
}
}
soss-system/src/main/java/com/soss/system/service/impl/OrderServiceImpl.java
View file @
0a2b2609
...
@@ -5,6 +5,7 @@ import java.util.*;
...
@@ -5,6 +5,7 @@ import java.util.*;
import
java.util.concurrent.TimeUnit
;
import
java.util.concurrent.TimeUnit
;
import
java.util.stream.Collectors
;
import
java.util.stream.Collectors
;
import
com.alibaba.fastjson.JSONArray
;
import
com.alibaba.fastjson.JSONObject
;
import
com.alibaba.fastjson.JSONObject
;
import
com.soss.common.constant.HttpStatus
;
import
com.soss.common.constant.HttpStatus
;
import
com.soss.common.core.domain.AjaxResult
;
import
com.soss.common.core.domain.AjaxResult
;
...
@@ -12,15 +13,19 @@ import com.soss.common.core.domain.model.LoginUser;
...
@@ -12,15 +13,19 @@ import com.soss.common.core.domain.model.LoginUser;
import
com.soss.common.exception.ServiceException
;
import
com.soss.common.exception.ServiceException
;
import
com.soss.common.utils.StringUtils
;
import
com.soss.common.utils.StringUtils
;
import
com.soss.common.utils.spring.SpringUtils
;
import
com.soss.common.utils.spring.SpringUtils
;
import
com.soss.system.constants.OrderStatusConstant
;
import
com.soss.system.domain.*
;
import
com.soss.system.domain.*
;
import
com.soss.system.jiguang.impl.JiGuangPushServiceImpl
;
import
com.soss.system.service.IOrderService
;
import
com.soss.system.service.IOrderService
;
import
com.soss.system.domain.vo.OrderQuery
;
import
com.soss.system.domain.vo.OrderQuery
;
import
com.soss.system.mapper.*
;
import
com.soss.system.mapper.*
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.data.redis.core.StringRedisTemplate
;
import
org.springframework.data.redis.core.StringRedisTemplate
;
import
org.springframework.data.redis.support.atomic.RedisAtomicInteger
;
import
org.springframework.data.redis.support.atomic.RedisAtomicInteger
;
import
org.springframework.security.core.token.TokenService
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.annotation.Transactional
;
import
org.springframework.transaction.annotation.Transactional
;
import
org.springframework.util.CollectionUtils
;
/**
/**
* 订单Service业务层处理
* 订单Service业务层处理
...
@@ -49,6 +54,8 @@ public class OrderServiceImpl implements IOrderService
...
@@ -49,6 +54,8 @@ public class OrderServiceImpl implements IOrderService
private
OrderOperationLogServiceImpl
orderOperationLogService
;
private
OrderOperationLogServiceImpl
orderOperationLogService
;
@Autowired
@Autowired
private
OrderSnapshotServiceImpl
orderSnapshotService
;
private
OrderSnapshotServiceImpl
orderSnapshotService
;
@Autowired
private
JiGuangPushServiceImpl
jiGuangPushService
;
...
@@ -102,7 +109,7 @@ public class OrderServiceImpl implements IOrderService
...
@@ -102,7 +109,7 @@ public class OrderServiceImpl implements IOrderService
if
(
HttpStatus
.
SUCCESS
!=
(
int
)
result
.
get
(
result
.
CODE_TAG
)){
if
(
HttpStatus
.
SUCCESS
!=
(
int
)
result
.
get
(
result
.
CODE_TAG
)){
return
result
;
return
result
;
}
}
order
.
setState
(
"1"
);
order
.
setState
(
OrderStatusConstant
.
Unpaid
);
order
.
setUserId
(
loginUser
.
getOpenId
());
order
.
setUserId
(
loginUser
.
getOpenId
());
order
.
setUserName
(
loginUser
.
getUsername
());
order
.
setUserName
(
loginUser
.
getUsername
());
order
.
setCreatedAt
(
new
Date
());
order
.
setCreatedAt
(
new
Date
());
...
@@ -138,7 +145,7 @@ public class OrderServiceImpl implements IOrderService
...
@@ -138,7 +145,7 @@ public class OrderServiceImpl implements IOrderService
}
}
//发送数据给机器
//发送数据给机器
machineApiService
.
createOrder
(
order
);
machineApiService
.
createOrder
(
order
);
orderOperationLogService
.
insertOrderOperationLog
(
"待付款"
,
order
.
getId
(),
"创建了订单"
,
order
.
getUserName
(),
"创建订单"
);
orderOperationLogService
.
insertOrderOperationLog
(
order
);
orderSnapshotService
.
saveOrderSnapshot
(
order
);
orderSnapshotService
.
saveOrderSnapshot
(
order
);
return
AjaxResult
.
success
(
order
.
getOrderNo
());
return
AjaxResult
.
success
(
order
.
getOrderNo
());
...
@@ -207,16 +214,12 @@ public class OrderServiceImpl implements IOrderService
...
@@ -207,16 +214,12 @@ public class OrderServiceImpl implements IOrderService
@Override
@Override
public
List
<
Order
>
getMyOrder
(
String
openId
)
{
public
List
<
Order
>
getMyOrder
(
String
openId
)
{
List
<
Order
>
orders
=
orderMapper
.
selectByUserId
(
"oA0gy4xT7vFZ5SGI__x_ss7vNi8g"
);
List
<
Order
>
orders
=
orderMapper
.
selectByUserId
(
openId
);
for
(
Order
order
:
orders
)
{
for
(
Order
order
:
orders
)
{
order
.
setShop
(
shopMapper
.
selectShopById
(
order
.
getShopId
()));
order
.
setShop
(
shopMapper
.
selectShopById
(
order
.
getShopId
()));
OrderDetail
orderDetail
=
new
OrderDetail
();
OrderSnapshot
orderSnapshot
=
orderSnapshotService
.
selectOrderSnapshotByOrderId
(
order
.
getId
());
orderDetail
.
setOrderId
(
order
.
getId
());
order
.
setOrderDetails
(
JSONArray
.
parseArray
(
orderSnapshot
.
getSnapshot
(),
OrderDetail
.
class
));
List
<
OrderDetail
>
orderDetails
=
orderDetailMapper
.
selectOrderDetailList
(
orderDetail
);
for
(
OrderDetail
detail
:
orderDetails
)
{
detail
.
setGoods
(
goodsMapper
.
selectGoodsById
(
detail
.
getGoodsId
()));
}
order
.
setOrderDetails
(
orderDetails
);
}
}
return
orders
;
return
orders
;
}
}
...
@@ -225,11 +228,19 @@ public class OrderServiceImpl implements IOrderService
...
@@ -225,11 +228,19 @@ public class OrderServiceImpl implements IOrderService
@Transactional
@Transactional
public
int
cancel
(
String
orderId
)
{
public
int
cancel
(
String
orderId
)
{
Order
order
=
orderMapper
.
selectOrderById
(
orderId
);
Order
order
=
orderMapper
.
selectOrderById
(
orderId
);
if
(
"1"
.
equals
(
order
.
getState
())){
if
(
OrderStatusConstant
.
Unpaid
.
equals
(
order
.
getState
())){
order
.
setState
(
"7"
);
order
.
setState
(
"8"
);
order
.
setUpdatedAt
(
new
Date
());
orderMapper
.
updateOrder
(
order
);
orderOperationLogService
.
insertOrderOperationLog
(
order
);
machineApiService
.
updateOrder
(
order
);
}
else
if
(
OrderStatusConstant
.
Paid
.
equals
(
order
.
getState
())){
order
.
setState
(
"9"
);
order
.
setUpdatedAt
(
new
Date
());
order
.
setUpdatedAt
(
new
Date
());
orderMapper
.
updateOrder
(
order
);
orderMapper
.
updateOrder
(
order
);
orderOperationLogService
.
insertOrderOperationLog
(
order
);
machineApiService
.
updateOrder
(
order
);
machineApiService
.
updateOrder
(
order
);
jiGuangPushService
.
pushOrderState
(
order
);
}
else
{
}
else
{
throw
new
ServiceException
(
"该订单不允许取消"
);
throw
new
ServiceException
(
"该订单不允许取消"
);
}
}
...
@@ -237,6 +248,8 @@ public class OrderServiceImpl implements IOrderService
...
@@ -237,6 +248,8 @@ public class OrderServiceImpl implements IOrderService
return
0
;
return
0
;
}
}
/**
/**
* 获取机器顺序号
* 获取机器顺序号
* @param shopId
* @param shopId
...
@@ -281,8 +294,9 @@ public class OrderServiceImpl implements IOrderService
...
@@ -281,8 +294,9 @@ public class OrderServiceImpl implements IOrderService
}
}
public
List
<
JSONObject
>
getOrderInfo
(
String
machineCode
)
{
public
List
<
JSONObject
>
getOrderInfo
(
String
machineCode
)
{
Machine
machine
=
machineMapper
.
selectMachineByCode
(
machineCode
);
List
<
String
>
status
=
Arrays
.
asList
(
"3"
,
"4"
,
"5"
);
List
<
String
>
status
=
Arrays
.
asList
(
"3"
,
"4"
,
"5"
);
List
<
Order
>
orders
=
orderMapper
.
selectOrder
(
status
,
machine
Code
);
List
<
Order
>
orders
=
orderMapper
.
selectOrder
(
status
,
machine
.
getId
()
);
Map
<
String
,
List
<
Order
>>
collect
=
orders
.
stream
().
collect
(
Collectors
.
groupingBy
(
Order:
:
getState
));
Map
<
String
,
List
<
Order
>>
collect
=
orders
.
stream
().
collect
(
Collectors
.
groupingBy
(
Order:
:
getState
));
List
<
JSONObject
>
objects
=
new
ArrayList
<>();
List
<
JSONObject
>
objects
=
new
ArrayList
<>();
for
(
String
key:
collect
.
keySet
()){
for
(
String
key:
collect
.
keySet
()){
...
@@ -316,4 +330,49 @@ public class OrderServiceImpl implements IOrderService
...
@@ -316,4 +330,49 @@ public class OrderServiceImpl implements IOrderService
}
}
return
null
;
return
null
;
}
}
public
Map
<
String
,
String
>
getMyFristOrder
(
String
openId
)
{
List
<
String
>
status
=
Arrays
.
asList
(
"2"
,
"3"
,
"4"
);
Order
order
=
orderMapper
.
selectHomeByUserId
(
openId
,
status
);
if
(
order
==
null
){
return
null
;
}
OrderDetail
orderDetail
=
new
OrderDetail
();
orderDetail
.
setOrderId
(
order
.
getId
());
List
<
OrderDetail
>
orderDetails
=
orderDetailMapper
.
selectOrderDetailList
(
orderDetail
);
order
.
setOrderDetails
(
orderDetails
);
String
waitTime
=
getWaitTime
(
order
);
Map
<
String
,
String
>
map
=
new
HashMap
<>();
map
.
put
(
"waitTime"
,
waitTime
);
map
.
put
(
"pickCode"
,
order
.
getPickCode
());
map
.
put
(
"orderNum"
,
order
.
getOrderNum
());
return
map
;
}
public
String
getWaitTime
(
Order
order
)
{
String
machineId
=
order
.
getMachineId
();
List
<
String
>
status
=
Arrays
.
asList
(
"2"
,
"3"
);
List
<
Order
>
orders
=
orderMapper
.
selectOrder
(
status
,
machineId
);
List
<
OrderDetail
>
list
=
new
ArrayList
<>();
list
.
addAll
(
order
.
getOrderDetails
());
for
(
Order
order1
:
orders
)
{
OrderDetail
orderDetail
=
new
OrderDetail
();
orderDetail
.
setOrderId
(
order1
.
getId
());
List
<
OrderDetail
>
orderDetails
=
orderDetailMapper
.
selectOrderDetailList
(
orderDetail
);
if
(
CollectionUtils
.
isEmpty
(
orderDetails
)){
}
else
{
list
.
addAll
(
orderDetails
);
}
}
Long
takeTimeCount
=
0L
;
for
(
OrderDetail
orderDetail
:
list
)
{
Long
takeTime
=
goodsMapper
.
selectGoodsById
(
orderDetail
.
getGoodsId
()).
getTakeTime
();
takeTimeCount
+=
takeTime
;
}
return
String
.
valueOf
((
int
)(
takeTimeCount
/
60
));
}
}
}
soss-system/src/main/java/com/soss/system/service/impl/ShopRecommendServiceImpl.java
View file @
0a2b2609
...
@@ -152,7 +152,7 @@ public class ShopRecommendServiceImpl implements IShopRecommendService
...
@@ -152,7 +152,7 @@ public class ShopRecommendServiceImpl implements IShopRecommendService
String
turn
=
frist
.
getTurn
();
String
turn
=
frist
.
getTurn
();
shopRecommend
.
setGoodsId
(
lastGoodsId
);
shopRecommend
.
setGoodsId
(
lastGoodsId
);
ShopRecommend
last
=
shopRecommendMapper
.
selectShopRecommendList
(
shopRecommend
).
get
(
0
);
ShopRecommend
last
=
shopRecommendMapper
.
selectShopRecommendList
(
shopRecommend
).
get
(
0
);
frist
.
setT
ype
(
last
.
getTurn
());
frist
.
setT
urn
(
last
.
getTurn
());
last
.
setTurn
(
turn
);
last
.
setTurn
(
turn
);
shopRecommendMapper
.
updateShopRecommend
(
frist
);
shopRecommendMapper
.
updateShopRecommend
(
frist
);
shopRecommendMapper
.
updateShopRecommend
(
last
);
shopRecommendMapper
.
updateShopRecommend
(
last
);
...
...
soss-system/src/main/java/com/soss/system/service/impl/ShopServiceImpl.java
View file @
0a2b2609
...
@@ -12,6 +12,7 @@ import com.soss.common.utils.StringUtils;
...
@@ -12,6 +12,7 @@ import com.soss.common.utils.StringUtils;
import
com.soss.system.domain.*
;
import
com.soss.system.domain.*
;
import
com.soss.system.service.IShopService
;
import
com.soss.system.service.IShopService
;
import
com.soss.system.mapper.*
;
import
com.soss.system.mapper.*
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.annotation.Transactional
;
import
org.springframework.transaction.annotation.Transactional
;
...
@@ -23,6 +24,7 @@ import org.springframework.transaction.annotation.Transactional;
...
@@ -23,6 +24,7 @@ import org.springframework.transaction.annotation.Transactional;
* @date 2022-04-28
* @date 2022-04-28
*/
*/
@Service
@Service
@Slf4j
public
class
ShopServiceImpl
implements
IShopService
public
class
ShopServiceImpl
implements
IShopService
{
{
@Autowired
@Autowired
...
@@ -231,7 +233,7 @@ public class ShopServiceImpl implements IShopService
...
@@ -231,7 +233,7 @@ public class ShopServiceImpl implements IShopService
Goods
goods
=
goodsMapper
.
selectGoodsById
(
String
.
valueOf
(
goodsId
));
Goods
goods
=
goodsMapper
.
selectGoodsById
(
String
.
valueOf
(
goodsId
));
List
<
ShopGoods
>
shopGoodsList
=
shopGoodsMapper
.
selectShopGoodsList
(
shopGoods
);
List
<
ShopGoods
>
shopGoodsList
=
shopGoodsMapper
.
selectShopGoodsList
(
shopGoods
);
shopGoodsList
=
shopGoodsList
.
stream
().
filter
(
e
->{
shopGoodsList
=
shopGoodsList
.
stream
().
filter
(
e
->{
String
category
=
goodsMapper
.
selectGoodsById
(
String
.
valueOf
(
goodsId
)).
getCategory
();
String
category
=
goodsMapper
.
selectGoodsById
(
String
.
valueOf
(
e
.
getGoodsId
()
)).
getCategory
();
if
(
category
.
equals
(
goods
.
getCategory
())){
if
(
category
.
equals
(
goods
.
getCategory
())){
return
true
;
return
true
;
}
else
{
}
else
{
...
@@ -239,6 +241,7 @@ public class ShopServiceImpl implements IShopService
...
@@ -239,6 +241,7 @@ public class ShopServiceImpl implements IShopService
}
}
}).
collect
(
Collectors
.
toList
());
}).
collect
(
Collectors
.
toList
());
int
size
=
shopGoodsList
.
size
();
int
size
=
shopGoodsList
.
size
();
Long
lastGoodsId
=
null
;
Long
lastGoodsId
=
null
;
for
(
int
i
=
0
;
i
<
size
;
i
++){
for
(
int
i
=
0
;
i
<
size
;
i
++){
...
...
soss-system/src/main/java/com/soss/system/service/impl/SysUserServiceImpl.java
View file @
0a2b2609
...
@@ -46,14 +46,11 @@ public class SysUserServiceImpl implements ISysUserService
...
@@ -46,14 +46,11 @@ public class SysUserServiceImpl implements ISysUserService
@Autowired
@Autowired
private
SysRoleMapper
roleMapper
;
private
SysRoleMapper
roleMapper
;
@Autowired
private
SysPostMapper
postMapper
;
@Autowired
@Autowired
private
SysUserRoleMapper
userRoleMapper
;
private
SysUserRoleMapper
userRoleMapper
;
@Autowired
private
SysUserPostMapper
userPostMapper
;
@Autowired
@Autowired
private
ISysConfigService
configService
;
private
ISysConfigService
configService
;
...
@@ -150,12 +147,7 @@ public class SysUserServiceImpl implements ISysUserService
...
@@ -150,12 +147,7 @@ public class SysUserServiceImpl implements ISysUserService
@Override
@Override
public
String
selectUserPostGroup
(
String
userName
)
public
String
selectUserPostGroup
(
String
userName
)
{
{
List
<
SysPost
>
list
=
postMapper
.
selectPostsByUserName
(
userName
);
return
null
;
if
(
CollectionUtils
.
isEmpty
(
list
))
{
return
StringUtils
.
EMPTY
;
}
return
list
.
stream
().
map
(
SysPost:
:
getPostName
).
collect
(
Collectors
.
joining
(
","
));
}
}
/**
/**
...
@@ -417,7 +409,7 @@ public class SysUserServiceImpl implements ISysUserService
...
@@ -417,7 +409,7 @@ public class SysUserServiceImpl implements ISysUserService
}
}
if
(
list
.
size
()
>
0
)
if
(
list
.
size
()
>
0
)
{
{
userPostMapper
.
batchUserPost
(
list
);
//
userPostMapper.batchUserPost(list);
}
}
}
}
}
}
...
@@ -461,7 +453,7 @@ public class SysUserServiceImpl implements ISysUserService
...
@@ -461,7 +453,7 @@ public class SysUserServiceImpl implements ISysUserService
// 删除用户与角色关联
// 删除用户与角色关联
userRoleMapper
.
deleteUserRoleByUserId
(
userId
);
userRoleMapper
.
deleteUserRoleByUserId
(
userId
);
// 删除用户与岗位表
// 删除用户与岗位表
userPostMapper
.
deleteUserPostByUserId
(
userId
);
//
userPostMapper.deleteUserPostByUserId(userId);
return
userMapper
.
deleteUserById
(
userId
);
return
userMapper
.
deleteUserById
(
userId
);
}
}
...
...
soss-system/src/main/java/com/soss/system/service/impl/WechatMessageServiceImpl.java
View file @
0a2b2609
package
com
.
soss
.
system
.
service
.
impl
;
package
com
.
soss
.
system
.
service
.
impl
;
import
java.util.Date
;
import
java.util.List
;
import
java.util.List
;
import
com.soss.system.service.IWechatMessageService
;
import
com.soss.system.service.IWechatMessageService
;
...
@@ -56,6 +57,19 @@ public class WechatMessageServiceImpl implements IWechatMessageService
...
@@ -56,6 +57,19 @@ public class WechatMessageServiceImpl implements IWechatMessageService
return
wechatMessageMapper
.
insertWechatMessage
(
wechatMessage
);
return
wechatMessageMapper
.
insertWechatMessage
(
wechatMessage
);
}
}
@Override
public
int
insertWechatMessage
(
String
openId
,
String
message
)
{
WechatMessage
wechatMessage
=
new
WechatMessage
();
wechatMessage
.
setMessage
(
message
);
wechatMessage
.
setCreatedAt
(
new
Date
());
wechatMessage
.
setState
(
"0"
);
wechatMessage
.
setIsRead
(
"1"
);
wechatMessage
.
setType
(
"1"
);
wechatMessage
.
setUserId
(
openId
);
wechatMessage
.
setUpdatedAt
(
new
Date
());
return
wechatMessageMapper
.
insertWechatMessage
(
wechatMessage
);
}
/**
/**
* 修改小程序信息发送
* 修改小程序信息发送
*
*
...
...
soss-system/src/main/java/com/soss/system/weixin/util/SendMessageUtils.java
0 → 100644
View file @
0a2b2609
package
com
.
soss
.
system
.
weixin
.
util
;
import
cn.binarywang.wx.miniapp.api.WxMaService
;
import
cn.binarywang.wx.miniapp.bean.WxMaSubscribeMessage
;
import
com.soss.system.domain.Order
;
import
com.soss.system.domain.Shop
;
import
com.soss.system.mapper.ShopMapper
;
import
lombok.extern.slf4j.Slf4j
;
import
me.chanjar.weixin.common.error.WxErrorException
;
import
org.checkerframework.checker.units.qual.A
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.stereotype.Component
;
import
java.util.ArrayList
;
import
java.util.List
;
@Component
@Slf4j
public
class
SendMessageUtils
{
@Autowired
private
WxMaService
wxMaService
;
@Value
(
"${weixin.templateId}"
)
private
String
templateId
;
@Value
(
"${weixin.pagePath}"
)
private
String
pagePath
;
@Autowired
private
ShopMapper
shopMapper
;
/**
* 设置会议订阅消息
*
* @param
* @return 订阅会议消息
*/
private
List
<
WxMaSubscribeMessage
.
MsgData
>
setMeetingMsg
(
Order
order
)
{
Shop
shop
=
shopMapper
.
selectShopById
(
order
.
getShopId
());
List
<
WxMaSubscribeMessage
.
MsgData
>
dataList
=
new
ArrayList
<>();
//这里要完全按照订阅消息模板详情去设置,thing1 ,thing2...不能变
WxMaSubscribeMessage
.
MsgData
data1
=
new
WxMaSubscribeMessage
.
MsgData
();
data1
.
setName
(
"character_string1"
);
data1
.
setValue
(
order
.
getOrderNo
());
dataList
.
add
(
data1
);
WxMaSubscribeMessage
.
MsgData
data2
=
new
WxMaSubscribeMessage
.
MsgData
();
data2
.
setName
(
"thing2"
);
data2
.
setValue
(
shop
.
getName
());
dataList
.
add
(
data2
);
WxMaSubscribeMessage
.
MsgData
data3
=
new
WxMaSubscribeMessage
.
MsgData
();
data3
.
setName
(
"character_string4"
);
data3
.
setValue
(
order
.
getOrderNum
());
dataList
.
add
(
data3
);
WxMaSubscribeMessage
.
MsgData
data4
=
new
WxMaSubscribeMessage
.
MsgData
();
data4
.
setName
(
"thing7"
);
data4
.
setValue
(
shop
.
getAddress
());
dataList
.
add
(
data4
);
return
dataList
;
}
/**
* 根据模板id发送消息
*
*/
public
void
sendWxMsg
(
Order
order
)
{
try
{
WxMaSubscribeMessage
.
WxMaSubscribeMessageBuilder
builder
=
WxMaSubscribeMessage
.
builder
();
//发送人openid
builder
.
toUser
(
order
.
getUserId
());
//发送的模板id
builder
.
templateId
(
templateId
);
//消息主体
builder
.
data
(
setMeetingMsg
(
order
));
//点击订阅消息的跳转链接(默认是正式发布的小程序页面,当然也可以通过参数进行控制)
builder
.
page
(
pagePath
);
WxMaSubscribeMessage
msg
=
builder
.
build
();
wxMaService
.
getMsgService
().
sendSubscribeMsg
(
msg
);
}
catch
(
WxErrorException
e
)
{
log
.
error
(
"会议通知发送失败,用户openId:{}, 错误码:{},错误信息:{}"
,
order
.
getUserId
(),
e
.
getError
().
getErrorCode
(),
e
.
getError
().
getErrorMsg
());
//发送失败就发送短信
}
}
}
soss-system/src/main/resources/mapper/system/OrderMapper.xml
View file @
0a2b2609
...
@@ -195,6 +195,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
...
@@ -195,6 +195,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<![CDATA[ and pay_time <= to_date(#{payAtEnd,jdbcType=DATE},'yyyy-MM-dd hh24:mi:ss')]]>
<![CDATA[ and pay_time <= to_date(#{payAtEnd,jdbcType=DATE},'yyyy-MM-dd hh24:mi:ss')]]>
</if>
</if>
</where>
</where>
order by created_at desc
</select>
</select>
<select
id=
"selectOrder"
resultMap=
"OrderResult"
>
<select
id=
"selectOrder"
resultMap=
"OrderResult"
>
<include
refid=
"selectOrderVo"
/>
<include
refid=
"selectOrderVo"
/>
...
@@ -207,4 +208,19 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
...
@@ -207,4 +208,19 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
and machine_id = #{machineId}
and machine_id = #{machineId}
</where>
</where>
</select>
</select>
<select
id=
"selectHomeByUserId"
resultMap=
"OrderResult"
>
<include
refid=
"selectOrderVo"
/>
<where>
state in
<foreach
item=
"item"
index=
"index"
collection=
"status"
open=
"("
separator=
","
close=
")"
>
#{item}
</foreach>
and user_id = #{userId}
</where>
order by create_at desc limit 1
</select>
<update
id=
"updateTimeOut"
>
update `order` set state='5' where state =#{status} and updated_at
<
DATE_SUB(NOW() ,interval #{timeout} SECOND)
</update>
</mapper>
</mapper>
\ No newline at end of file
soss-system/src/main/resources/mapper/system/OrderRefundMapper.xml
View file @
0a2b2609
...
@@ -14,10 +14,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
...
@@ -14,10 +14,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<result
property=
"createdAt"
column=
"created_at"
/>
<result
property=
"createdAt"
column=
"created_at"
/>
<result
property=
"updatedAt"
column=
"updated_at"
/>
<result
property=
"updatedAt"
column=
"updated_at"
/>
<result
property=
"orderNo"
column=
"order_no"
/>
<result
property=
"orderNo"
column=
"order_no"
/>
<result
property=
"createUserName"
column=
"create_user_name"
></result>
</resultMap>
</resultMap>
<sql
id=
"selectOrderRefundVo"
>
<sql
id=
"selectOrderRefundVo"
>
select id, order_id, refund_amount, state, `desc`, created_at, updated_at,refund_no,order_no from order_refund
select id, order_id, refund_amount, state, `desc`, created_at, updated_at,refund_no,order_no
,create_user_name
from order_refund
</sql>
</sql>
<select
id=
"selectOrderRefundList"
parameterType=
"OrderRefund"
resultMap=
"OrderRefundResult"
>
<select
id=
"selectOrderRefundList"
parameterType=
"OrderRefund"
resultMap=
"OrderRefundResult"
>
...
@@ -50,6 +51,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
...
@@ -50,6 +51,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if
test=
"updatedAt != null"
>
updated_at,
</if>
<if
test=
"updatedAt != null"
>
updated_at,
</if>
<if
test=
"refundNo != null"
>
refund_no,
</if>
<if
test=
"refundNo != null"
>
refund_no,
</if>
<if
test=
"orderNo != null"
>
order_no,
</if>
<if
test=
"orderNo != null"
>
order_no,
</if>
<if
test=
"createUserName != null"
>
create_user_name,
</if>
</trim>
</trim>
<trim
prefix=
"values ("
suffix=
")"
suffixOverrides=
","
>
<trim
prefix=
"values ("
suffix=
")"
suffixOverrides=
","
>
...
@@ -61,6 +64,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
...
@@ -61,6 +64,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if
test=
"updatedAt != null"
>
#{updatedAt},
</if>
<if
test=
"updatedAt != null"
>
#{updatedAt},
</if>
<if
test=
"refundNo != null"
>
#{refundNo},
</if>
<if
test=
"refundNo != null"
>
#{refundNo},
</if>
<if
test=
"orderNo != null"
>
#{orderNo},
</if>
<if
test=
"orderNo != null"
>
#{orderNo},
</if>
<if
test=
"createUserName != null"
>
#{create_user_name},
</if>
</trim>
</trim>
</insert>
</insert>
...
@@ -88,4 +92,40 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
...
@@ -88,4 +92,40 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
#{id}
#{id}
</foreach>
</foreach>
</delete>
</delete>
<select
id=
"selectList"
resultMap=
"OrderRefundResult"
>
select or2.* from `order` o ,order_refund or2 where o.id =or2.order_id
<where>
<if
test=
"orderNo!=null "
>
and order_no =#{orderNo}
</if>
<if
test=
"orderNum!=null "
>
and order_num =#{orderNum}
</if>
<if
test=
"userName!=null"
>
and user_name like concat('%', #{userName}, '%')
</if>
<if
test=
"shopId!=null "
>
and shop_id =#{shopId}
</if>
<if
test=
"state!=null "
>
and shop_id =#{shopId}
</if>
<if
test=
"createAtStart!=null "
>
<![CDATA[ and create_at >= to_date(#{createAtStart,jdbcType=DATE},'yyyy-MM-dd hh24:mi:ss')]]>
</if>
<if
test=
"createAtEnd!=null "
>
<![CDATA[ and create_at <= to_date(#{createAtEnd,jdbcType=DATE},'yyyy-MM-dd hh24:mi:ss')]]>
</if>
<if
test=
"payAtStart!=null "
>
<![CDATA[ and pay_time >= to_date(#{payAtStart,jdbcType=DATE},'yyyy-MM-dd hh24:mi:ss')]]>
</if>
<if
test=
"payAtEnd!=null "
>
<![CDATA[ and pay_time <= to_date(#{payAtEnd,jdbcType=DATE},'yyyy-MM-dd hh24:mi:ss')]]>
</if>
</where>
order by or2.created_at desc
</select>
</mapper>
</mapper>
\ No newline at end of file
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